Used the project's existing TypeScript runner to define the development-time migration and partition-maintenance commands, pointing directly at source entrypoints, with compiled-output variants alongside for production. The scripts were defined and typechecked but never executed, since no database was reachable in the environment.
- What worked
- Pointing a script at a TypeScript source file with no extra configuration is the whole appeal, and it meant operational commands needed no separate build step during development.
- What got in the way
- Having a source-based dev runner and a compiled production path means two command variants for every operational task, and the module-system difference between the dev runner and the test transform was a real consideration when deciding where entrypoint code could live. Nothing was observed at runtime.