{
  "schema": "MAKNOW_AWR001_VISIBLE_CHECK_RULES_v1.0",
  "lesson_id": "AWR-001",
  "lab_id": "AWR-001-LAB1",
  "checker_has_hidden_answer_key": false,
  "state_vocabulary": [
    "USE",
    "PILOT",
    "NOT_NOW",
    "UNKNOWN",
    "EVIDENCE_INCOMPLETE",
    "OWNER_MISSING",
    "REVIEW_REQUIRED",
    "HOLD",
    "PARTIAL",
    "DISPUTED"
  ],
  "positive_states": [
    "USE",
    "PILOT"
  ],
  "decision_axes": [
    "KUBERNETES",
    "KAFKA"
  ],
  "rules": [
    {
      "id": "R1",
      "text": "Submission contains exactly one KUBERNETES and one KAFKA record."
    },
    {
      "id": "R2",
      "text": "Every decision_state belongs to the visible state vocabulary."
    },
    {
      "id": "R3",
      "text": "Each evidence object exactly matches the selected shipped fixture."
    },
    {
      "id": "R4",
      "text": "A positive Kubernetes state requires a present local orchestration trigger, an insufficient simpler alternative, measured gap, owner, skills, cost, failure, and rollback evidence."
    },
    {
      "id": "R5",
      "text": "A positive Kafka state requires a present event-streaming trigger, explicit retention/replay/ordering/consumer evidence, an insufficient simpler alternative, owner, skills, cost, failure, and rollback evidence."
    },
    {
      "id": "R6",
      "text": "The Kubernetes and Kafka states are computed independently; one positive row never makes the other positive."
    },
    {
      "id": "R7",
      "text": "USE additionally requires validated production adoption evidence; shipped fixtures authorize at most PILOT."
    },
    {
      "id": "R8",
      "text": "NOT_NOW requires complete trigger-absence evidence and a simpler alternative that meets the declared requirement."
    },
    {
      "id": "R9",
      "text": "Unresolved decisive evidence cannot produce USE, PILOT, or NOT_NOW."
    },
    {
      "id": "R10",
      "text": "Every row requires complete FACT/DESIGN authority trace; vendor capability never grants adoption authority."
    },
    {
      "id": "R11",
      "text": "Every decision requires learner rationale, review_due, and stop_or_pivot_trigger."
    },
    {
      "id": "R12",
      "text": "Typed non-success states require a visible, non-contradictory basis."
    }
  ],
  "typed_non_success_state_semantics": {
    "UNKNOWN": "decisive evidence remains unresolved",
    "EVIDENCE_INCOMPLETE": "one or more decisive fields are missing or unresolved",
    "OWNER_MISSING": "accountable operational ownership is visibly absent",
    "REVIEW_REQUIRED": "evidence is stale, conflicting, out of tolerance, or violates an ordering/problem boundary",
    "HOLD": "a visible external hold or blocked dependency exists",
    "PARTIAL": "resolved and unresolved decisive fields coexist",
    "DISPUTED": "decisive evidence explicitly conflicts"
  }
}
