Kernel (base) MKP+
Versioned per‑release verdict table (domain × locale × register × dialect/script) with promotion/demotion rules grounded in AD‑16's SAP.
AD‑17 [AM] — Acceptance Matrix
AD‑17 is the dedicated Acceptance Matrix card: the explicit table that declares, per domain and locale, whether a change is Adopted, Held, or Rejected, and on what evidence.
Aliases: none Naming lineage: draft‑era tag [MS] retired; [AM] is canonical. Cluster: Kernel (base) Depends on: AD‑16 [ME], AD‑08 [SO], AD‑11 [RA], AD‑19 [CI], AD‑27 [SPD], AD‑25 [CP]
0. For humans
Quick checklist
- Implemented if: (1)
acceptance_matrix.csvexists per release, validates against schema; (2) every row is domain × locale × register (× dialect/script); (3) core metric and SPD columns populated from AD‑16/AD‑11/AD‑27; (4) promotion/demotion rules documented and recomputable; (5) RA verifier bundles include matrix + schema - Key artefacts:
acceptance_matrix.csv,/schemas/acceptance_matrix.schema.json - Key FHR fields:
op_point_id, SPD block (PER/PCS/DCS/RAR,spd_fp_rate),acceptance_matrix_row_id,acceptance_status,acceptance_status_reason - Key failure codes:
SESOI_NOT_MET,DRIFT,POWER_INSUFFICIENT - Escalation path: status change → RA bundle update → CI gate (AD‑19 [CI])
1. Purpose & role
Goal: Turn “this looks better” into a versioned, machine‑readable verdict over domains × locales, grounded in AD‑16’s SAP.
AD‑17:
- Defines the shape of the Acceptance Matrix: rows, columns, SPD fields, artifacts.
- Specifies promotion/demotion rules: what evidence is required to call a mechanism “Adopted”, and when drift forces rollback.
- Bridges measurement → operations: it is the primary artefact RA, PEL, and Ops read to know what is actually in force.
Think of AD‑16 as defining how we measure; AD‑17 defines what the final verdict table looks like.
2. Data model
2.1 Rows
Each row is one stratum:
domain∈ {facts, policy, idiom, group, …}locale(e.g.en-GB,es-ES,ro-RO).register(casual, formal, clinical, etc.).- Optional dialect/script field for fine‑grained distinctions.
Formally:
Rows: domain × locale × register (× dialect/script).
2.2 Columns
Columns capture metrics and status:
Core columns:
primary_endpoints: bundle referencing SAP results for:- Δ steps‑to‑decision
- error rate
- RI stability
- safety correctness.
neg_control_delta,pos_control_delta- effect sizes for negative/positive controls in this stratum.
ci_widths: typical CI widths for primary endpoints (precision).power_achieved: observed power / effective sample size vs SAP target.op_point_id: pointer to ROC/PR decision threshold chosen under AD‑16.invariance_verdictordrift_alarms:- status of CUSUM/EWMA drift checks and multi‑group invariance tests.
energy_tradeoff: “energy‑tied closure” row: trade‑off between performance and cost (E).
SPD column block (tightened in later versions):
Include SPD‑sensitive fields:
- PER, PCS, DCS, RAR (person/collective/discourse/responsibility SPD indices).
spd_fp_rate(false positives from SPD vetoes).clb_throttled_by_spd(how often calibration / band changes were blocked by SPD).
Status columns:
status∈ {PROPOSED, UNDER_REVIEW, ADOPTED, HELD, REJECTED, DEMOTED}.status_reason(short code, e.g.SESOI_NOT_MET,DRIFT,POWER_INSUFFICIENT).sap_version_id,ra_bundle_id.
2.3 Artifacts
acceptance_matrix.csv— main artefact./schemas/acceptance_matrix.schema.json— JSON Schema for validation.
The matrix columns remain status and status_reason. A per-turn FHR row does not reuse those generic names: it joins the governing matrix row through acceptance_matrix_row_id and projects the values as acceptance_status and acceptance_status_reason (AD‑08 [SO] §4.5).
This allows:
- AD‑11 [RA] to ship a verifier’s bundle with acceptance matrix + checksums.
- AD‑08 [SO] / FHR to link each metric slice to the row/column that justified its promotion.
3. How it is populated (flow from AD‑16 & AD‑11)
Inputs:
- SAP outputs from AD‑16: endpoint estimates, CI, SESOI verdicts, drift stats, power tables.
- RA bundle from AD‑11: replication results, drift reports, threshold parity, etc.
- SPD & culture metrics from AD‑27 / AD‑25: PER, PCS, DCS, RAR, SPD FP rates.
Process (conceptual):
- For each domain × locale × register (× dialect/script) stratum, collect SAP and RA stats.
- Evaluate primary endpoints vs SESOI and CI (from AD‑16).
- Fill control columns (neg/pos, A/A, placebo behaviour) from the control suite.
- Fill invariance/drift fields from CUSUM/EWMA & multi‑group checks.
- Populate SPD fields from SPD module statistics.
- Apply the promotion rules (below) to set
status,status_reason. - Emit updated
acceptance_matrix.csv+ checksum; RA bundles it for verifiers.
4. Promotion / demotion rules
AD‑17 is where promotion becomes algorithmic.
4.1 Promotion to “Adopted”
A row may be marked Adopted only if all of:
- Primary endpoints - CIs exclude the null in the desired direction and reach SESOI for that domain/locale.
- Controls behave correctly - Negative controls: effects near zero (no spurious “improvements”). - Positive controls: degradation detected; sensitivity confirmed.
- Power and precision
-
power_achievedmeets or exceeds SAP targets (e.g. ≥0.8 at α = 0.05). - CI widths below pre‑set max for this stratum. - Drift & invariance - No unresolved drift alarms; invariance verdict “pass” for required axes (time, language, cohort).
- SPD guardrail
- SPD metrics (PER/PCS/DCS/RAR,
spd_fp_rate) in acceptable bands; SPD module has not vetoed adoption. - Replication check
- AD‑11 RA bundle has at least one successful replay (or cross‑model) for that stratum, with
ra_result = PASS.
Only then may status be set to Adopted.
4.2 Hold / Rejected / Demoted
- Held: SAP indicates promising but incomplete evidence (power too low, CI wide, or some controls inconclusive).
- Rejected: primary endpoints fail SESOI or reverse direction, or controls behave pathologically.
- Demoted: previously Adopted row now fails due to:
- drift alarms,
- degraded SPD metrics,
- replication failures.
Demotions are accompanied by a drift report ID from RA and a note of the half‑life from AD‑16’s time‑series analysis.
5. Interfaces & cross‑links
- AD‑16 [ME]
- Provides endpoints, SESOI, CIs, power, drift stats that populate the matrix columns.
- AD‑11 [RA]
- Ships
acceptance_matrix.csvand schema in the verifier bundle alongsidethresholds.yaml,op_points.yaml, FHR schema, checksums. - AD‑08 [SO]
- FHR slices reference the relevant row in the matrix so we can reconstruct “what was Adopted when this event happened.”
- AD‑27 [SPD] / AD‑25 [CP]
- Feed SPD metrics and culture overlays that influence the SPD columns and can veto adoption.
- AD‑20 [DP] / AD‑21 [RM]
- Use the Acceptance Matrix as part of “what’s in force” for compliance and evidentiary records.
6. Invariants vs configurable degrees of freedom
Hard invariants (for SRF‑conformant AD‑17):
- Rows are always domain × locale × register (× dialect/script).
- Columns cover, at minimum:
- primary endpoints;
- neg/pos control deltas;
- CI widths;
- power achieved;
op_point_id;- invariance/drift flags;
- energy trade‑off;
- SPD block (PER/PCS/DCS/RAR,
spd_fp_rate,clb_throttled_by_spd); - status + reasons.
acceptance_matrix.csvmust validate against/schemas/acceptance_matrix.schema.json.- Promotion to Adopted MUST reference AD‑16’s SESOIs and CIs; no shadow decision rules.
- RA bundles must include the matrix and template as part of the verifier’s pack.
Degrees of freedom (configurable):
- Which domains/registers you enumerate (e.g. you may omit registers not used in a deployment, but must not conflate them).
- Exact SESOI values, power targets, and drift thresholds — as long as they come from AD‑16’s SAP and are preregistered.
- How you visually present the matrix (docs, dashboards) as long as a machine‑readable CSV/JSON form exists.
- Additional columns (e.g. per‑segment fairness metrics) that don’t override the core ones.
7. Acceptance: when can you say “AD‑17 is implemented”?
You can treat AD‑17 as implemented when:
acceptance_matrix.csvexists for each release, validates against/schemas/acceptance_matrix.schema.json, and is versioned.- Every row corresponds to domain × locale × register (× dialect/script).
- Core metric and SPD columns are populated from AD‑16/AD‑11/AD‑27, not hand‑typed.
- Promotion/demotion rules are documented and can be recomputed from SAP + RA data.
- RA verifier bundles include the matrix + schema alongside thresholds/op‑points and FHR schema.