Commit 6e4299f
committed
Fifth deep-audit pass on rolling-horizon planning is complete. Highlights:
Production hardening
Context binding & budget
runId mismatch vs active run.json → hard error (re-export required)
Export reports contextByteSize and warns if over 32 KiB
Doctor checks horizon context size
Import / dry-run
--dry-run returns projected final ids (e.g. 003 after 001/002), not normalized proposal ids
Successful import auto-refreshes horizon-context.json + frontier.json for the next cycle
contextRefreshed: true on import result
Validation warnings
Ready nodes not yet executed → warn (prefer next → verify → continue)
DAG size drift since export → warn (frontier still live-refreshed)
Status & inspect
horizon status: suggestedAction, hasReadyNodes, contextByteSize
inspect: horizon paths, stale flag, context bytes, last import
Documentation
docs/jsdp-convergence-harness.md revised with:
Anti-patterns table (what blows tokens)
Context contract + 32 KiB budget
Post-import context refresh
Full audit checklist
Tests
52/52 JSDP tests pass (4 new: projected ids, runId mismatch, context refresh, byte size).
Operator loop
jz jsdp horizon export --nodes 3 # check contextByteSize in output
jz jsdp horizon prompt --nodes 3
jz jsdp horizon validate ./horizon.json
jz jsdp horizon import ./horizon.json --dry-run # see projectedNodeIds: ["003", ...]
jz jsdp horizon import ./horizon.json # refreshes context for next cycle
jz jsdp horizon status # suggestedAction when ready nodes exist1 parent f487e5d commit 6e4299f
31 files changed
Lines changed: 2747 additions & 209 deletions
File tree
- docs
- samples/jsdp
- src
- JoyZoning.Cli
- JoyZoning.Domain/Orchestration
- JoyZoning.Jsdp
- Models
- Services
- tests/JoyZoning.Cli.Tests
- Fixtures/jsdp
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
36 | | - | |
| 36 | + | |
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
| |||
0 commit comments