docs: record uncertainty-over proposition coverage
This commit is contained in:
@@ -191,6 +191,15 @@ Experiment 54N tested whether an interpretation disagreement can be judged for m
|
|||||||
- Final question regressed to generic wording (`What outcome would demonstrate enough value to justify launching?`) despite `selectedQuestion.nodeId` remaining the customer-signing node; full proposition preservation therefore remains unproven live.
|
- Final question regressed to generic wording (`What outcome would demonstrate enough value to justify launching?`) despite `selectedQuestion.nodeId` remaining the customer-signing node; full proposition preservation therefore remains unproven live.
|
||||||
- Rationale contamination remained absent.
|
- Rationale contamination remained absent.
|
||||||
|
|
||||||
|
### 60B.30 `uncertainty over whether` proposition coverage
|
||||||
|
|
||||||
|
- 60B.29 exposed one more bounded synonym gap: `Uncertainty over whether...` was not entering the established `whether ...` proposition path.
|
||||||
|
- `extractMeaning()` now extends the same description-start normalization to also strip `uncertainty over` before the existing `^whether` proposition extraction check.
|
||||||
|
- As a result, `Whether...`, `Unknown whether...`, `Uncertain whether...`, `Uncertainty about whether...`, `Uncertainty regarding whether...`, and `Uncertainty over whether...` now all expose `whether X` before rationale stripping and evidence framing run.
|
||||||
|
- Focused deterministic verification passed:
|
||||||
|
- `npx vitest run tests/graph/question-formulator.test.js` → PASS (39/39)
|
||||||
|
- **Still unproven live:** the exact 60B.29 `Uncertainty over whether...` customer-signing case through the full end-to-end runtime path on this branch.
|
||||||
|
|
||||||
### When This Knowledge-Management Phase Is Complete
|
### When This Knowledge-Management Phase Is Complete
|
||||||
|
|
||||||
Provisional criteria for review (all confirmed met by Experiment 38 cold-start test):
|
Provisional criteria for review (all confirmed met by Experiment 38 cold-start test):
|
||||||
|
|||||||
@@ -0,0 +1,136 @@
|
|||||||
|
# Experiment 60B.30 — `Uncertainty over whether...` Proposition Coverage
|
||||||
|
|
||||||
|
**Branch:** `feature/proposition-prefix-over-v0.32`
|
||||||
|
**Starting HEAD:** `35a5efa80480eb00e69b1004f33e20330fe2434e`
|
||||||
|
**Date:** 2026-08-14
|
||||||
|
**Status:** COMPLETE
|
||||||
|
|
||||||
|
## Objective
|
||||||
|
|
||||||
|
Close the narrow live coverage gap exposed by 60B.29 by extending the existing bounded proposition-prefix normalization so:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Uncertainty over whether X...
|
||||||
|
```
|
||||||
|
|
||||||
|
enters the same `whether ...` proposition-extraction path already used for:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Whether X...
|
||||||
|
Unknown whether X...
|
||||||
|
Uncertain whether X...
|
||||||
|
Uncertainty about whether X...
|
||||||
|
Uncertainty regarding whether X...
|
||||||
|
```
|
||||||
|
|
||||||
|
## 60B.29 Live Gap
|
||||||
|
|
||||||
|
60B.29 preserved the full reasoning chain live but surfaced a new bounded synonym form in the node description:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Uncertainty over whether the prospective enterprise customer will sign if we launch this year, because their contract accounts for approximately £700,000 of the expected first-year revenue and could materially flip the net-value comparison.
|
||||||
|
```
|
||||||
|
|
||||||
|
Because `uncertainty over` was not part of the existing normalization boundary, deterministic formulation did not expose:
|
||||||
|
|
||||||
|
```text
|
||||||
|
whether the prospective enterprise customer will sign if we launch this year
|
||||||
|
```
|
||||||
|
|
||||||
|
to the established evidence-framed proposition path.
|
||||||
|
|
||||||
|
## Exact Normalization Added
|
||||||
|
|
||||||
|
Production change was limited to `lib/graph/question-formulator.js`.
|
||||||
|
|
||||||
|
Inside `extractMeaning()`, the description-start normalization used before the existing `^whether` proposition check now also strips:
|
||||||
|
|
||||||
|
```text
|
||||||
|
uncertainty over
|
||||||
|
```
|
||||||
|
|
||||||
|
case-insensitively.
|
||||||
|
|
||||||
|
This means the following bounded forms are now equivalent for proposition extraction:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Whether X...
|
||||||
|
Unknown whether X...
|
||||||
|
Uncertain whether X...
|
||||||
|
Uncertainty about whether X...
|
||||||
|
Uncertainty regarding whether X...
|
||||||
|
Uncertainty over whether X...
|
||||||
|
```
|
||||||
|
|
||||||
|
Each now exposes:
|
||||||
|
|
||||||
|
```text
|
||||||
|
whether X
|
||||||
|
```
|
||||||
|
|
||||||
|
before the existing rationale stripping and evidence framing run.
|
||||||
|
|
||||||
|
## Exact 60B.29 Deterministic Regression
|
||||||
|
|
||||||
|
For:
|
||||||
|
|
||||||
|
```text
|
||||||
|
label:
|
||||||
|
Prospective enterprise customer signing status
|
||||||
|
|
||||||
|
description:
|
||||||
|
Uncertainty over whether the prospective enterprise customer will sign if we launch this year, because their contract accounts for approximately £700,000 of the expected first-year revenue and could materially flip the net-value comparison.
|
||||||
|
```
|
||||||
|
|
||||||
|
the deterministic final question is now:
|
||||||
|
|
||||||
|
```text
|
||||||
|
What evidence would clarify whether the prospective enterprise customer will sign if we launch this year?
|
||||||
|
```
|
||||||
|
|
||||||
|
The final question excludes:
|
||||||
|
|
||||||
|
- `£700,000`
|
||||||
|
- `expected first-year revenue`
|
||||||
|
- `materially flip`
|
||||||
|
- `because their contract`
|
||||||
|
|
||||||
|
and the source description remains unchanged.
|
||||||
|
|
||||||
|
## Focused Verification
|
||||||
|
|
||||||
|
Run exactly as bounded:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npx vitest run tests/graph/question-formulator.test.js
|
||||||
|
```
|
||||||
|
|
||||||
|
Result:
|
||||||
|
|
||||||
|
```text
|
||||||
|
PASS — 39/39 tests
|
||||||
|
```
|
||||||
|
|
||||||
|
Focused coverage confirms:
|
||||||
|
|
||||||
|
- exact 60B.29 regression passes
|
||||||
|
- `Uncertainty over whether...` without rationale uses evidence framing
|
||||||
|
- previously-supported prefixes remain unchanged
|
||||||
|
- direct interrogatives remain unchanged
|
||||||
|
- nominal non-`whether` behaviour remains unchanged
|
||||||
|
- source description remains intact
|
||||||
|
|
||||||
|
## Preserved Existing Paths
|
||||||
|
|
||||||
|
This change did **not**:
|
||||||
|
|
||||||
|
- redesign question formulation
|
||||||
|
- broaden parsing beyond one explicit uncertainty synonym
|
||||||
|
- add domain-specific wording
|
||||||
|
- change decision-family routing
|
||||||
|
- change question-target selection
|
||||||
|
- change graph structure, materiality, schema, provider, or harness behaviour
|
||||||
|
|
||||||
|
## What Remains Unproven
|
||||||
|
|
||||||
|
Deterministic coverage for `Uncertainty over whether...` is now proven, but the exact full live 60B.29 rerun on this branch remains to be executed.
|
||||||
Reference in New Issue
Block a user