Dashboard › institutional-transition-lab › Distillation
defec692-337a-465e-90b7-a85e16b0f75e["lore_tm_v1_-gmCCAIxwJMhoQXrYnvRO6XkJVgo_b4pYso3M4jCjDg","lore_tm_v1_2_TC0kS_VZJl_pKuQ_b8RGeRxA16E95U5ukrdlWB0to","lore_tm_v1_T2tuyV3yCdiMlxMf6NuG90aEcki4sv2SM6CcUgGxqOA","lore_tm_v1_PfQxPElw0UzrVR8eIRp6H5M_HRcc38xAp5kCpPF0IQs"]
28 passed, 50 deselected in 0.39s.FROZEN_INPUT_PINS in src/institution_lab/governance_adjudication.py:41-55 contains workflow_run_id=33063470968, artifact_id=9642983578, artifact_sha256=1f6be91fcd98e43e99d82d5f274536f6c23616e7e6c711e26324a2cc4b06ef06, documents_sha256=d70f7f795847968339a645b6dbd6d4428af6bd6044de44fa2602d4c4343b0ee9, documents_file_sha256=2a62ab05687982c112a29f6126227c26c3ff8defc89ca64662753aaf85c3c0ce, coding_package_file_sha256=14644759f53071adfe1173d4e25bb01931b8c1591fa8a48295dbd0556a754769, protocol_sha256=06d4b3407677fe7fb23046f70164a366db06638e8a29af3daf7661f00d565933, coding_schema_sha256=bfc735a7d8602d1f236a88c2d23b195f0600a8bae86fb8c8936afe7883a41b8e, and adjudication_schema_sha256=6181f5cb60a0462f83be00be301763daa89f11581e68ee1c46a84e8bf4e5be31.canonical_sha256() at src/institution_lab/governance_adjudication.py:80-87 serializes with sort_keys=True, separators=(",", ":"), and allow_nan=False, encodes the result, and returns its SHA-256 digest._parse_json_object() at src/institution_lab/governance_adjudication.py:129-140 catches only UnicodeDecodeError and json.JSONDecodeError; duplicate-key and non-finite-number hooks raise ValueError directly.src/institution_lab/governance_adjudication.py:179-208 has no explicit rejection for ZipInfo.flag_bits & 0x1 encrypted-member flags.src/institution_lab/governance_adjudication.py:179-208 performs uniqueness checks on raw info.filename values but has no explicit validation of member-name/path forms such as absolute paths, .. traversal components, backslashes, or normalized-name collisions.src/institution_lab/governance_adjudication.py:180-183 occurs only after archive.infolist() has materialized the complete central-directory metadata list.src/institution_lab/governance_adjudication.py:188-189 sums declared info.file_size values; bounded decompression reads at lines 194-206 are applied only to the two required members, documents.json and v1.2-adjudication-package.json.test_every_input_pin_is_reverified() at tests/test_governance_adjudication.py:634-641 changes adjudication artifact_sha256 to "wrong" and expects input pin mismatch: artifact_sha256 with the canonicalization gate closed.test_frozen_pins_include_the_versioned_adjudication_schema() at tests/test_governance_adjudication.py:644-648 asserts set(FROZEN_INPUT_PINS) == REQUIRED_INPUT_PINS and the exact adjudication-schema digest 6181f5cb60a0462f83be00be301763daa89f11581e68ee1c46a84e8bf4e5be31.test_input_manifest_rejects_self_consistent_substitute() at tests/test_governance_adjudication.py:651-669 mutates every field in sorted FROZEN_INPUT_PINS and expects rejection identifying the changed frozen issue #4 field before any "unused" input path is opened.test_frozen_input_identifiers_are_reverified() at tests/test_governance_adjudication.py:672-680 increments each of workflow_run_id and artifact_id, expects the corresponding input-pin mismatch, and expects the canonicalization gate to remain closed.test_input_manifest_rejects_changed_file_bytes() at tests/test_governance_adjudication.py:683-726 builds and freezes a self-consistent manifest, then rewrites documents.json to "changed" and expects a documents_file_sha256 rejection.test_input_manifest_rejects_files_not_from_pinned_artifact() at tests/test_governance_adjudication.py:729-773 puts b"different documents" in the archive while pinning the durable documents file, then expects artifact member mismatch: documents.json.test_cli_validates_the_same_bytes_it_verifies() at tests/test_governance_adjudication.py:776-797 starts with forged documents, monkeypatches verify_input_manifest so the durable file is swapped before verification, and expects input manifest mismatch: documents_file_sha256.test_cli_rejects_output_aliases_to_frozen_inputs() at tests/test_governance_adjudication.py:800-833 covers all 8 inputsβadjudication, input_manifest, documents, coding_package, artifact, protocol, coding_schema, and adjudication_schemaβunder each of 3 alias forms: direct, symlink, and hardlink; it expects output path aliases an input and verifies the input bytes remain unchanged.test_cli_rejects_aliased_outputs() at tests/test_governance_adjudication.py:836-845 points summary_markdown at summary_json and expects output paths alias each other.test_cli_rejects_duplicate_manifest_keys() at tests/test_governance_adjudication.py:848-867 injects a forged duplicate artifact_sha256 key, expects duplicate JSON key: artifact_sha256, and verifies a preexisting summary reports canonicalization_gate == "closed".test_input_manifest_rejects_non_object() at tests/test_governance_adjudication.py:870-880 passes [] with unused input paths and expects input manifest must be an object.test_input_manifest_rejects_duplicate_artifact_members() at tests/test_governance_adjudication.py:883-905 appends a second documents.json, updates and freezes the artifact hash, and expects artifact member is not unique: documents.json.test_input_manifest_rejects_excessive_artifact_member_count() at tests/test_governance_adjudication.py:908-928 appends MAX_TEST_ARCHIVE_MEMBERS empty entries named padding/{index}, updates and freezes the artifact hash, and expects artifact member count exceeds limit.test_regular_file_reader_rejects_fifo_without_blocking() at tests/test_governance_adjudication.py:931-951 creates input.fifo, invokes _read_regular_file() in a subprocess with timeout=1, and asserts a nonzero exit plus input path is not a regular file in stderr.test_canonical_sha256_rejects_non_finite_numbers() at tests/test_governance_adjudication.py:954-957 covers float("nan"), float("inf"), and float("-inf"), expecting ValueError containing Out of range float values.test_committed_frozen_input_manifest_verifies() at tests/test_governance_adjudication.py:960-976 verifies cases/review/oss-governance-adjudication-v1.inputs.json against artifact-9642983578.zip, documents.json, v1.2-coding-package.json, research/oss-governance-coding-protocol-v1.2.md, schema/governance-coding-v1.schema.json, and schema/governance-adjudication-v1.schema.json, asserting the result equals FROZEN_INPUT_PINS.archive.infolist() materializes all entries.