Autonomous issue-to-PR driver for Claude Code and OpenCode, structured per lair/architecture generic.md. Workspace: entities/core/data/agent library crates plus api, worker and cli binaries. Two pieces of real logic land with tests — lane routing (cc for judgement, oc for specification) and the limit governor. Constraints encoded as code rather than comments: - agents are spawned as vendor binaries; tireless never calls a provider API - ANTHROPIC_API_KEY is never set by tireless, only passed through - assert_not_anthropic refuses to start an OpenCode lane pointed at Anthropic - every run passes the governor; provider rate-limit signals win over our own accounting Deployment assets target bob.hanzalova.internal:23296 (registered in port-allocations.md), fronted by hanzalova at tireless.internal. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DHhHtohxcdk1PL3tfnYJdH
11 lines
454 B
TypeScript
11 lines
454 B
TypeScript
// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
|
|
|
|
/**
|
|
* Job lifecycle.
|
|
*
|
|
* A job is the unit of work-claiming. Claiming is a Postgres row transition
|
|
* under `FOR UPDATE SKIP LOCKED` (`architecture/generic.md` §3), not a forge
|
|
* label — labels cannot be claimed atomically.
|
|
*/
|
|
export type JobState = "pending" | "claimed" | "running" | "delivered" | "blocked" | "failed" | "abandoned";
|