Docs
Spend to outcome
What did the spend buy. A per-developer join of agent cost to the outcomes RepoOps already grades, over a time window. It joins the cost-per-merged-PR attribution (grouped by PR author) to merged PRs, per-session quality bands, and lessons produced. This is the leadership answer to "Joe spent $5,000 on Claude last week, what did we get?" Anything the join cannot tie to a person reads as unattributed, never fabricated onto a name.
Where to find it
- Localhost:
/spend-outcome.html - API:
GET /api/spend-outcome(window and scope as query params) - Sidebar: Spend, then Spend to outcome
What it does for you
Built vs. planned
The per-developer join, the unattributed bucket, the window selector (7, 30, 90 days), and the headline totals ship today, backed by lib/spend-outcome.mjs. It reuses the existing producers rather than adding a second cost engine: the cost-per-merged-PR attribution join (lib/continuity/cost-attribution.mjs), the per-session quality scores, and the lessons store. There is no separate cost model to reconcile.