{
  "schema": "ai-01-assumptions-v1",
  "assumptions": [
    {
      "id": "A1",
      "statement": "identifiers are unsigned non-zero decimal integers with no meaningful leading zeros",
      "effect": "permits canonical grammar ^[1-9][0-9]*$"
    },
    {
      "id": "A2",
      "statement": "the public contract has JavaScript clients and clients without source-text reviver support",
      "effect": "a Node-only source-context solution is insufficient for the wire contract"
    },
    {
      "id": "A3",
      "statement": "identifiers are opaque identity tokens and clients do not perform arithmetic on them",
      "effect": "a decimal string does not remove required numeric behavior"
    },
    {
      "id": "A4",
      "statement": "an existing numeric contract would require an explicit versioned migration",
      "effect": "the fixture decision cannot be applied silently to an existing API"
    }
  ],
  "unresolved": [
    {
      "id": "U1",
      "question": "which real client runtimes and generated SDKs must remain compatible?",
      "decision_effect": "must be answered before applying the synthetic decision to production"
    },
    {
      "id": "U2",
      "question": "does an existing consumer depend on a numeric schema or perform arithmetic?",
      "decision_effect": "may require a different representation or migration"
    },
    {
      "id": "U3",
      "question": "would a lossless JSON parser meet the real performance and maintenance constraints?",
      "decision_effect": "could reverse the string choice when numeric wire compatibility is mandatory"
    }
  ]
}
