Topdata Migration (#2)

Native topdata migration summary

- Replaced the legacy 2dabuilder runtime path with the native topdata builder.
- Native build, validate, compare, and convert flows now cover the canonical topdata pipeline.
- compare-topdata is now a native self-check; legacy reference-builder runtime usage was removed.
- Parts generation follows the native asset-scan contract and uses sow-assets via project asset resolution.
- Generated feat families, class-feat injects, masterfeat/successor expansion, and dataset-derived feat generation were brought to parity and regression-covered.
- Remaining mirrored datasets were migrated into native-owned canonical data while preserving lock IDs.
- normalize-topdata bridge behavior and migration-era ownership markers were removed.
- Documentation was rewritten around the native workflow and active contracts were cleaned up.
- Final hardening pass removed stale validator assumptions and cleaned ignored/generated artifacts for PR readiness.

Reviewed-on: https://gitea.westgate.pw/ShadowsOverWestgate/sow-tools/pulls/2
Co-authored-by: vickydotbat <vickydotbat@tutamail.com>
Co-committed-by: vickydotbat <vickydotbat@tutamail.com>
This commit is contained in:
2026-04-09 07:14:01 +00:00
committed by archvillainette
parent 99f9d29d7a
commit dc93feb176
1402 changed files with 20955 additions and 3405 deletions
+18 -9
View File
@@ -37,10 +37,11 @@ tools/ built development binary output
- `sow-assets` uses `sow-toolkit` for `build-haks` and validation
- validation now fails early if duplicate asset resources would collide inside the same generated HAK
- duplicate resources split across different HAK groups remain warnings because later HAK order can still override earlier content at runtime
- `sow-module` now also uses `sow-toolkit` for the early topdata bridge:
- `sow-module` now also uses `sow-toolkit` for topdata:
- `validate-topdata`
- `build-topdata`
- `compare-topdata`
- `convert-topdata`
During development, sibling repositories can point at `../sow-tools/tools/sow-toolkit`. For pinned releases, each consumer repo can instead carry its own copy at `tools/sow-toolkit`.
@@ -57,15 +58,23 @@ Consumer repos can fetch those binaries into their local `tools/` directory with
- `install-tool.sh` on Linux/macOS
- `install-tool.ps1` on Windows
## TopData Migration
## TopData
The topdata rebuild is now staged in this repo.
The native topdata system is implemented in this repo and authored in `sow-module`.
Current state:
High-level ownership split:
- the new command surface exists in `sow-toolkit`
- `sow-module/topdata/` is the new long-term source home
- `build-topdata` currently bridges through the Python builder in `sow-dev` for authoritative output generation
- native Go merge/build parity is still a follow-up milestone
- `sow-tools`
- owns the `sow-toolkit` implementation
- owns topdata validation, build, compare, conversion, and dataset-resolution logic
- `sow-module`
- owns canonical topdata authored data under `topdata/data/`
- owns the user-facing topdata workflow scripts
See [TOPDATA_HANDOFF_2026-04-02.md](./TOPDATA_HANDOFF_2026-04-02.md) for the current handoff and migration notes.
For a human-readable front-to-back explanation of how the native topdata builder works
and how to use it, see:
- [sow-module/topdata/README.md](../sow-module/topdata/README.md)
Important topdata contracts still live here under `internal/topdata/` because they are
code-adjacent implementation contracts, not user workflow docs.