{
  "schema_version": "ocme-reviewed-question-reader-v1",
  "question_id": "q-20261010-advance-20261014-r01-angle-0076",
  "pilot_number": "R0059-30401",
  "number": 30401,
  "family_id": "qf-density14-angle-three-part-budget",
  "title": {
    "zh-Hant": "第 30401 題：三段角量的有序預算",
    "en": "Question 30401: Three-Part Prefix Budget and Eligibility"
  },
  "original_question": {
    "schema_version": "ocme-question-v0.1",
    "id": "q-20261010-advance-20261014-r01-angle-0076",
    "batch_id": "batch-20261010-advance-20261014-r01-angle-foundations",
    "language": "zh-Hant",
    "source_mko_ids": [
      "mko-angle"
    ],
    "title_zh": "三段角量的有序預算",
    "stem_zh": "精確度數協議；非定向0到180度；parts=[0, 0, 0]、target=180。依序答 (三個累加前綴, 總累加≤180資格, target−總累加)。",
    "answer": {
      "kind": "expression",
      "value": "([0, 0, 0], 是, 180)",
      "explanation_zh": "三段預算前綴與資格=([0, 0, 0], 是, 180)。逐段累加而不重新取模；超界累加量不是本條目角。不由示意圖猜角，有限量值核對非射線度量證明。"
    },
    "difficulty": {
      "band": "primary_foundation",
      "level": 1,
      "skills": [
        "三段角量的有序預算"
      ]
    },
    "variant": {
      "family_id": "qf-density14-angle-three-part-budget",
      "seed": 202610141076,
      "parameters": {
        "parts": [
          0,
          0,
          0
        ],
        "target": 180,
        "angle_unit": "degrees",
        "domain": "finite_nondirected_degree_protocol",
        "operation": "density14_angle_three_part_budget",
        "semantic_template": "qf-density14-angle-three-part-budget/[[0,0,0],180]"
      }
    },
    "verification": {
      "status": "candidate",
      "checks": [
        "producer_exact_integer_rational_arithmetic",
        "producer_finite_enumeration",
        "producer_source_snapshot_check",
        "producer_substantive_template_deduplication",
        "producer_json_schema"
      ],
      "warning_zh": "僅為產生端候選及自檢；主端須另做獨立驗收，不構成人工審定、普遍證明或形式 Evidence。"
    },
    "provenance": {
      "generator_role": "question_producer",
      "generator_model": "model_unknown",
      "generated_at": "2026-10-10",
      "contract_version": "ocme-question-factory-v0.1"
    }
  },
  "original_english_edition": {
    "schema_version": "ocme-question-localization-v0.1",
    "question_id": "q-20261010-advance-20261014-r01-angle-0076",
    "batch_id": "batch-20261010-advance-20261014-r01-angle-foundations",
    "locale": "en",
    "translation_state": "ai_candidate",
    "source": {
      "question_sha256": "1f02de65f27b1a2d17b6bd9b587dc90627dadd0e5f107296dc613b2950416103",
      "family_id": "qf-density14-angle-three-part-budget",
      "seed": 202610141076,
      "semantic_template": "qf-density14-angle-three-part-budget/[[0,0,0],180]"
    },
    "fields": {
      "title": "Three-Part Prefix Budget and Eligibility",
      "stem": "Use exact degrees for nondirected angles in [0,180], not a directed rotation or a measurement from a sketch. Ordered parts=[0, 0, 0], target=180. Give (three prefix sums, is the total≤180?, target−total).",
      "answer": {
        "kind": "expression",
        "value": "([0, 0, 0], Yes, 180)",
        "explanation": "Accumulate in the original order without taking a modulus; a total above 180 is not an angle in this entry’s nondirected slice. The exact result, retaining the requested order, is ([0, 0, 0], Yes, 180)."
      },
      "skills": [
        "Three-Part Prefix Budget and Eligibility"
      ],
      "verification_warning": "This is a candidate exercise. Mechanical recomputation checks only the stated conditions and this instance; it is neither a formal proof nor human review."
    }
  },
  "givens": [
    {
      "id": "G001",
      "text": {
        "zh-Hant": "精確度數協議；非定向0到180度；parts=[0, 0, 0]、target=180。依序答 (三個累加前綴, 總累加≤180資格, target−總累加)。",
        "en": "Use exact degrees for nondirected angles in [0,180], not a directed rotation or a measurement from a sketch. Ordered parts=[0, 0, 0], target=180. Give (three prefix sums, is the total≤180?, target−total)."
      }
    }
  ],
  "steps": [
    {
      "id": "S001",
      "uses": [
        "G001"
      ],
      "before": "source roles = [qf-density14-angle-three-part-budget, density14_angle_three_part_budget, finite_nondirected_degree_protocol]",
      "after": "derived = [[ALL_prefix_sums, total_le180, SIGNED_target_minus_total]]",
      "relation": "implies",
      "rule_id": "R59_EXACT_family_domain_FULLprefix_operation_and_answer_roles",
      "conditions": [],
      "explanation": {
        "zh-Hant": "保原bank的完整operation前綴、domain及輸出欄序；frame只用orthogonal_equal_unit，角度unit只用degrees。分數整數保/1；不增不存在的參數，不改原中英來源。",
        "en": "Retain the ORIGINAL bank full operation prefix,domain and ordered answer roles.Use orthogonal_equal_unit only where a frame is declared,and degrees where an angle unit is declared.Integer fractions retain/1.Do not invent parameters or alter original bilingual sources."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "以原始資料、索引與前提反向代回本步，不聲稱可由結論唯一還原輸入。有限精確核對、獨立審查、形式證明及發布資格分開。",
          "en": "Reverse-check this step against the ORIGINAL data,indices and premises,without claiming the conclusion uniquely recovers the inputs.Finite exact checking,independent review,formal proof and publication clearance remain separate."
        }
      },
      "arithmetic": null
    },
    {
      "id": "S002",
      "uses": [
        "G001",
        "S001"
      ],
      "before": "Angle ORIGINAL ordered prefix0 := sum(0, 0)",
      "after": "Angle ORIGINAL ordered prefix0 = 0",
      "relation": "calculation",
      "rule_id": "exact_rational_arithmetic",
      "conditions": [],
      "explanation": {
        "zh-Hant": "按原角色精確代值，不作浮點近似；SAFE只驗raw輸入，衍生整數／有理數不截斷，不套其他銀行的component cap。",
        "en": "Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "以精確有理數重算 Angle ORIGINAL ordered prefix0，不以小數近似替代。",
          "en": "Recompute Angle ORIGINAL ordered prefix0 with exact rational arithmetic, not rounded decimals."
        }
      },
      "arithmetic": {
        "operation": "sum",
        "inputs": [
          "0",
          "0"
        ],
        "output": "0",
        "label": "Angle ORIGINAL ordered prefix0"
      }
    },
    {
      "id": "S003",
      "uses": [
        "G001",
        "S002"
      ],
      "before": "Angle ORIGINAL ordered prefix1 := sum(0, 0)",
      "after": "Angle ORIGINAL ordered prefix1 = 0",
      "relation": "calculation",
      "rule_id": "exact_rational_arithmetic",
      "conditions": [],
      "explanation": {
        "zh-Hant": "按原角色精確代值，不作浮點近似；SAFE只驗raw輸入，衍生整數／有理數不截斷，不套其他銀行的component cap。",
        "en": "Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "以精確有理數重算 Angle ORIGINAL ordered prefix1，不以小數近似替代。",
          "en": "Recompute Angle ORIGINAL ordered prefix1 with exact rational arithmetic, not rounded decimals."
        }
      },
      "arithmetic": {
        "operation": "sum",
        "inputs": [
          "0",
          "0"
        ],
        "output": "0",
        "label": "Angle ORIGINAL ordered prefix1"
      }
    },
    {
      "id": "S004",
      "uses": [
        "G001",
        "S003"
      ],
      "before": "Angle ORIGINAL ordered prefix2 := sum(0, 0)",
      "after": "Angle ORIGINAL ordered prefix2 = 0",
      "relation": "calculation",
      "rule_id": "exact_rational_arithmetic",
      "conditions": [],
      "explanation": {
        "zh-Hant": "按原角色精確代值，不作浮點近似；SAFE只驗raw輸入，衍生整數／有理數不截斷，不套其他銀行的component cap。",
        "en": "Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "以精確有理數重算 Angle ORIGINAL ordered prefix2，不以小數近似替代。",
          "en": "Recompute Angle ORIGINAL ordered prefix2 with exact rational arithmetic, not rounded decimals."
        }
      },
      "arithmetic": {
        "operation": "sum",
        "inputs": [
          "0",
          "0"
        ],
        "output": "0",
        "label": "Angle ORIGINAL ordered prefix2"
      }
    },
    {
      "id": "S005",
      "uses": [
        "G001",
        "S004"
      ],
      "before": "Angle ORIGINAL target minus total := sub(180, 0)",
      "after": "Angle ORIGINAL target minus total = 180",
      "relation": "calculation",
      "rule_id": "exact_rational_arithmetic",
      "conditions": [],
      "explanation": {
        "zh-Hant": "按原角色精確代值，不作浮點近似；SAFE只驗raw輸入，衍生整數／有理數不截斷，不套其他銀行的component cap。",
        "en": "Substitute exact ORIGINAL roles,without floating approximation.SAFE bounds raw inputs only;derived integers/rationals are unbounded and do not inherit another bank component cap."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "以精確有理數重算 Angle ORIGINAL target minus total，不以小數近似替代。",
          "en": "Recompute Angle ORIGINAL target minus total with exact rational arithmetic, not rounded decimals."
        }
      },
      "arithmetic": {
        "operation": "sub",
        "inputs": [
          "180",
          "0"
        ],
        "output": "180",
        "label": "Angle ORIGINAL target minus total"
      }
    },
    {
      "id": "S006",
      "uses": [
        "G001",
        "S005"
      ],
      "before": "source roles = [[0, 0, 0], 180]",
      "after": "derived = [[0, 0, 0], 是, 180]",
      "relation": "implies",
      "rule_id": "Angle_THREE_original_prefixes_budget180_NOT_target_threshold",
      "conditions": [],
      "explanation": {
        "zh-Hant": "flag只驗total<=180，不是<=target；target90且total100可flagYes而餘量-10。三段raw角各0..180，累加540是合法算術但不是本條目角；保原prefix次序不排序／wrap。",
        "en": "The flag tests total<=180,NOT total<=target.With target90,total100 may have flagYes and remainder-10.Each raw part is within0..180;an accumulated540 is legal arithmetic but not an angle in this entry.Keep original prefix order without sorting/wrapping."
      },
      "reverse_audit": {
        "kind": "premise_and_result_audit",
        "explanation": {
          "zh-Hant": "以原始資料、索引與前提反向代回本步，不聲稱可由結論唯一還原輸入。有限精確核對、獨立審查、形式證明及發布資格分開。",
          "en": "Reverse-check this step against the ORIGINAL data,indices and premises,without claiming the conclusion uniquely recovers the inputs.Finite exact checking,independent review,formal proof and publication clearance remain separate."
        }
      },
      "arithmetic": null
    }
  ],
  "math_model": {
    "result": [
      [
        0,
        0,
        0
      ],
      true,
      180
    ]
  },
  "conclusion": {
    "canonical_value": "([0, 0, 0], 是, 180)",
    "explanation": {
      "zh-Hant": "依上列完整代值及條件核對得到原題答案；原題編號、格式與狀態保持不變。",
      "en": "The full substitutions and premise checks give the original answer; source identity,format and status are unchanged."
    }
  },
  "definition_note": {
    "zh-Hant": "沿用原題明示的論域、假設與來源 MKO 定義。本題已完成第二對話數理與中英語義覆核，並由原始參數逐題獨立重算模型、答案與每個算術步驟；原題仍為 candidate。",
    "en": "Use the original question domain, assumptions and cited MKO definitions. This item has second-context mathematical and bilingual review, with the model, answer and every arithmetic step independently recomputed from the original parameters; the source question remains a candidate."
  },
  "source": {
    "input_commit": "0f7be61e2c22317a4075561dc822c87d881a50db",
    "question_binding": {
      "batch_id": "batch-20261010-advance-20261014-r01-angle-foundations",
      "batch_path": "public/data/questions/batches/batch-20261010-advance-20261014-r01-angle-foundations/questions.jsonl",
      "batch_sha256": "abf295c47c9c334b27390d1c2488ba2c268dae02b5341facb913fc4d4c5b932c",
      "original_line": 76,
      "original_line_sha256": "1a2709b78404cd7f1133bc5ac497aca72ad9233d890d255704c294d572d7552f",
      "question_compact_sha256": "1f02de65f27b1a2d17b6bd9b587dc90627dadd0e5f107296dc613b2950416103",
      "english_row_compact_sha256": "7d72c64e4777d17e70ecef9a287dbc476de268245039d59e687598e787e32304",
      "english_manifest_path": "public/data/i18n/editions/batch-20261010-advance-20261014-r01-angle-foundations.en.json",
      "english_rows_path": "public/data/i18n/questions/batch-20261010-advance-20261014-r01-angle-foundations.en.jsonl"
    },
    "mko_bindings": {
      "mko-angle": {
        "sha256": "e77eca47694501f576639c69b49c366d6053b453055167a92e61e9a9b88626da",
        "english_sha256": "c5cbf3ced06829082efdaaf6f2d97bf231e72f882e785bc6b4ecdf390768cc8b",
        "original_path": "public/data/mko/angle.json",
        "english_path": "public/data/i18n/editions/mko-angle.en.json"
      }
    },
    "selected_manifest_sha256": "5233edba9654a6cffd8b6b2d83c932f82ded15f9c0b7c733bd049943e672acff",
    "selected_part_sha256": "17d593a551933064f195bd9277d5085fe2b6c98e11cbda0c8aa27d11b7b07949",
    "original_candidate_sha256": "527b6bdb0aaa96db78f167992fbe2e6ce6336b2237e64eaf16c37e0ceb81ec0a",
    "original_candidate_line_sha256": "527b6bdb0aaa96db78f167992fbe2e6ce6336b2237e64eaf16c37e0ceb81ec0a"
  },
  "historical_source_state": {
    "review_state": {
      "derivation": "candidate_authored_and_locally_checked",
      "source_question_state": "candidate",
      "independent_AI_or_human_review": "NOT_PERFORMED",
      "formalization": "not_formalized",
      "Lean": "NOT_RUN"
    },
    "scope_note": {
      "zh-Hant": "來源綁定教學推導候選；精確核對不等於獨立AI／人工審查或一般形式證明。原題、答案、MKO、公式、AST與歷史不變。",
      "en": "Source-bound pedagogical derivation candidate.Exact checking is not independent AI/human review or general formal proof.Original questions,answers,MKOs,formulas,ASTs and history remain unchanged."
    },
    "label": "Frozen producer metadata; current per-question review is separate below."
  },
  "revision": {
    "id": "review-20261026-011-p60",
    "review_date": "2026-10-26",
    "owner_authorized_reader_publication": true,
    "scope": "One hundred sixty family prototypes and their mathematical/bilingual reasoning variants, stems, boundary statements and every distinct explanation shape were reviewed in a context independent of the producer; parameter substitutions, source bindings, full math models, both answer strings and every arithmetic step were independently reconstructed per question from the original parameters only, with negative controls. This grouped method does not claim a separate literal AI reading of every repeated sentence or an extra AI voter.",
    "review_receipts": {
      "semantic_review_sha256": "4c93dea3956f58509e20b3b8bbbf716dbc340b424a2a5177bc04aba9e8ea9ec5",
      "question_first_witness_sha256": "a5e56e0d64d622d7202840cef7019839c5a99244c602694190779155207dafdf"
    },
    "status": "second_context_reviewed",
    "mathematical_semantics": true,
    "bilingual_semantics": true,
    "steps_reviewed": 6,
    "method": "family_template_semantic_review_plus_independent_per_instance_reconstruction",
    "exact_question_first_check": {
      "model_sha256": "18476df87f174667599390830678163a2548b313ae322f16b224c91ffbb4d381",
      "arithmetic_steps": 4
    },
    "uses_answer_as_premise": false,
    "human_review": "NOT_PERFORMED",
    "formalization": "not_formalized",
    "Lean": "NOT_RUN",
    "Canonical_truth_promotion": false,
    "authority": "Owner-authorized reviewed reader publication; original question/candidate states remain historical and unchanged."
  }
}
