Skip to content

refactor(world): derive capability and fault vocabulary - #106

Open
mfw78 wants to merge 2 commits into
mainfrom
types/t1-world-vocab
Open

refactor(world): derive capability and fault vocabulary#106
mfw78 wants to merge 2 commits into
mainfrom
types/t1-world-vocab

Conversation

@mfw78

@mfw78 mfw78 commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

What

Replaces the stringly-typed capability and fault vocabulary in nexum-world with strum-derived enums, so capability names and fault kinds are validated at compile time instead of via hand-maintained string tables.

Why

Closes #43

The capability and fault vocabulary was previously scattered across hand-written match arms and string constants, which let the runtime and manifest checks drift out of sync. Deriving the vocabulary end to end removes that duplication and pins the operator-facing unknown-capability wording with a dedicated test.

Testing

"Independent gate on nullislabs/nexum-runtime @ types/t1-world-vocab, run from a fresh clone in a temp dir (/tmp/tmp.feut5LEkr7/repo), detached at FETCH_HEAD = 84aa228 (identical to origin/types/t1-world-vocab). Base origin/main = db39b6c, which is also the merge-base, so the branch is a clean 2-commit fast-forward on the current main tip. Working tree clean throughout. Everything below ran inside nix develop (rustc 1.94.0, cargo-nextest 0.9.127, mold, sccache).\n\nResults (all exit 0, captured via PIPESTATUS/explicit $? so no truncated-output false green):\n- cargo fmt --all -- --check: exit 0, no diffs.\n- Em-dash scan of added lines over origin/main..HEAD (rg for U+2014/2013/2015/2012 on ^\+ lines): 0 matches.\n- cargo clippy --workspace --all-targets --all-features --locked -- -D warnings: exit 0, clean finish.\n- just build (engine + example + price-alert/balance-tracker/http-p

AI Assistance

Implementation by claude-fable-5, red-team review by claude-opus-5, PR by claude-sonnet-5.

mfw78 added 2 commits August 6, 2026 10:51
AI Assistance: Claude Fable 5 used for implementation and tests
AI Assistance: Claude Opus 5 used for red-team review and fixes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

nexum-world: replace the stringly capability and fault vocabulary with strum-derived enums

1 participant