From 661b84373fabe44ccdab7b3025bd10b7512daf98 Mon Sep 17 00:00:00 2001 From: Giovanni Giovanni Date: Mon, 24 Aug 2026 00:26:01 -0700 Subject: [PATCH] DEM-BIND (e3): retirement documentation (comments only, D-DEM-2(7)) The adapter's expressible half is re-documented as retired from the live path and surviving byte-identically in exactly two sanctioned roles: the test-side byte-equivalence oracle (FLPR guards, golden harness, interpreter equivalence suites) and the residual builder's callee (ruling R1). Pointer note added in froggy.residual_builder.ts. Physical deletion is reserved to a future owner-gated act. No code change; adapter behavior and test byte-untouched. Co-Authored-By: Claude Fable 5 --- analysts/froggy.enrichment_adapter.ts | 21 +++++++++++++++++++++ analysts/froggy.residual_builder.ts | 7 +++++++ 2 files changed, 28 insertions(+) diff --git a/analysts/froggy.enrichment_adapter.ts b/analysts/froggy.enrichment_adapter.ts index e80ba37..e81d24f 100644 --- a/analysts/froggy.enrichment_adapter.ts +++ b/analysts/froggy.enrichment_adapter.ts @@ -2,6 +2,22 @@ // This view intentionally mirrors the shape of an enriched signal (similar to infra EnrichedSignalCore) // but lives locally in afi-core to avoid cross-repo coupling. Future work may swap this // to a shared @afi/domain type once a domain package exists. +// +// RETIREMENT STATUS (DEM-BIND final bounded step, DEM-GOV D-DEM-2(7)): +// the EXPRESSIBLE half of this adapter (the four mapping-declared targets) +// is retired from the live scoring path — the registered enrichment mapping's +// interpreter fragment is authoritative there, and the reactor's scorer node +// refuses to score without a resolved mapping (D-DEM-2(6), no fallback). +// The export below survives, byte-for-byte, in exactly two sanctioned roles +// (design ruling R1, reports/DEM-BIND-PLAN.md §0): +// 1. the TEST-SIDE BYTE-EQUIVALENCE ORACLE — the FLPR-GOV inertness +// guards, the oracle golden harness, and the interpreter equivalence +// suites all import it read-only to prove the mapping path reproduces +// it exactly over the full non-refusal domain; +// 2. the callee of froggy.residual_builder.ts, which Picks only the six +// UNEXPRESSIBLE fields (D-DEM-3) and discards the expressible outputs. +// Physical deletion would re-home those guards and is reserved to a future +// owner-gated act — outside every DEM-GOV slot. import type { FroggyTrendPullbackInput } from "./froggy.trend_pullback_v1.js"; @@ -214,6 +230,11 @@ const quantisePatternConfidence = (confidence: number): 0 | 1 | 2 | 3 => { /** * Map an enriched view into Froggy's strategy-specific input. * Uses conservative defaults; avoids guessy heuristics. + * + * NOT LIVE-PATH CODE since the DEM-BIND final bounded step: the expressible + * half computed here is authoritative NOWHERE at runtime (D-DEM-2(7)) — see + * the retirement note in this file's header. Kept byte-identical as the + * test-side byte-equivalence oracle and the residual builder's callee. */ export function buildFroggyTrendPullbackInputFromEnriched( enriched: FroggyEnrichedView diff --git a/analysts/froggy.residual_builder.ts b/analysts/froggy.residual_builder.ts index 7ca981a..ffeafa0 100644 --- a/analysts/froggy.residual_builder.ts +++ b/analysts/froggy.residual_builder.ts @@ -20,6 +20,13 @@ * to the retired bespoke code" — a discarded value is not a fallback; where a * determination exists the fragment is unconditionally authoritative, and an * interpreter refusal means no determination at all, D-DEM-5(7)). + * + * SINCE THE FINAL BOUNDED STEP (mappingRef required; DEM-BIND (e2)): the + * reactor's scorer node has NO legacy branch — it refuses to score without a + * resolved mapping, so this composer is the ONLY assembly of the froggy + * scorer input at runtime. The adapter export's remaining consumers are the + * test-side byte-equivalence oracles and this module's residual Pick — see + * the retirement note in froggy.enrichment_adapter.ts (D-DEM-2(7), ruling R1). */ import type { FroggyEnrichedView } from "./froggy.enrichment_adapter.js";