Phase 2b: Metrics Bridge
Hooks that track session state write to a shared metrics file that the statusline reads.
File format
{
"session_id": "abc123",
"dirty_files": 12,
"alert_count": 2,
"last_commit_ts": 1712345678000,
"context_pct": 73
}
Path
/tmp/ork-metrics-{session_id}.json (same pattern as existing ork-ctx-pct-{session}.txt)
Hooks that write
dirty-file-tracker.ts → dirty_files count
commit-nudge.ts → last_commit_ts
context-exhaustion-warner.ts → context_pct
- Any hook emitting alerts → increments
alert_count
Implementation
- Use
atomicWriteSync (already exists in lib/)
- Read-modify-write pattern (read existing, merge, write back)
- Cleanup: SessionEnd hook deletes the file
Acceptance criteria
🤖 Generated with Claude Code
Phase 2b: Metrics Bridge
Hooks that track session state write to a shared metrics file that the statusline reads.
File format
{ "session_id": "abc123", "dirty_files": 12, "alert_count": 2, "last_commit_ts": 1712345678000, "context_pct": 73 }Path
/tmp/ork-metrics-{session_id}.json(same pattern as existingork-ctx-pct-{session}.txt)Hooks that write
dirty-file-tracker.ts→dirty_filescountcommit-nudge.ts→last_commit_tscontext-exhaustion-warner.ts→context_pctalert_countImplementation
atomicWriteSync(already exists in lib/)Acceptance criteria
🤖 Generated with Claude Code