Commit Graph
450 Commits
Author SHA1 Message Date
robbond db5016c138 feat(experiment): checkpoint RTO case workspace lifecycle 2026-08-18 14:59:52 +01:00
robbond 4a34dcc361 test(experiment): ground RTO apparatus in real fixture 2026-08-18 12:39:19 +01:00
robbond 25a88c5fc3 feat: multi-thread experimental apparatus (RTO.A1)
Add fixture-only apparatus for representing multiple concurrent open
investigation items within a fixed case context.

New scenario 'multi-thread' exposes:
- A fixed central situation statement and case summary (product-launch
  timing decision, drawn from existing pre-anchored-product-launch
  data)
- Three open investigation items — none compulsory: enterprise customer
  signing probability, competitor timing, financial viability comparison
- One engine recommendation (mt-ent-customer-signing, ordered first)
- User selection of any item; chosen item becomes visually primary while
  others remain visible as context
- Experimental state isolated in _experimental / _experimentalState —
  never aliases production graph fields
2026-08-18 10:39:16 +01:00
robbond 8339b6849a docs: checkpoint return to Confidence Engine origin confidence-engine-return-to-origin 2026-08-18 08:33:05 +01:00
robbond 55b7551739 test(harness): preserve null-question start captures 2026-08-18 07:11:27 +01:00
robbond 5d0ce0ddd3 experiment: compare model and deterministic investigation selection 2026-08-18 07:00:39 +01:00
robbond 600b07d820 test(harness): support gated live investigation continuation 2026-08-18 06:48:40 +01:00
robbond 7dd4a956fb experiment: validate live financial investigation progression 2026-08-18 06:32:40 +01:00
robbond a52f0345a1 experiment: validate live question-rejection ownership 2026-08-17 18:25:40 +01:00
robbond 7685a4f2af test(evidence): preserve live product-launch journey captures 2026-08-17 18:08:47 +01:00
robbond 8117f3d307 docs: record current reasoning checkpoint 2026-08-17 17:58:54 +01:00
robbond 772ae495c6 fix(reasoning): preserve investigation ownership across selection and question rejection 2026-08-17 17:58:45 +01:00
robbond d908f3746d test(e2e): preserve manually recorded investigation journey 2026-08-17 13:48:56 +01:00
robbond 6ca8381b99 fix(reasoning): correct insufficient-observation comparability state 2026-08-17 09:32:21 +01:00
robbond ade445e453 fix(reasoning): reconcile evidence and preserve deterministic continuation 2026-08-17 08:06:08 +01:00
robbond f2f495d5c7 fix(ui): preserve investigation workspace across no-question states 2026-08-17 08:06:01 +01:00
robbond 0cd68f40a5 docs: record playwright selector apparatus repair 2026-08-15 13:56:06 +01:00
robbond 2561b5d720 test(e2e): repair investigation textarea selectors 2026-08-15 13:55:59 +01:00
robbond a599922d9f experiment: confirm live explicit sufficiency closure 2026-08-15 12:43:56 +01:00
robbond abc01b181f experiment: confirm live confirmation-gated state b path 2026-08-15 12:27:08 +01:00
robbond 357be25de5 docs: record confirmation-gated closure enforcement 2026-08-15 11:35:02 +01:00
robbond b181c3ea75 fix(reasoning): enforce confirmation-gated decision closure
- reconcileDecisionClosureOwnership normaliser between reconciliation and validation (Boundary B)
- Strips terminal parent updates without explicit user confirmation; preserves all other proposal work
- Strips parent from resolvedUnknownNodeIds bookkeeping on no-confirmation strip
- Restores reconciler-forced resolved→unknown for synthetic updates too
- Prevents hybrid unknown+value states by nulling newValue in all stripping paths
- No-op update created when reconciler synthesized the entry to prevent downstream errors

Prompt:
- Rule #143 rewritten from evidence-sufficiency to explicit-confirmation gate
- Directs model to use possibleInference for directional conclusions when confirmation absent

Regression preservation:
- 60B.43 lifecycle invariant restored via explicit confirmation phrases in fixture answers
- 60B.49 reconciliation auto-add invariant restored under confirmed closure flow
- Test apparatus fixed: structuralActionRequired required with userSupportedMeaning (validator constraint)

New coverage:
- 10 tests for all 60B.79/80 coverage requirements
- 5 prompt alignment tests for Rule #143
2026-08-15 11:34:39 +01:00
robbond 4988159986 experiment: define closure enforcement boundary 2026-08-15 06:40:24 +01:00
robbond 0e5292c46d experiment: define decision closure ownership policy 2026-08-15 06:21:20 +01:00
robbond d49e3e8e83 experiment: diagnose decision closure ownership 2026-08-15 06:11:13 +01:00
robbond 887a9710c8 experiment: confirm live sufficiency decision detection 2026-08-15 05:59:35 +01:00
robbond 47f42b24cc docs: record sufficiency decision detection fix 2026-08-14 19:04:20 +01:00
robbond 912680b967 fix(reasoning): recognise decision in sufficiency question 2026-08-14 19:04:17 +01:00
robbond 391667777e experiment: confirm live sufficiency confirmation question 2026-08-14 18:24:36 +01:00
robbond 7cfeee140b docs: record sufficiency confirmation question 2026-08-14 18:01:29 +01:00
robbond 8311a176a5 fix(reasoning): ask for missing sufficiency confirmation 2026-08-14 18:01:27 +01:00
robbond c335bf0a9a experiment: define missing sufficiency confirmation question 2026-08-14 17:23:12 +01:00
robbond f70d3d0de9 experiment: test live no-confirmation closure guard 2026-08-14 16:38:11 +01:00
robbond a5b71ad89a experiment: map remaining apply proposal boundaries 2026-08-14 16:27:55 +01:00
robbond 6cb91099c2 experiment: confirm deterministic post-refactor closure path 2026-08-14 16:06:22 +01:00
robbond 1ca5026352 experiment: confirm post-refactor live equivalence 2026-08-14 15:50:59 +01:00
robbond 36b4f47097 refactor(reasoning): extract decision sufficiency 2026-08-14 15:37:24 +01:00
robbond c43decf5d4 experiment: establish live decision closure baseline 2026-08-14 15:12:17 +01:00
robbond 983ebcc836 experiment: define decision sufficiency module boundary 2026-08-14 15:00:48 +01:00
robbond bce05f779b feat(reasoning): integrate explicit decision-sufficiency closure (60B.64)
Add two new capabilities:

1. isUserConfirmationOfNoRemainingUncertainty(answer) — bounded,
   deterministic raw-answer confirmation that no other material uncertainty
   remains after a decision factor has been resolved. Matches an explicit
   phrase family (e.g. 'no remaining material uncertainty', 'no other
   material uncertainties remain') plus two bounded regex patterns, while
   rejecting contradictory wording ('still another material uncertainty',
   'I am not saying...').

2. Decision-sufficiency closure integration point in applyValidatedProposal,
   positioned after post-mutation/post-propagation and before final
   active-target selection. When all represented material factors are
   resolved AND the raw user answer confirms sufficiency, resolves the
   existing parent decision in place (status → 'resolved') and clears
   the active unknown target.

Uses a virtual 'resolved this turn' set because node statuses have not
yet been reconciled at the integration point. Tests cover: exact fixture
wording from 60B.56, bounded paraphrases, absence-of-confirmation
(non-closure), remaining-factors (blockage), contradictory wording
(rejection), negated phrases (rejection), and vague completion language
(exclusion).
2026-08-14 14:21:33 +01:00
robbond 02b7c292a5 experiment: define closure confirmation signal 2026-08-14 13:55:41 +01:00
robbond 7ee9b197ab experiment: define decision closure integration boundary 2026-08-14 13:43:43 +01:00
robbond 100dfa2be5 docs: record decision factor detection 2026-08-14 13:31:30 +01:00
robbond 5ef2b5a3c7 feat(reasoning): detect remaining decision factors 2026-08-14 13:31:28 +01:00
robbond 909edd1019 experiment: define option factor representation contract 2026-08-14 12:30:01 +01:00
robbond 3d7f2cc3dd experiment: define decision factor relationship family 2026-08-14 12:21:28 +01:00
robbond 014c6b72dc experiment: define decision sufficiency evidence 2026-08-14 12:10:25 +01:00
robbond 2394ad4c0c experiment: confirm negative closure live 2026-08-14 11:16:58 +01:00
robbond 54e2e2186b fix(reasoning): reconcile closure selection state 2026-08-14 11:02:00 +01:00
robbond a00112e157 docs: record closure reconciliation consolidation 2026-08-14 11:02:00 +01:00