review/per-task-cost #230
No reviewers
Labels
No labels
doctor-fix
first-proof blocker
hardening
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: clawdie/colibri#230
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "review/per-task-cost"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Colibri now captures per-task cost metrics when an agent finishes a claimed task. End-to-end: zot usage events → glasspane accumulation → daemon heartbeat capture → store persistence → MCP query. Contracts — TaskCostSummary schema (clawdie.task-cost-summary.v1) Glasspane — PaneUsage with Eq-safe micro-cents storage, accumulates zot usage events (previously discarded) Store — Task extended with 8 cost columns, TaskCost struct, set_task_cost() transitions to Done/Failed + writes cost Daemon — heartbeat poll_exit reads pane usage, writes TaskCost, gated on session_id prefix "task-" MCP — colibri_get_task_cost tool (read-only, returns cost data) Currency — Renamed cost_usd → cost everywhere. Value stays in provider billing currency (USD). Multi-currency display is a consumer-layer concern for the future. Tests — +5 new tests: contract round-trip, store write+not-found, glasspane accumulation (Zot+Pi), MCP tool list count Crate delta: contracts +30, glasspane +50, store +80, daemon +40, mcp +20, tests +60. 306 total tests (up from 297).Three fixes to HIVE-PANE.md: 1. machine_id as stable node identity — Agent Card input schema + hive_pane VIEW join key (was hostname-only) 2. Local LLM column in the mockup board — ollama/llama.cpp model info 3. cost_usd → cost in A2A cost data part (matches T1.5 rename) Cross-links: - hive-pane → hive-routing (engine vs presentation layer) - hive-routing → hive-pane (companion doc, A2A integration note) hive_pane VIEW now joins on machine_id, uses total_cost (not total_cost_usd).