{
  "schemaVersion": 1,
  "description": "Deterministic authoring contract for /comet-any. The main session interprets this protocol, symmetric to how runtime scripts interpret workflow-protocol.json. The backend (domains/bundle/authoring.ts) mirrors these constants.",
  "depth": {
    "quick": { "voters": 1, "maxRounds": 1, "evidenceSource": "llm-single" },
    "full": { "voters": 3, "maxRounds": 4, "evidenceSource": "llm-multivote" },
    "dryThreshold": 2
  },
  "dag": {
    "wave1": ["script", "reference", "pause-points"],
    "wave2": ["workflow-entry", "skill-core"],
    "barrier": ["skill-review"]
  },
  "lanes": {
    "script": {
      "brief": "reference/subagents/script-author.md",
      "claims": [
        "script:workflow-state",
        "script:workflow-guard",
        "script:workflow-handoff",
        "script:comet-plan",
        "script:comet-check",
        "script:comet-hook-guard"
      ],
      "producesContentLeaves": []
    },
    "reference": {
      "brief": "reference/subagents/reference-author.md",
      "claims": [
        "reference:workflow-protocol",
        "reference:resolved-skills",
        "reference:composition-report",
        "reference:authoring-lanes"
      ],
      "producesContentLeaves": []
    },
    "pause-points": {
      "brief": "reference/subagents/pause-points-author.md",
      "claims": ["pause:decision-points", "pause:recovery"],
      "producesContentLeaves": [
        "reference/decision-points.md",
        "reference/recovery.md"
      ]
    },
    "workflow-entry": {
      "brief": "reference/subagents/workflow-entry-author.md",
      "claims": ["workflow-entry"],
      "producesContentLeaves": ["SKILL.md"]
    },
    "skill-core": {
      "brief": "reference/subagents/skill-core-author.md",
      "claims": [],
      "producesContentLeaves": ["../<node-skill>/SKILL.md"]
    },
    "skill-review": {
      "brief": "reference/subagents/skill-reviewer.md",
      "claims": ["review:skill-review"],
      "producesContentLeaves": ["reference/skill-review.md"]
    }
  },
  "verify": {
    "lenses": ["contract-fit", "usability", "evidence-trace", "self-consistency"],
    "loopUntilDry": true
  },
  "merge": {
    "deterministicBackbone": [
      "reference/workflow-protocol.json",
      "scripts/workflow-state.mjs",
      "scripts/workflow-guard.mjs",
      "scripts/workflow-handoff.mjs",
      "scripts/comet-plan.mjs",
      "scripts/comet-check.mjs",
      "scripts/comet-hook-guard.mjs",
      "bundle.yaml",
      "comet/skill.yaml",
      "comet/guardrails.yaml",
      "comet/checks.yaml",
      "comet/eval.yaml",
      "reference/resolved-skills.json",
      "reference/composition-report.md",
      "reference/authoring-lanes.json"
    ],
    "contentLeaves": [
      "SKILL.md",
      "../<node-skill>/SKILL.md",
      "reference/decision-points.md",
      "reference/recovery.md",
      "reference/skill-review.md"
    ]
  }
}
