Bun, Rust, TypeScript
See .claude/PROJECT_MAP.md for project structure & key file locations.
Good code is self explaining. Comment only when absolutely needed.
- Named exports, no default exports
timeout isn't available on macOS. Use gtimeout
A TODO is COMPLETE only when all 5 gates pass:
| Gate | Requirement | How To Verify |
|---|---|---|
| 1. Implemented | Code written, compiles, no errors | bun test passes |
| 2. Wired | Connected to the systems that call it (wake cycles, hooks, handlers, prompts) | Grep for function calls from outside the module |
| 3. Tested | Unit tests + integration tests covering happy path and edge cases | Test count documented, all pass |
| 4. Verified in Production | Evidence of actual usage in the live database | SQL query showing non-zero rows, event counts, or call logs |
| 5. No Orphaned Outputs | Every computed output is consumed by at least one downstream system | Grep for each output → confirm a reader exists |