feat(rust): RunicNPC is required in the Rust bundle (runicnpc stage 9, D310) #38
Reference in New Issue
Block a user
No description provided.
Delete Branch "feat/runicnpc-required"
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?
What & why
Phase 9b of
docs/runicnpc/PLAN.mdstage 9, D310: the Rust bundle's RunicNPC entry stops being optional.Into a recreated
edge. This repo'sedgewas deleted when it was last cut over, andmainreleases on every push. Merging this intomainwould publish an installer that refuses today's Rust bundle, which carries no RunicNPC. I recreatededgefrommain(2567cf5) so that it lands with the coordinated cutover (D313, phase 9e), after a bundle with RunicNPC v1.0.0 exists.install/update --game rustrefuse a bundle with no RunicNPC before anything is written, and say how to get one that has it.doctor --game rustfails when RunicNPC is missing or was never installed. A file edited by hand stays a warning, since it still loads.compose-bundles.shcomposes no Rust bundle without a RunicNPC release that answers the bridge'srunicnpc_api, and fails a bridge that declares none. The published bundle stays, and ServUO is unaffected (per-game failure). Every Rust bundle now hasnpc.npc, sodoctorand an old pin can name it. The egg follows the bundle and needs no change.How it was tested
cargo fmt,cargo clippy --all-targets -- -D warningsclean;cargo test: 174 + 9 pass.compose-bundles.shrun by hand against the real release API: Rust fails with "Rust-Plugins v0.1.1 declares no runicnpc_api, and RunicNPC is required (D310)…", and ServUO reports "no change". The success path's jq document was checked separately with a stand-innpc.Checklist
AI-assisted contributions (required)
Claude Code (Claude Opus 5.5). I have reviewed and understandevery change, and take responsibility for it. AI-authored commits are
marked with a
Co-Authored-By/Assisted-Bytrailer.License
(GNU GPL v3.0 or later), and I have the right to contribute it.
🤖 Generated with Claude Code
https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY