docs: record bare whether proposition fix
This commit is contained in:
@@ -200,6 +200,15 @@ Experiment 54N tested whether an interpretation disagreement can be judged for m
|
|||||||
- `npx vitest run tests/graph/question-formulator.test.js` → PASS (39/39)
|
- `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.
|
- **Still unproven live:** the exact 60B.29 `Uncertainty over whether...` customer-signing case through the full end-to-end runtime path on this branch.
|
||||||
|
|
||||||
|
### 60B.33 explicit bare `whether` proposition fix
|
||||||
|
|
||||||
|
- 60B.32 diagnosed that proposition extraction for a bare `Whether...` description still depended on label keywords like `status|likelihood|risk|uncertainty`, causing nominal labels such as `Enterprise customer signing decision` to lose their explicit proposition.
|
||||||
|
- `extractMeaning()` now treats a description beginning with bare `Whether...` as sufficient evidence of an unresolved proposition regardless of label wording, while preserving the existing bounded rationale stripping.
|
||||||
|
- Focused deterministic verification passed:
|
||||||
|
- `npx vitest run tests/graph/question-formulator.test.js` → PASS (42/42)
|
||||||
|
- Generic non-proposition decision unknowns remain on their existing path when no explicit `Whether...` proposition is present.
|
||||||
|
- **Still unproven live:** the exact 60B.31 live-shaped 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,123 @@
|
|||||||
|
# Experiment 60B.33 — Honor Explicit Bare `Whether...` Propositions
|
||||||
|
|
||||||
|
**Branch:** `feature/bare-whether-proposition-v0.33`
|
||||||
|
**Starting HEAD:** `29d565372b68fd286d797b18b19864778d517d03`
|
||||||
|
**Date:** 2026-08-14
|
||||||
|
**Status:** COMPLETE
|
||||||
|
|
||||||
|
## Objective
|
||||||
|
|
||||||
|
Close the narrow gap diagnosed in 60B.32 by making an explicit bare `Whether...` description sufficient evidence of an unresolved proposition even when the label is nominal and lacks status/likelihood/risk keywords.
|
||||||
|
|
||||||
|
## 60B.32 Diagnosis
|
||||||
|
|
||||||
|
The previous bounded proposition path still required label keywords such as:
|
||||||
|
|
||||||
|
```text
|
||||||
|
status
|
||||||
|
likelihood
|
||||||
|
probability
|
||||||
|
chance
|
||||||
|
risk
|
||||||
|
uncertainty
|
||||||
|
```
|
||||||
|
|
||||||
|
before honoring a bare `Whether...` description.
|
||||||
|
|
||||||
|
That meant a live-shaped node like:
|
||||||
|
|
||||||
|
```text
|
||||||
|
label:
|
||||||
|
Enterprise customer signing decision
|
||||||
|
|
||||||
|
description:
|
||||||
|
Whether the prospective enterprise customer will commit this year, because resolving this uncertainty is needed to decide if launching this year provides superior net value over waiting twelve months.
|
||||||
|
```
|
||||||
|
|
||||||
|
failed to preserve its explicit proposition even though the description itself already stated one.
|
||||||
|
|
||||||
|
## Exact Deterministic Change
|
||||||
|
|
||||||
|
Production change was limited to `lib/graph/question-formulator.js`.
|
||||||
|
|
||||||
|
Inside `extractMeaning()`, the bounded proposition-extraction gate now treats a description beginning with:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Whether ...
|
||||||
|
```
|
||||||
|
|
||||||
|
as sufficient for proposition extraction regardless of label wording.
|
||||||
|
|
||||||
|
This preserves the existing label-keyword path, but adds the narrower rule:
|
||||||
|
|
||||||
|
```text
|
||||||
|
if description explicitly starts with bare Whether...
|
||||||
|
→ extract whether-proposition directly
|
||||||
|
```
|
||||||
|
|
||||||
|
using the same existing rationale stripping boundary.
|
||||||
|
|
||||||
|
## Exact 60B.31 Regression
|
||||||
|
|
||||||
|
For the live-shaped node:
|
||||||
|
|
||||||
|
```text
|
||||||
|
label:
|
||||||
|
Enterprise customer signing decision
|
||||||
|
|
||||||
|
description:
|
||||||
|
Whether the prospective enterprise customer will commit this year, because resolving this uncertainty is needed to decide if launching this year provides superior net value over waiting twelve months.
|
||||||
|
```
|
||||||
|
|
||||||
|
the deterministic final question is now:
|
||||||
|
|
||||||
|
```text
|
||||||
|
What evidence would clarify whether the prospective enterprise customer will commit this year?
|
||||||
|
```
|
||||||
|
|
||||||
|
The final question excludes:
|
||||||
|
|
||||||
|
- `launching`
|
||||||
|
- `superior net value`
|
||||||
|
- `waiting twelve months`
|
||||||
|
- `because`
|
||||||
|
|
||||||
|
and the source node description remains unchanged.
|
||||||
|
|
||||||
|
## Focused Verification
|
||||||
|
|
||||||
|
Run exactly as bounded:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npx vitest run tests/graph/question-formulator.test.js
|
||||||
|
```
|
||||||
|
|
||||||
|
Result:
|
||||||
|
|
||||||
|
```text
|
||||||
|
PASS — 42/42 tests
|
||||||
|
```
|
||||||
|
|
||||||
|
Focused coverage confirms:
|
||||||
|
|
||||||
|
- exact 60B.31 live-shaped regression passes
|
||||||
|
- bare `Whether...` works with an unrelated nominal label (`Supplier contract decision`)
|
||||||
|
- bare `Whether...` with a status-like label remains unchanged
|
||||||
|
- all prefix regressions from 60B.28/60B.30 remain green
|
||||||
|
- direct interrogatives remain unchanged
|
||||||
|
- a generic non-proposition decision unknown remains on its existing non-proposition path
|
||||||
|
- source descriptions remain intact
|
||||||
|
|
||||||
|
## Preserved Existing Paths
|
||||||
|
|
||||||
|
This change did **not**:
|
||||||
|
|
||||||
|
- change decision-threshold precedence globally
|
||||||
|
- change question-target selection
|
||||||
|
- change graph structure, materiality, schema, provider, or harness behaviour
|
||||||
|
- add domain-specific wording
|
||||||
|
- regress `Unknown whether...`, `Uncertain whether...`, `Uncertainty about whether...`, `Uncertainty regarding whether...`, or `Uncertainty over whether...`
|
||||||
|
|
||||||
|
## What Remains Unproven
|
||||||
|
|
||||||
|
The exact live 60B.31 rerun on this branch remains unproven. This experiment guarantees the deterministic formulation boundary only.
|
||||||
Reference in New Issue
Block a user