feat(bridge): TruePVE in a zone on protocol 14 (PLAN_REDESIGNS §14.3.2) #36
Reference in New Issue
Block a user
No description provided.
Delete Branch "feat/truepve-zone"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Stage 3 of the §14.3 integration plan (D362, D368). Spec: docs
rust-link/PROTOCOL.md§20.6 (docs PR alongside); record:modules/rust/PLAN_REDESIGNS.md§14.3.16.world.zone's optionaltruePve:{"exclude": true}or{"ruleset": "name"}, exactly one, the name 1–64 characters. A malformed one ismalformed. TruePVE not loaded istruepve-missing, checked before anything is made.AddOrUpdateMapping. A false erases both and answerstruepve-rulesetwith the name, orrefusedforexclude.RemoveMappingfirst: the deadline,world.revert, a zoneworld.ownedfinds gone, and a new wipe. While TruePVE is away, the id waits indata/RunicGateway/truepve.json. It is flushed atOnPluginLoaded(TruePVE)and at the bridge's own load.integrations.truePve{ loaded, version }, sent again when TruePVE loads or unloads.rg.worldprintstruePve=andtruePveLeftover=.Two commits: the first is the feature, pushed as WIP by an earlier session. The second adds the hello re-send on TruePVE load/unload, which that session missed, plus the README entry.
Tested: compiled and loaded on both rigs (Rust 25902425, Oxide 2.0.7830, Carbon 2.0.262, TruePVE 2.4.6).
rg.worldreadtruePve=True truePveLeftover=0on each. Afterwards both rigs were put back on the protocol-13 bridge. Walk rows are §14.3.2's and wait for the end walk (D331, D359).AI-assisted: written with Claude Code (disclosed per org policy).
🤖 Generated with Claude Code
https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
Stage 3 of the §14.3 integration plan (D362, D368): world.zone's optional truePve ({exclude: true} or {ruleset}), all or nothing, unmapped on every path that erases one of our zones, with truepve.json for erases while TruePVE is away. Docs and PRs still to come. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeYStage 3 of the §14.3 integration plan (D362, D368), specified in docs rust-link/PROTOCOL.md §20.6. - world.zone's optional truePve: {"exclude": true} or {"ruleset": "name"}, exactly one, the name 1-64 characters. Malformed is `malformed`; TruePVE not loaded is `truepve-missing`. - All or nothing: the zone (and its dome) is made, then AddOrUpdateMapping. A false erases both and answers `truepve-ruleset` with the name (or `refused` for exclude). - The registry entry remembers its mapping, and every path that erases one of our zones calls RemoveMapping first: the deadline, world.revert, a zone world.owned finds gone, a new wipe. While TruePVE is away the id waits in data/RunicGateway/truepve.json, flushed at OnPluginLoaded(TruePVE) and at the bridge's own load. - hello's integrations.truePve { loaded, version }, sent again when TruePVE loads or unloads. rg.world prints truePve= and truePveLeftover=. Compiled and loaded on both rigs (Rust 25902425, Oxide 2.0.7830, Carbon 2.0.262, TruePVE 2.4.6). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY