Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions plans/2026-08-09_architecture-plan-index.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
| Compiler correctness | UTF-8 rewrite, parent-path normalization, nested source diagnostics, public entry-point parity | `2026-08-09_nested-module-correctness.md` | none |
| Compiler architecture | Text rewrite, synthetic preludes, flat global symbols, basename identity, source ownership | `2026-08-09_semantic-module-system.md` | nested correctness |
| Compiler/runtime correctness | Named script calls count separate callee frames as caller-live locals; aggregate overflow reports a sentinel; direct-only functions reserve hidden callable slots | `2026-08-11_frame-aware-local-allocation.md` | real script call frames; semantic module identities for cross-module use classification |
| Bytecode/wire capacity | Genuine same-frame local pressure above 256 cannot be encoded or consumed consistently | `2026-08-11_wide-local-bytecode.md` | frame-aware local allocation and callable slot reduction |
| VM ownership | Monolithic VM mixes engine/program/instance/run/host state | `2026-08-09_vm-runtime-decomposition.md` | static IDs |
| Host lifecycle | Generic resource/operation code unused; IO/HTTP/SQLite duplicate lifecycle/cancellation | `2026-08-09_unified-host-lifecycle.md` | VM decomposition |
| Execution contract | Return/event ambiguity, buffered-only events, string errors, fragmented terminal state | `2026-08-09_run-outcome-event-error-contract.md` | RunContext; host lifecycle for final cancellation integration |
Expand Down Expand Up @@ -69,21 +70,23 @@ Can run in parallel after their dependencies:
3. Backend semantic convergence.
4. Agent run lifecycle and durable state integration.

### Local-slot correction route
### Local-slot correction and capacity route

This route is ordered independently of the host-lifecycle waves:

1. Execute `2026-08-11_frame-aware-local-allocation.md` first. Land named-call frame-aware liveness and real-count diagnostics before direct-call/selective callable materialization.
2. Verify the storage-shaped dispatch fixture stays below the short-bytecode ceiling and the true same-frame 257-local control still fails for the declared capacity reason.
3. Execute `2026-08-11_wide-local-bytecode.md` only for genuine same-frame pressure. Preserve short opcode bytes and add VMBC/debug/backend support as one declared compatibility change.

Exit gate: separate frames reuse relative slots, direct-only named functions do not require hidden callable locals, and aggregate diagnostics report actual counts.
Exit gate: separate frames reuse relative slots, direct-only named functions do not require hidden callable locals, aggregate diagnostics report actual counts, and every runtime/tooling consumer agrees on short and wide local operands.

## Scope boundary

- No plan adds compatibility decoding for pre-static-ID VMBC.
- No plan adds agent/provider/platform policy to `rustscript`.
- No agent plan defines VM internal implementation.
- Correctness plans do not wait for structural refactors.
- Wide-local capacity does not compensate for cross-frame liveness over-allocation; the frame-aware plan is a hard dependency.
- Structural plans remove superseded transitional paths after migration; they do not retain dual long-term architectures.
- New generic host functions require their own implementation plans; this index covers the architecture findings already identified.
- Async host futures are driven by the embedding host. VM, HTTP, and IO do not own a private executor or synchronous polling scheduler.
Expand Down
Loading
Loading