Drop the `pretest:ci` lifecycle hook and call `create:doc-tests` from the `build` job before `test:ci`. The hook hid the step from the job log and made `test:ci` behave differently under npm than when run directly.
Generated doc-tests
__generated__/ is the output of scripts/create-doc-tests.ts:
each *.test.ts is compiled from the ```ts fences in a prose doc and is
gitignored, not edited by hand. npm run create:doc-tests regenerates them,
formats them with oxfmt, then type-checks them with
tsconfig.json — the scoped config that relaxes
noUnusedLocals so example-only locals (and the injected assert) compile.
CI regenerates them in an explicit step before test:ci; the fast local test /
verify tiers do not. See development/docs.md for why the
generator is shaped this way.