fix: extract registerHatkResolveHook and use in main.ts and test.ts
The $hatk module alias needs a Node.js resolve hook for dynamic import()
in scanServerDir. Previously only test.ts had it — now main.ts uses the
same shared hook so production also resolves $hatk correctly.
Bumps to 0.0.1-alpha.29.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>