v1.2.1 — Doc reconcile, add-feature dedup & effect-change tests
Maintenance patch — no runtime behavior change. Live write-path payloads are byte-identical and all existing tests pass unchanged.
Docs
- README: tool count
85 → 95(+ corrected Plane-A/Plane-B split), added the missingupload-asset-treerow, and rewrote the Contributing recipe to the realregistry.tshandlers-map + generatedzod → JSON-Schemamechanism (the oldallTools/switch(dispatch)path it described was removed long ago). - design.md §9: added the shipped
tom-cartos-importskill (11 → 12). - architecture-review.md: marked as a superseded 2026-06-24 snapshot so its already-closed findings aren't read as open.
Refactor
- add-feature: single-sourced every enum value set and the shared field fragments (
featureHeaderFields/attackCoreFields/sourceMetaFields/refineRangedAttack) between the umbrella and per-mode schemas, and extracted thedamageList/warningBlockformatter boilerplate. Closes the file's own documented drift CAVEAT. 37 existing tests pass.
Tests
- effects: extracted the pure, Foundry-v14-coupled change mapping (
normalizeChange/summarizeChanges) intosrc/page/effect-changes.tswith 10 new unit tests, mirroring theactivities.ts ↔ manage-activity.tssplit — a Foundry mode-renumber now fails offline instead of silently mis-authoring effects live.
Gate
biome · typecheck · 980 unit tests · knip · build — all green.
⚠️ Live integration + MCP smoke (RELEASE.md steps 2–3) were not run this cycle, as no live-write behavior changed.
Full diff: v1.2.0...v1.2.1