📡 ToastRFC
Paths

The requirement keywords: MUST, SHOULD, MAY

Every IETF spec runs on these words. Reading them wrong is the #1 way implementations diverge.

  1. MUST / REQUIRED / SHALL — absolute
  2. SHOULD — deviate deliberately, not accidentally
  3. MAY — and the interop obligation people forget
  4. How RFC 9110 itself states the rule (all-caps only)

    The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OP

  5. "Length requirements" — a case study in reading SHOULD/MUST precisely

    A recipient SHOULD parse a received protocol element defensively, with only marginal expectations that the element will conform to its ABNF