docs: record uncertainty proposition coverage

This commit is contained in:
2026-08-14 06:16:14 +01:00
parent 1f361e2d93
commit f94d47d813
2 changed files with 141 additions and 0 deletions
+9
View File
@@ -174,6 +174,15 @@ Experiment 54N tested whether an interpretation disagreement can be judged for m
- `npx vitest run tests/graph/question-formulator.test.js` → PASS (29/29)
- **Still unproven live:** the exact 60B.24 regression through the full end-to-end runtime path.
### 60B.28 explicit uncertainty-prefix proposition coverage
- 60B.27 exposed a narrow coverage gap: descriptions starting `Unknown whether...` fell through to nominal label extraction instead of the existing bounded `whether ...` proposition path.
- `extractMeaning()` now extends the same case-insensitive prefix normalisation used before proposition extraction to also strip explicit uncertainty markers `unknown` and `uncertain`.
- As a result, `Whether...`, `Unknown whether...`, `Uncertain whether...`, `Uncertainty about whether...`, and `Uncertainty regarding whether...` now all expose `whether X` before existing rationale stripping and evidence framing run.
- Focused deterministic verification passed:
- `npx vitest run tests/graph/question-formulator.test.js` → PASS (37/37)
- **Still unproven live:** the exact 60B.27 customer-signing case through the full end-to-end runtime path.
### When This Knowledge-Management Phase Is Complete
Provisional criteria for review (all confirmed met by Experiment 38 cold-start test):
+132
View File
@@ -0,0 +1,132 @@
# Experiment 60B.28 — Explicit Uncertainty Prefix Proposition Coverage
**Branch:** `feature/proposition-prefix-coverage-v0.31`
**Starting HEAD:** `4e66e1ffbf1b8aa9103f72430c14e26d48f7f1fd`
**Date:** 2026-08-14
**Status:** COMPLETE
## Objective
Close the narrow live coverage gap identified in 60B.27 by extending bounded proposition-prefix normalisation so explicit uncertainty forms beginning:
```text
Unknown whether...
Uncertain whether...
```
enter the same `whether ...` proposition-extraction path already established in 60B.26.
## 60B.27 Coverage Gap
60B.27 confirmed that the live cleanup from 60B.26 was working correctly for:
- material target preservation
- evidence framing activation
- explanatory rationale removal from the final question
- source graph meaning preservation
But the live node description began:
```text
Unknown whether one prospective enterprise customer will sign if we launch this year, so that the remaining £700k of the expected £1.2M annual revenue is realized.
```
The existing bounded proposition path recognised:
```text
Whether...
Uncertainty about whether...
Uncertainty regarding whether...
```
but not:
```text
Unknown whether...
Uncertain whether...
```
So formulation fell back to the nominal label instead of preserving the full unresolved proposition.
## Exact Prefix Normalisation Added
Production change was limited to `lib/graph/question-formulator.js`.
Inside `extractMeaning()`, the description-start normalisation used before the existing `^whether` proposition check now also strips these explicit uncertainty prefixes case-insensitively:
```text
unknown
uncertain
```
This means the following bounded forms are now treated equivalently for proposition extraction:
```text
Whether X...
Unknown whether X...
Uncertain whether X...
Uncertainty about whether X...
Uncertainty regarding whether X...
```
Each now exposes:
```text
whether X
```
before the existing rationale-boundary stripping and evidence framing logic runs.
## Focused Regression Behaviour
The exact 60B.27 regression now formulates:
```text
What evidence would clarify whether one prospective enterprise customer will sign if we launch this year?
```
The final question excludes:
- `£700k`
- `£1.2M`
- `annual revenue`
while the source node description remains unchanged.
Additional focused deterministic coverage also confirms:
- `Uncertain whether...` preserves the proposition with evidence framing
- bare `Whether...` remains unchanged
- `Uncertainty about whether...` remains unchanged
- `Uncertainty regarding whether...` remains unchanged
- direct interrogatives remain unchanged
- nominal non-`whether` behaviour remains unchanged
- formulation-only cleanup does not mutate the source description
## Preserved Existing Paths
This change did **not**:
- redesign question formulation
- broaden parsing beyond explicit uncertainty markers
- convert arbitrary `unknown` descriptions into propositions
- mutate graph descriptions
- change question templates, routing, provider logic, schema, or proposal application
## Verification
Focused command run exactly as bounded:
```bash
npx vitest run tests/graph/question-formulator.test.js
```
Result:
```text
PASS — 37/37 tests
```
## What Remains Unproven Until Exact Live 60B.27 Rerun
Deterministic formulation coverage is now proven for the targeted prefix gap, but the exact live end-to-end 60B.27 rerun is still required to reconfirm that the same proposition-preserving output appears through the full runtime path with live model-selected graph updates.