docs(rust): phase 13 plan, and 13a as built (PLAN.md §28, PROTOCOL.md §15) #268

Merged
whitlocktech merged 4 commits from docs/rust-phase-13 into main 2026-09-24 10:07:19 +00:00
Member

This is the plan of record for module-rust phase 13, committed before any code, and the as-built record of its first half.

  • PLAN.md §28: phase 13 splits into 13a (the world) and 13b (the rewards). It records:
    • D80–D95, the org lead's decisions of 2026-09-24;
    • the rig facts they rest on:
      • monument names repeat;
      • crates keep their net id across a restart and NPCs do not;
      • ZoneManager erases a plugin's zones when that plugin unloads;
    • §28.5 D96–D97, decided mid-build;
    • §28.6 the seven-step walk on Oxide and Carbon;
    • §28.7 findings;
    • §28.8 what is not proven.
  • PROTOCOL.md §15: protocol 9, the world verbs.
  • Links the three phase-12 core findings now filed: website#205, #206 and #207.

Raised, not changed (§28.7):

  • Core infers an action's cap boxes from its examples. That belongs in MODULE_API §2.4 and in kit chapter 5.
  • A key-only revert has to ask every server, so one stopped server holds such a row open.

13b (the participation tally, rust.kit.entitle, announce) gets its own plan section, §29, before its code.

Code PRs: Rust-Plugins, Rust-Link and Module-Rust, each feat/phase-13a-worldedge.

  • AI-assisted: Claude Code (Claude Opus 5.5)

🤖 Generated with Claude Code

https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY

This is the plan of record for module-rust phase 13, committed before any code, and the as-built record of its first half. - **PLAN.md §28**: phase 13 splits into 13a (the world) and 13b (the rewards). It records: - D80–D95, the org lead's decisions of 2026-09-24; - the rig facts they rest on: - monument names repeat; - crates keep their net id across a restart and NPCs do not; - ZoneManager erases a plugin's zones when that plugin unloads; - §28.5 D96–D97, decided mid-build; - §28.6 the seven-step walk on Oxide and Carbon; - §28.7 findings; - §28.8 what is not proven. - **PROTOCOL.md §15**: protocol 9, the world verbs. - Links the three phase-12 core findings now filed: website#205, #206 and #207. **Raised, not changed (§28.7):** - Core infers an action's cap boxes from its examples. That belongs in MODULE_API §2.4 and in kit chapter 5. - A key-only revert has to ask every server, so one stopped server holds such a row open. 13b (the participation tally, `rust.kit.entitle`, announce) gets its own plan section, §29, before its code. Code PRs: Rust-Plugins, Rust-Link and Module-Rust, each `feat/phase-13a-world` → `edge`. - [x] AI-assisted: Claude Code (Claude Opus 5.5) 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
wtclaude added 2 commits 2026-09-24 08:16:23 +00:00
Phase 13 splits into 13a (the world verbs, the ownership registry and the
boot/wipe reconcile watch) and 13b (the participation tally, the kit
entitlement and announce). Records the org lead's sixteen decisions and the
rig facts they rest on: monument names repeat, crates keep their net id
across a restart while NPCs do not, and ZoneManager erases a plugin's
temporary zones when that plugin unloads. Also links the three core
findings phase 12 raised, now filed as website#205-#207.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
- PLAN.md §28.5–28.8: two more org-lead decisions (D96 required zone minutes
  held by the game; D97 one placing verb per kind, because core infers cap
  boxes from examples), the seven-step walk on both rigs, the defect a
  mid-run restart found (the reconcile asked a world that had not loaded and
  the plugin pruned live crates) and its fix, and what is not proven.
- PROTOCOL.md §15: protocol 9 — the five world commands, the registry keyed
  by the website's key, what a restart and a wipe do, `worldReady`.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
wtclaude added 1 commit 2026-09-24 09:10:00 +00:00
PLAYER_WALK.md gains the events walk: the checks phases 12 and 13a left for a
person on the rig (a kit unlocking under a group-permission lease, standing
in a zone, a zone surviving a restart, looting and killing what an event
placed, a zone expiring around a player, and spawn.max_* with players on).
The permission walk now says it can only pass on protocol 9, because the
phase-7 owner bug made its steps 1-3 impossible on Oxide until then.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
wtclaude added 1 commit 2026-09-24 09:11:21 +00:00
ZoneManager's listing command is `zone_list`, and it has no command that
says who is inside a zone. The zone steps now use `rgp.inzone`, a rig-only
probe command that asks ZoneManager's own IsPlayerInZone for every connected
player. They also no longer claim rg.hooks counts zone entries: the bridge
subscribes to those hooks in 13b.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
whitlocktech merged commit 37bc06234d into main 2026-09-24 10:07:19 +00:00
whitlocktech deleted branch docs/rust-phase-13 2026-09-24 10:07:20 +00:00
Sign in to join this conversation.
No description provided.