Parent: #497 Runtime foundation: home-lang/home#170
Scope
Migrate the remaining deterministic artifact generators, acquisition helpers, bootstrap helper, and maintenance operator from Python/JavaScript/shell to standalone TypeScript executed by ~/Code/Home/lang/zig-out/bin/home-tool.
The checked inventory currently assigns 20 tools to artifact_generator, 3 to operator_acquisition, 1 to bootstrap, and 1 to maintenance_operator. tools/wasm-conformance-matrix.ts is the completed reference migration, leaving 24 tools in this family.
Contract
- Home's TypeScript frontend performs emission.
- zig-js is the default execution engine;
-Dtool-js-engine=jscremains a differential lane. - No Bun, Node, or Python fallback.
- Preserve checked bytes, ordering, schemas, pin/checksum validation, and failure diagnostics.
- Network-capable acquisition stays explicit and pinned; ordinary builds remain offline.
- Expand the narrow
Homehost API only for concrete needs and cover each addition in Home's shared engine smoke fixture.
Acceptance criteria
- Every tool in these four contract profiles is TypeScript and invoked through
home-tool. - Each generator is byte-for-byte equivalent against its current checked artifact or a versioned schema change is separately reviewed.
- Each negative path (malformed input, drift, missing pin, out-of-scope maintenance target) retains a nonzero exit.
- Build/package/docs callers and both dependency inventories are updated in the same logical commit.
- Python/JS/shell counts fall by exactly the migrated set, with no compatibility wrappers left behind.
- Relevant Zig gates pass with the conventional Home installation and a
HOME_TOOL/-Dhome-tooloverride.