replaced explicit masterfeats/feat base+lock path branches

This commit is contained in:
2026-05-13 20:14:27 +02:00
parent 4b55628ac8
commit 4fd0375608
3 changed files with 147 additions and 50 deletions
+18
View File
@@ -146,6 +146,9 @@ This should be test-covered.
### Work Item 2: Audit path-based validator routing
Status: implemented for root dataset invariants; family-specific routes remain
where the authored shape is not a generic base/module/lock file.
Classify every explicit route in `validateDataObject()` as one of:
- generic canonical shape handling
@@ -154,6 +157,21 @@ Classify every explicit route in `validateDataObject()` as one of:
Reduce the explicit route set where possible.
Current classification:
- `masterfeats/base.json`, `masterfeats/lock.json`, `feat/base.json`, and
`feat/lock.json` are now handled by a generic dataset invariant table. These
remain toolkit invariants because the row key namespaces and required columns
are intrinsic to those native datasets, not repository-level YAML choices.
- `feat/generated/*` remains an intrinsic dataset-family route. Generated feat
files support compact family expansion and generated entries/overrides, which
are not generic module shapes.
- `parts/overrides/*` remains a dataset-family route for non-module override
files outside the standard `modules/` tree.
- `racialtypes/registry/races/*` remains a registry-family route because those
files describe race registry records, optional feat-table generation, and core
row payloads rather than generic row/module documents.
### Work Item 3: Define topdata invariant boundaries
For each current explicit topdata behavior, decide whether it belongs in: