docs(modules): the Carbon rig answers too, and its root is a different directory

R19's byte-identical plugin now carries protocol 5 on both frameworks:
`framework=oxide root=/home/container/oxide/config` on one rig and
`framework=carbon root=/home/container/carbon/configs` on the other, from the
same file. That is R18's amendment proven rather than argued — a literal
`oxide/config/` in this editor would have missed every config on half of all
installs.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PMH6bw1jXMgbyF3ZWGEzSM
This commit is contained in:
2026-09-22 08:58:21 -05:00
parent 82145d3b4a
commit 7f008fd1f3

View File

@@ -3143,11 +3143,18 @@ Two rigs, because the site half and the plugin half fail in different places.
config files: the recursive walk (including a nested `Kits/kits.json`), a form save that reloaded,
a save that rolled back, a refusal, a write with no reload, a version conflict with the current
file handed back, and the locked keys. Five outcomes, all five in the audit trail.
- **The plugin half** ran on the **live Oxide rig**: 1,050 new lines of C# `compiled successfully in
0ms`, the plugin loaded, and `rg.config` answered
`protocol=5 framework=oxide root=/home/container/oxide/config`. That is `Interface.Oxide.
ConfigDirectory` resolving and the runtime framework detection agreeing, on a real server, without
a line of conditional compilation.
- **The plugin half** ran on **both live rigs**, from one byte-identical file. On Oxide 2.0.4143,
1,050 new lines of C# `compiled successfully in 0ms` and the plugin loaded; on Carbon 2.0.259.0 it
loaded in 3,267 ms. `rg.config` answers
`protocol=5 framework=oxide root=/home/container/oxide/config` on the first and
**`protocol=5 framework=carbon root=/home/container/carbon/configs`** on the second.
That is two things at once and the second is the more valuable. `Interface.Oxide.ConfigDirectory`
resolves to a *different directory* on each framework, exactly as R18's amendment predicted — a
literal `oxide/config/` in this editor would have missed every config on half of all installs — and
the runtime framework detection, which the `c.reload` fallback depends on, agrees with the host it
is running on. Neither needed a line of conditional compilation, so R19's claim survives protocol
5.
**The acceptance line is not met**: "an admin flips a ZoneManager setting from the website and it
takes effect" needs the plugin and the sidecar on one host, and the rig's plugin still cannot reach