Dashboard › institutional-transition-lab › Distillation
f7295c20-83c9-46db-bd19-1d4b32c79c6f["lore_tm_v1_PvicJDBQC91TMV0Cbuz5xTxueVwnpVcOTcn9nHQ6IC8"]
/home/byk/Code/institutional-transition-lab/src/institution_lab/governance_adjudication.py lines 487β946, covering adjudication derivation checks, summary construction, fragment validation, Markdown rendering, output-path validation, atomic writes, failure-output generation, and the CLI entry point.CLAIM_FIELDS and validate derived graph-edge revisions; an underived addition produces f"{prefix}: graph_edge_revision.added is not derived".record_id, validates each recordβs reviewer_ids, and derives aggregate decision and graph-edge-revision information. The resulting summary includes "graph_edge_revisions": graph_edge_revisions.reviewers = [], detects duplicate reviewer IDs with errors.append(f"duplicate reviewer IDs: {sorted(duplicates)}"), reads fragment records from fragment.get("records", []), and requires fragment record IDs to form a known subset in frozen document order; violation message: "fragment record IDs must be a known subset in frozen document order".record_id; non-string record IDs are rejected, and each applicable record must have a reviewer with role source_adjudicator, otherwise validation adds f"record {record_id}: requires a source_adjudicator".", ".join(f"\{item}`" for item in record["reviewer_ids"] or []), emits "- None"for empty sections, and returns"\n".join(lines) + "\n"`._validate_output_paths(*, inputs: list[Path], outputs: list[Path]) and _atomic_write(path: Path, payload: str). Atomic-write cleanup suppresses FileNotFoundError."validation_errors": [message].argparse.ArgumentParser(description="Validate frozen governance adjudication"); --summary-json is a required Path argument. The workflow validates the input manifest and frozen bundle, then builds final JSON as {"schema_version": 1, "validation_errors": errors, **summary}.