zone.hyperreal.enterprises
War Machine · explanations before construction

R3a prediction error

Authored design — 2026-09-15. Section 3. This cascade elaborates the existing checklist item. It is not a dispatch, implementation receipt or completion verdict. Work outside WM-01–14 still requires Joe’s explicit greenlight; having a cascade is necessary but not permission.

Section 3/4 index · Exact TODO · Cascade JSON

Situation and design problem

Prediction error has a source, host and consumer. A plotted difference is not evidence that the loop used it, and a host name does not change which node owns the computation.

Governing checklist snapshot

R3a prediction error. PARTIAL: current binding and source-to-consumer edges in the qualifying record; preserve hosting distinctions. Built evidence: Projection source and measured consumer evidence

This is the checklist’s dated evidence account, not a new deployment census. Existing source/test evidence keeps its bounded credit. The acceptance obligation above governs this design.

Pattern applications

R3a-1 — Pair comparable quantities

Pattern: aif/term-to-channel-traceability

Identify predicted and observed quantities, units, domains and times. Produce an aligned pair from the same model/occurrence; comparing a terminal prediction with an intermediate measurement requires an explicit mapping.

R3a-2 — Compute and locate the error

Pattern: aif/term-to-channel-traceability

Apply the admitted residual or discrepancy definition and record its numeric semantics. Name source namespace, runtime host and catalogue node separately. Produce a residual receipt without silently replacing a categorical discrepancy by scalar subtraction.

R3a-3 — Bind the consumer

Pattern: wm-connected-learning/observation-to-next-choice

Retain the update/precision consumer and the actual residual value it reads. Produce source-to-host-to-consumer edges, including source and effective configuration identity. A second recomputation must demonstrate equivalence rather than rely on the same field name.

R3a-4 — Check the qualifying occurrence

Pattern: wm-connected-learning/observation-to-next-choice

Join those edges into the same-run record and retain the independent observation. Distinguish a valid zero residual from absent evidence and show how an applicable nonzero residual reaches its consumer.

Composition and interfaces

Each node’s stated artifact is the input or constraint for the related node below. These are design dependencies, not a claim that a runtime scheduler automatically fires patterns. Existing WM producers are reused through the linked contracts; no second implementation is implied.

From To Relation Reason
R3a-1 R3a-2 requires-result Comparable inputs make the error meaningful.
R3a-2 R3a-3 requires-result The computed residual and hosting identity must reach the named consumer.
R3a-3 R3a-4 requires-result Consumer evidence belongs to the occurrence being qualified.
R3a-4 R3a-1 revision-feedback A failed distinguishing control or consumer mismatch reopens the original scope/meaning; retain the failed claim rather than weakening it. Relevant controls: Reject timestamp mismatch, absent observation converted to zero, wrong units and an unused residual. Include both zero and nonzero valid pairs.

Retain the actual subject, source/model revision, task/occurrence, cutoff, producer and consumer for each interface. A missing field is a named gap; a default that changes the meaning is not an adapter. Reuse existing records where they satisfy these obligations. If a new component is indispensable, identify its exact TODO/cascade clause before seeking a separately bounded implementation instruction.

Worked situation

A dashboard shows zero because a missing observation was replaced by the prediction. A real zero from matching independent evidence is different. The error record and consumer must distinguish them even if the displayed number agrees.

This is a distinguishing design example, not a claimed production experiment.

Implementation sequence and closure evidence

  1. Bind the first application to the actual source, task and authority. Resolve the decisions below before their dependent change; do not reproduce a known gap merely to claim activity.
  2. Implement only the specifically dispatched producer/consumer change from the middle applications. Retain the meaningful pre-change failure and relevant post-change controls; do not start a general infrastructure project.
  3. Acquire the final application’s evidence and independent review. Compare it against every clause of the exact TODO, identifying any still-open dependency. Source, tests, serving state, ordinary use and whole-run validation receive different credit.

Distinguishing controls: Reject timestamp mismatch, absent observation converted to zero, wrong units and an unused residual. Include both zero and nonzero valid pairs.

Closure rule: every part of the quoted obligation must be supported by the indicated artifacts and actual connections. A useful rejection proves the rejecting boundary only. One accepted subclause does not tick the whole item. A bellback must supply the exact reviewed subject, executed checks, independent verdict and remaining clauses.

Dependencies and authority boundaries

R2 · R3 · R7 · TRACE

Hosting reconciliation follows the catalogue and current source; do not relocate a node merely to match a drawing.

Dependency links describe required interfaces; they do not authorize work on those items. No implementation outside the existing TODO list is approved. Publication does not select a numerical law, settle an unresolved operator ruling or authorize a run.

Pattern and source scope

All seeded patterns are applied above. The JSON pins their source bytes and the governing checklist/rulings. Historical formulas, thresholds and examples in a pattern remain scoped examples unless the governing contract adopts them. This draft adds no pattern-library entries and claims no independent semantic ratification.

Existing pattern source snapshots

Reference text; historical examples and prescriptions retain the scope stated above.

aif/term-to-channel-traceability
@flexiarg aif/term-to-channel-traceability
@title Term-to-Channel Traceability
@sigils [🏃/功]
@audience fulab agents, aif implementers
@tone technical
@style pattern

@see-also aif/evidence-precision-registry
@how aif/expected-free-energy-scorecard
@why no matching problem dossier node (@holds-at absent; not among the twenty dossier nodes R1-R17, R20, TRACE). Negative claim per the committed check futon2 holes labs library-loop runs l3_no_dossier_check.py, receipt runs L3-no-dossier-check.edn (enumerates every aif pattern's @holds-at against the dossier node set extracted from PROBLEMS-*.md headings). Rationale not invented (L3 rationale-backfill pilot, zai-1, 2026-09-05)
@how own mechanism: Require each score term to declare the observation channels and precision settings it consumed. (source: this pattern's ! conclusion line; L3 rationale-backfill pilot, zai-1, 2026-09-05)
! conclusion: Require each score term to declare the observation channels and precision settings it consumed.

  + context: A pattern-guided agent evaluates candidates with a multi-term expected free energy score built from heterogeneous evidence.

  + IF:
    You want tuning decisions and failures to be diagnosable at the level of which evidence actually drove each score term.

  + HOWEVER:
    Without explicit traceability, terms like risk or ambiguity silently absorb whatever signals are available, making post-hoc explanations indistinguishable from rationalization.

  + THEN:
    Require every G term contribution to declare the observation keys it consumed, the precision channels applied, and the intermediate values used to compute that term, and persist this mapping alongside the score.

  + BECAUSE:
    Explicit term-to-channel linkage prevents semantic drift in scoring terms and makes policy behavior mechanically inspectable.

  + NEXT-STEPS:
    - DONE: Validate PSR :aif/g-terms provenance keys (term-id, observation-keys, precision-channels, intermediate-values, final-contribution) in check-psr. Evidence: src/futon3/hx/logic.clj
    - DONE: Add (dominant-channels psr) analysis that flags when a single channel accounts for >60% of a term's value. Evidence: src/futon3/hx/logic.clj
    - DONE: Add term provenance + dominant channel summaries to fulab pattern reports. Evidence: src/futon3/fulab/pattern_competence.clj, dev/lab-pattern-report.clj
    - DONE: Emit :aif summaries in MUSN turn start/select/use responses and log them in musn_stream. Evidence: src/futon3/musn/service.clj, dev/musn_stream.clj, src/futon3/musn/schema.clj
    - BLOCKED: Define :aif/term-provenance schema in tatami_schema.clj with keys [:term-id :observation-keys :precision-channels :intermediate-values :final-contribution]. blocked-by[tatami-schema]
    - BLOCKED: Include term provenance in fulab-pattern-check CLI output for top-3 candidates. blocked-by[term-provenance-schema, fulab-pattern-check]