T02: adaptation classification and intent provenance design

Answers the two questions gating the rest of TD-WP-0002.

Classifier: stratify evidence into S1 surface / S2 realization / S3 judgment.
Adaptation writes only to S1; claims and invariants are run inputs with no
adaptation write path, so False Adaptation Rate = 0 is architectural rather
than a tuning target. Classification is a total function over three signals,
defaulting to AMBIGUOUS on missing evidence; a surface change concurrent with
a verdict change is PRODUCT_DEFECT. Semantic actions declare permitted
surfaces so surface-substitution cannot pass as recovery.

Provenance: claims require a source causally independent of the
implementation. agent-from-implementation output is an exploratory hypothesis
until a human promotes it.

New adoption precondition D-07: test-driver requires an independent
observation channel into the system under test.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 1629012@bnt-lap001
Assistant-Session: 78d4fb13-8a1e-474b-87a3-9b9261c49a39
This commit is contained in:
tegwick 2026-08-22 23:09:32 +02:00
parent c856cb9e64
commit 15b55c807a
2 changed files with 212 additions and 1 deletions

View file

@ -69,6 +69,9 @@ satisfying to build, and impossible to validate at this stage:
One process, one database, one browser engine, one application under test.
- Novelty belongs in the verification model, never in the infrastructure.
- No LLM judgment where a deterministic oracle is available (Concept Model §2.3).
- Evidence stratification S1/S2/S3 and claim provenance per
`docs/TestDriverClassificationDesign.md` (decision
`fef5213f-ce9b-44c2-b327-a0b0ba4b6270`). Adaptation writes only to S1.
---
@ -101,7 +104,7 @@ taxonomy has no class for document-to-document drift.
```task
id: TD-WP-0002-T02
status: todo
status: done
priority: high
state_hub_task_id: "e5776cf5-0475-5dc6-90c3-db772ce24d63"
```
@ -122,6 +125,23 @@ survives in each case.
Deliverable: `docs/TestDriverClassificationDesign.md` + one recorded decision.
**Done 2026-08-22.** Design note written; decision
`fef5213f-ce9b-44c2-b327-a0b0ba4b6270` recorded in the hub.
Outcome in one line: **adaptation may write only to surface evidence (S1); claims
and invariants are run inputs with no adaptation write path.** False Adaptation
Rate = 0 therefore becomes an architectural property rather than a tuning target —
the system cannot express "accept a defect as an adaptation". Classification is a
total function over three signals defaulting to `AMBIGUOUS`; a surface change
concurrent with a verdict change classifies as `PRODUCT_DEFECT`, never as
adaptation. Claims require causally independent provenance.
Two consequences that change later tasks:
- **D-07** — an independent observation channel into the system under test is now
an explicit adoption precondition, not an implementation detail. T05 must expose
one in the lab; without it S2/S3 collapse into S1.
- A fourth self-test, `td://self/intent-independence`, joins the T06 set.
## Minimal research control plane
```task