feat(briefing): add explainable materiality routing - #1977
Merged
bartytime4life merged 16 commits intoAug 4, 2026
Conversation
bartytime4life
marked this pull request as ready for review
August 4, 2026 17:02
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Status
PROPOSED / DRAFT. This pull request completes the previously partial BriefingSignal materiality-and-routing branch as one deterministic, fixture-first, no-network review slice. It performs no GitHub issue mutation, source activation or retrieval, evidence construction, policy or review decision, lifecycle promotion, proof emission, release, deployment, publication, or repository-setting change.
Authoring merge base:
main@6c13e45d11aede489af6e11eef67d096fe3869c7Hosted comparison base:
main@fd04e0aa578e1da5cf6b9b36f3b002ddc01dad63Exact branch head:
d597536c7e4bd70c9338b208f2a421fb5ee447f2Tested pull-request merge ref:
13a9cd1fabd076d5ff071a4e584845c17ba56b69Goal
Make BriefingSignal priority and proposed issue routing reproducible from explicit dimensions, finite reason codes, bounded mandatory overrides, current deduplication state, official-support posture, dependency state, safety state, and modeling readiness—without letting the signal create authority or perform the proposed operation.
Why this repair was required
The branch already contained 1.2 fixtures, materiality tests, documentation, workflow wiring, and
route_briefing_signals.py, but it was not dependency-closed:1.1.0and the older four-field materiality object;compute_materiality_score,compute_materiality_priority,compute_materiality_reason_codes, andcompute_routing_disposition, but those functions did not exist in the validator;1.1.0; andThis pull request closes those exact gaps rather than opening a second branch or parallel contract/schema family.
Source and doctrine basis
The supplied
KFM_Briefing_to_System_Integration_Architecture.docxtreats daily briefing prose as a non-authoritative discovery input, identifies materiality and routing as deterministic control-plane behavior, requires duplicate suppression and finite dispositions, and explicitly forbids a direct path from briefing narrative to evidence, release, publication, or public truth.Placement follows existing responsibility roots and accepted ADR-0029:
contracts/governance/— semantic meaning;schemas/contracts/v1/governance/— machine shape;fixtures/contracts/v1/governance/briefing_signal/— exact synthetic candidates;tools/validators/governance/— deterministic validation and dry-run tooling;tests/governance/— enforceability;examples/briefing_integration/— bounded worked examples;.github/workflows/briefing-integration.yml— existing read-only orchestration;data/receipts/generated/— authoring provenance.No new responsibility root, policy authority, source registry, lifecycle store, proof lane, release family, or public surface is created.
Implemented
1.2.0.-20..80range.P0 >= 55or valid mandatory override;P1 = 35..54;P2 = 20..34;P3 = 1..19;IGNORE <= 0.ACTIVE_PUBLIC_SAFETY_CONFLICT;UNEXPECTED_REPOSITORY_MERGE; andPUBLIC_INTERNAL_STORE_BYPASS.26/P2and the GMD inventory to score37/P1; both still resolve toUPDATE_EXISTING_ISSUEbecause issue Model Kansas water-planning, grant, and regional-governance events #1647 already owns the bounded work.Validation before hosted execution
Hosted correction and exact-head validation
The first pull-request run at prior head
b9c4bc7ca34315ced60ec4387013ffa00d9b4b63exposed one feature-specific test drift. The multi-file dedup test changed a candidate fromDUPLICATEtoUNRESOLVEDbut retained the old duplicate-only routing reason, so the single-file 1.2 validator correctly rejected it before the intended cluster-level negative could run.The correction updates that synthetic mutation to
LOW_PRIORITY_NO_ACTION, preserving per-file validity while still provingDUPLICATE_CLASSIFICATION_REQUIREDandPRIMARY_SIGNAL_REFERENCE_REQUIREDat the multi-file boundary. No validator, schema, or workflow check was weakened.At exact head
d597536c7e4bd70c9338b208f2a421fb5ee447f2, GitHub tested merge ref13a9cd1fabd076d5ff071a4e584845c17ba56b69:briefing-integrationsucceeded in both jobs.26/P2, GMD37/P1, mandatory P0 correction, P1 source discovery, dependency hold, unsafe rejection, duplicate no-action, and low-priority no-action.schema-validation,validator-suite,contracts-validate,contract-drift,link-check,codeql,promotion-gate,ui-build,e2e-smoke,policy-test, and the other successful domain/regression workflows passed.Unrelated inherited failures
Three workflows remain red, all outside this pull request's 42-path scope:
domain-roads-rail-trade / validate-roads-rail-tradefails its remaining-scaffold readiness call withno_python_files; the proof and publish-dry-run jobs succeed. This PR changes no Roads/Rail/Trade path or readiness command.rollback-drill / simulate-rollbackfails because the current release RollbackCardx-kfmmetadata no longer matches that workflow's frozen placeholder expectation.release-dry-run / rollback-card-presencefails on the same current RollbackCard metadata mismatch; its candidate-assembly and promotion-gate jobs succeed.This pull request changes no RollbackCard schema, contract, validator, workflow, fixture, release card, Roads/Rail/Trade file, or related policy path. These are inherited repository-readiness findings, not BriefingSignal regressions. No check was bypassed, approved, manually rerun, or weakened.
Workflow safety
The existing
briefing-integrationworkflow retains:pull_request,pushtomain, and manual dispatch triggers;permissions: contents: read;The workflow runs the full BriefingSignal identity/dedup/materiality/routing suite, current fixtures/examples, both dry-run tools, structural negatives, semantic negatives, TemporalAuthorityEnvelope regressions, and the existing water-planning anti-collapse suite.
Trust boundary
A green result proves only the proposed schema, parser, identity, materiality, override, routing, fixture, deterministic-output, and no-network behavior. It does not prove a briefing claim, source authority, current real-world status, GitHub authorization, EvidenceBundle closure, policy approval, human review, issue mutation, promotion, release readiness, deployment, or publication safety.
Every dry-run report retains:
{ "authority_created": false, "repository_mutation_allowed": false }Base drift and remote verification
The branch is intentionally not force-rebased. GitHub successfully constructed and tested a conflict-free merge ref against
main@fd04e0aa578e1da5cf6b9b36f3b002ddc01dad63; the pull request remains mergeable. The final changed-path inventory contains exactly 42 briefing-governance, fixture, test, tool, workflow, example, documentation, and generated-receipt paths—none from the three inherited failure families.Generated receipt
data/receipts/generated/genrec-briefing-materiality-routing-20260804.jsonHuman review state remains
pending. The receipt is provenance only and is not approval or merge authority.Rollback
Before merge, close this draft and abandon
agent/briefing-materiality-routing-20260804. After an authorized merge, revert the scoped materiality-routing commits through a reviewed corrective pull request. No live source, GitHub issue, lifecycle object, evidence object, policy decision, proof, release, deployment, or published state requires restoration.Reviewer disposition
DRAFT — READY FOR HUMAN REVIEW OF THE BOUNDED FEATURE, WITH THREE INHERITED REPOSITORY READINESS FAILURES RECORDED. Do not mark ready, merge, release, deploy, publish, activate a source, mutate an issue, or change repository settings from this pull request.