robbond
|
772ae495c6
|
fix(reasoning): preserve investigation ownership across selection and question rejection
|
2026-08-17 17:58:45 +01:00 |
|
robbond
|
ade445e453
|
fix(reasoning): reconcile evidence and preserve deterministic continuation
|
2026-08-17 08:06:08 +01:00 |
|
robbond
|
34eb0cd4e3
|
fix(reasoning): exclude terminal nodes from active selector
|
2026-08-14 09:02:08 +01:00 |
|
robbond
|
bd3c7d59ae
|
fix(graph): make structural action contract authoritative
|
2026-08-12 08:15:41 +01:00 |
|
robbond
|
6aef806845
|
feat(graph): add structuralActionRequired contract (57J.67)
- Add structuralActionRequired field to graphUpdateSchema (optional boolean nullable)
- Validate declaration consistency in validateGraphUpdate():
- true requires meaningful mutation (addedNodes/updatedNodes/addedEdges)
- false permits intentional no-op when userSupportedMeaning populated
- null/absent with meaning → reject
- true/false mismatch on output shape → reject
- preserve legacy no-op guard for non-contract paths
- Update prompt-builder: add field to required list, insert contract section between rules and Additional Guidance with two mandatory sentences
- 50 new tests: schema validation (4), prompt builder content checks (10), utils contract matrix (10), plus 26 existing suite migrations
All 197 graph tests pass.
|
2026-08-12 07:26:26 +01:00 |
|
robbond
|
6adcd817e1
|
reasoning: require structural progress for supported meaning
|
2026-08-11 12:32:03 +01:00 |
|
robbond
|
fe6a9925cb
|
fix: stabilise multi-turn question progression
|
2026-08-03 13:55:39 +01:00 |
|
robbond
|
51ce356218
|
fix: handle unjustified unknown selection ties
|
2026-08-02 16:09:00 +01:00 |
|
robbond
|
586802950d
|
feat: explain deterministic unknown selection
|
2026-08-02 15:27:00 +01:00 |
|
robbond
|
392564ed61
|
feat: prioritise follow-up questions by information value
|
2026-08-02 11:11:55 +01:00 |
|
robbond
|
0ccc03c111
|
feat: add situation graph foundation
|
2026-08-02 06:59:23 +01:00 |
|