Dashboard › institutional-transition-lab › Distillation
3e95acc3-c38a-43d9-a5e1-c010bc4ab5b4["lore_tm_v1_iJA8r6tbvE3FJW5uWuvc9xUkNuxZyFPCR0BQd7jospM","lore_tm_v1_lwxzLj-pgQaeeyTTWC3Its9-tpOMrQo8a2LNIEUHWIs","lore_tm_v1_to4njJMJmmxprPQZicaZEWtPQZkMvHV12VGWow05rUY"]
No files found; the search target/pattern was not shown./home/byk/Code/institutional-transition-lab/src/institution_lab/governance_adjudication.py, _evidence_errors(reference, sources, path, *, claim=False) requires an evidence reference to be a dict with exactly {"source_id", "quote"} or, for claim references, exactly {"source_id", "quote", "field"}; claim field must belong to CLAIM_FIELDS, source_id and quote must be nonempty strings, the source must exist in the frozen document, and the quote must be a substring of that source._evidence_errors() emits specific failures: {path} must be an object, {path} must contain exactly {sorted(required)}, {path}.field is invalid, {path}.source_id must be a non-empty string, {path}.source_id is not present in the frozen document: {source_id}, {path}.quote must be a non-empty string, and {path}.quote is not grounded in source {source_id}._response_for(record, source) returns a frozen response only when record[source] is a dict, schema_valid is True, and its response is a dict; otherwise it returns None.graph_edge_diff(baseline, final_coding) canonicalizes each power_changes edge using compact, key-sorted JSON via _edge_key(), then returns deterministically key-sorted added and removed edge arrays based on set differences._validate_reviewer() requires reviewer objects to contain exactly reviewer_id, reviewer_type, model, role, and assistance; reviewer_id and assistance must be nonempty strings, reviewer_type must be in REVIEWER_TYPES, and role must be in REVIEWER_ROLES.human reviewer must have model=None; every non-human reviewer must name a nonempty string model; any model string containing gemini case-insensitively is rejected with {path}: Gemini is restricted to event triage._validate_record() requires each adjudication record’s source_url to equal the frozen document’s source_url, decision to belong to DECISIONS, reviewer_ids to be a nonempty array of unique nonempty strings naming known reviewers, and rationale to be a nonempty string._validate_record() requires source_audit to be an object with inspected_before_codings is True, source_ids exactly equal to the frozen document source IDs in order, and evidence_bounds exactly equal to the frozen document’s evidence_bounds.source_text_truncated is True, files_listing_complete is False, patch_selection_truncated is True, or integer patch_unavailable_count > 0; bounded evidence requires a nonempty string evidence_limitations._validate_record(): accept requires accepted_from in RESPONSE_SOURCES, requires that named frozen response to be schema-valid, and requires final_coding to equal it exactly; non-accept decisions must set accepted_from=None.accept, revise, and reject require dict final_coding, which is passed through validate_response(); abstain requires final_coding=None and a nonempty unresolved_reason; resolved decisions require unresolved_reason=None and cannot use record_class="abstain".reject decision whose final_coding.record_class belongs to INSTITUTIONAL_CLASSES is invalid and emits reject must resolve to a non-institutional class._validate_record(): effective_institutional_change requires non-null effective_on; announced_institutional_change requires non-null announced_on; both announced_institutional_change and proposal_only prohibit non-null effective_on.effective_institutional_change permits only effective; announced_institutional_change permits only announced; proposal_only permits proposed, rejected, or unclear. Violations identify the edge index as power_changes[{index}].claim_evidence_refs must be an array and each reference is validated with _evidence_errors(..., claim=True). For institutional final classes, every non-null field in CLAIM_FIELDS must appear among the references’ field values or {field} is not grounded is emitted.grounded_fields is built from every dict in claim_evidence_refs without checking whether _evidence_errors() accepted or grounded that reference, so a malformed or ungrounded dict can still count as field coverage even though separate evidence errors are emitted.abstain requires graph_edge_revision=None; resolved decisions require a dict revision; basis must belong to RESPONSE_SOURCES | {None}; for accept, basis must equal accepted_from; added and removed must exactly equal graph_edge_diff(_response_for(coding_record, basis), final_coding).validate_adjudication() requires transition_dates_excluded is True, outcome_data_used is False, an object inputs, and equality between each sorted REQUIRED_INPUT_PINS value and the corresponding verified_pins value.adjudication record IDs must match frozen documents exactly once and in order and coding package record IDs must match frozen documents exactly once and in order.document_ids, coding_ids, and adjudication_ids accept arbitrary record_id values from dict rows, then _duplicates() passes them to Counter, and documents_by_id/coding_by_id use them as dict keys; unhashable identifiers such as lists or dicts can therefore raise TypeError instead of producing fail-closed validation errors.validate_adjudication() only invokes source-adjudicator checks and _validate_record() when an adjudication record’s record_id is present in both documents_by_id and coding_by_id; non-object adjudication rows instead emit adjudication record must be an object.record_count, sorted decision_counts, sorted class_counts, unresolved_record_ids, record_decisions, graph_edge_revisions, reviewer_provenance, and canonicalization_gate; the gate is "closed" when errors exist or any decision is unresolved, otherwise "open".record_decisions summary entry preserves record_id, decision, final_class, reviewer_ids, and evidence_limitations; each graph_edge_revisions entry merges record_id with the record’s revision object./home/byk/Code/institutional-transition-lab/tests/test_governance_adjudication.py defines _write_pinned_cli_inputs() with manifest IDs workflow_run_id=33063470968 and artifact_id=9642983578; it writes documents.json, coding-package.json, artifact.zip, protocol.md, coding-schema.json, adjudication-schema.json, summary.json, and summary.md, with the archive containing documents.json and v1.2-adjudication-package.json._run_cli() invokes institution-lab-governance-adjudication with flags for --adjudication, --input-manifest, --documents, --coding-package, --artifact, --protocol, --coding-schema, --adjudication-schema, --summary-json, and --summary-markdown.DECISIONS, REVIEWER_TYPES, REVIEWER_ROLES, RECORD_CLASSES, EVENT_KINDS | {None}, BODY_PATCH_RELATIONS, RIGHT_KINDS, DIRECTIONS, and CHANGE_STATUSES; format tests reject source_url="not a URI" and announced_on="2024-02-30".example-1 at https://github.com/acme/example/issues/1, with body source text The council may approve releases. and evidence bounds source_text_truncated=False, files_listing_complete=None, patch_selection_truncated=False, and patch_unavailable_count=0.opencode-gpt-5.6-sol-primary, reviewer type llm, model openai/gpt-5.6-sol, role source_adjudicator, and assistance Primary source review and synthesis; its initial decision is accept from luna_a.canonicalization_gate="closed" and lists example-1 unresolved; 2. duplicate or missing records fail exact ID matching; 3. accepted coding must equal the named frozen response; 4. resolved decisions cannot produce an abstain final class; 5. source audits must preserve inspection confirmation, source IDs, and evidence bounds; 6. institutional class/date consistency; 7. bounded evidence requires evidence_limitations; 8. accepted edge-revision basis must equal accepted_from; 9. institutional claim and edge evidence must be grounded; 10. institutional class and edge status must agree; 11. Gemini cannot adjudicate or assist; 12. every record requires a source_adjudicator; 13. per-record reviewer_ids must be unique._institutional_adjudication(record_class) builds a revised coding titled Council gains release approval, with event_kind="control_rights", announced_on="2024-04-01", affected scope releases, body_patch_relation="body_only", and a power-change edge from actor The council granting approve over target releases within scope project releases, grounded by quote The council may approve releases..