feat(events): a dry run carries a module's advice (MODULE_API 1.16.0) #217

Merged
whitlocktech merged 1 commits from feat/dry-run-warnings into main 2026-10-17 06:32:13 +00:00
Member

Rust PLAN_REDESIGNS §11.4, D391 (asked during the RaidableBases build): D208 makes the editor's check of a raid base's spot advice, and D388 shows rocks and cliffs as a warning in the editor. Core's dry run could only take an error from a module, so it gains a warning channel.

What changes

  • An action answering verify: true with { ok: true, detail: { warnings: [...] } } has each line shown as a warning finding, code advice, anchored to its step. It never fails the dry run: the world may change before the run does.
  • Strings only, trimmed, the empty dropped, at most ten per step, each cut at 500 characters (adviceOf). Anything else under warnings is ignored rather than refused. A refused step carries no advice.
  • The event editor already renders warning findings (version-drift), so there's no client change beyond the version.
  • MODULE_API 1.16.0 (server, client, contract test, engagement manifest). One optional reading of an existing member, so minor. Module-uo's ^1.10.0 still resolves and says no warnings. STEAM_SIGNIN.md's claim moves to 1.17.0 (docs PR).

Tests: server eventVerify.test.js + eventModuleContract.test.js 44/44, with three new tests (advice is a warning per line and passes; the bounds; a refusal carries none). Full server suite: everything passes except the two routes.*.json sync tests, which fail only because this machine has the rust and uo modules installed in website/modules/; no route changed. Client 430/430.

Re-pins to follow once this merges: Module-Rust stays ^1.15.0 (the advice is additive, so an older core simply doesn't show it), and the integration kit's ci/core-ref.json turns red by design on the bump until someone re-reads the chapters and moves the pin.

Docs: RunicGateway/docs docs/raidablebases-build (MODULE_API.md, EVENTS.md §I).

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

🤖 Generated with Claude Code

https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY

Rust PLAN_REDESIGNS §11.4, **D391** (asked during the RaidableBases build): D208 makes the editor's check of a raid base's spot *advice*, and D388 shows rocks and cliffs as a warning in the editor. Core's dry run could only take an error from a module, so it gains a warning channel. **What changes** - An action answering `verify: true` with `{ ok: true, detail: { warnings: [...] } }` has each line shown as a **warning** finding, code `advice`, anchored to its step. It **never fails the dry run**: the world may change before the run does. - Strings only, trimmed, the empty dropped, at most ten per step, each cut at 500 characters (`adviceOf`). Anything else under `warnings` is ignored rather than refused. A refused step carries no advice. - The event editor already renders warning findings (`version-drift`), so there's no client change beyond the version. - **MODULE_API 1.16.0** (server, client, contract test, engagement manifest). One optional reading of an existing member, so minor. Module-uo's `^1.10.0` still resolves and says no warnings. STEAM_SIGNIN.md's claim moves to 1.17.0 (docs PR). **Tests:** server `eventVerify.test.js` + `eventModuleContract.test.js` 44/44, with three new tests (advice is a warning per line and passes; the bounds; a refusal carries none). Full server suite: everything passes except the two `routes.*.json` sync tests, which fail only because this machine has the rust and uo modules installed in `website/modules/`; no route changed. Client 430/430. **Re-pins to follow** once this merges: Module-Rust stays `^1.15.0` (the advice is additive, so an older core simply doesn't show it), and the integration kit's `ci/core-ref.json` turns red by design on the bump until someone re-reads the chapters and moves the pin. Docs: RunicGateway/docs `docs/raidablebases-build` (MODULE_API.md, EVENTS.md §I). - [x] AI-assisted: written with Claude Code (Claude Opus 5.5) 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
wtclaude added 1 commit 2026-10-17 00:29:45 +00:00
feat(events): a dry run carries a module's advice (MODULE_API 1.16.0)
All checks were successful
PR Checks / bot-tests (pull_request) Successful in 43s
PR Checks / server-tests (pull_request) Successful in 6m8s
PR Checks / client-build (pull_request) Successful in 7m58s
8c30cbbddd
An action answering verify: true with { ok: true, detail: { warnings } } has
each line shown as a warning finding (code `advice`) that never fails the
dry run. Strings only, at most ten per step, each cut at 500 characters;
anything else under warnings is ignored, and a refused step carries none.

Rust PLAN_REDESIGNS §11.4, D391: a raid base's spot is checked against the
world as it stands now (a player on it, a rock beside it), which may change
before the run, so the editor shows it as advice. One optional reading of an
existing member, so minor; Module-uo's ^1.10.0 still resolves and says no
warnings. STEAM_SIGNIN.md's claim moves to 1.17.0.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01E14m6SuuY6i1vASFeGDBeY
whitlocktech approved these changes 2026-10-17 06:32:06 +00:00
whitlocktech merged commit 6ba2ed90ed into main 2026-10-17 06:32:13 +00:00
whitlocktech deleted branch feat/dry-run-warnings 2026-10-17 06:32:13 +00:00
Sign in to join this conversation.
No description provided.