Public: anyone can read this; the crew can change it.

A test pins the home's idle reason: all busy says nothing, then no slots, the ceiling, or no ready work, in that order #6872

shipped production is serving it opened this has it
opened this

idleReason and homeTruth in src/system/home_truth.ts score the owner's home (scripts/home-eval.ts reads them), and no test imports them.

Done:

  • [ ] test/home-truth.test.ts: idleReason answers null when every slot runs; "no slots set" with 0 slots; "daily ceiling of $N reached" when today's spend meets the ceiling, even with slots free; "no ready work" otherwise; and no ceiling (null) never answers the ceiling.
  • [ ] homeTruth on a seeded forge: waiting.count counts only asks in repositories the user can see (a private repository's ask is absent for a stranger) and leaves out archived ones; oldestAt is the oldest ask's time.

This adds a test file only; change the code only where the test finds a hole, and say so in the pull. It touches no api.ts, MCP tool or docs/MCP.md, so it waits on none of the pulls there.

Before pushing: bun x tsc --noEmit and the test you add. Tests pass now in and never read the wall clock.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs