chore/merge-all-uncommitted #235

Merged
clawdie merged 13 commits from chore/merge-all-uncommitted into main 2026-06-27 18:11:51 +02:00
Owner
No description provided.
clawdie added 13 commits 2026-06-27 18:11:32 +02:00
- colibri-mcp-ssh: subquery on hive_nodes to resolve
  node_hostname to node_id for FK integrity
- wiki/mother-hive.md: new §Per-task cost aggregation
  documents push vs pull, separate table rationale,
  hostname-not-id decision

Sam & Hermes
- task_costs: add screenshot_uuid TEXT column + migration
- daemon push_cost_to_mother: read COLIBRI_TASK_SCREENSHOT_UUID
  env var, attach to payload if set
- colibri-mcp-ssh report-task-cost: INSERT screenshot_uuid
  via NULLIF, accepts missing key gracefully

Sets up the cross-reference between cost rows and tmux-screenshot
captures. No breaking change — UUID is optional everywhere.

Sam & Hermes
Three new files in packaging/mother/dashboard/:

  index.html (460 lines) — Self-contained cost dashboard:
  - Cost cards with cache-hit bars (green cache / grey fresh)
  - Node-grouped rows with summary stats (task count, cost, success rate)
  - ▸ proof badge on cards with linked tmux-screenshot PNGs
  - Lightbox viewer for terminal screenshots at task completion time
  - JSON toggle for agent-friendly structured data
  - Filters: node, provider, success/failure
  - Dark terminal theme, monospace, responsive
  - Auto-refresh every 60s

  export-costs.sh (75 lines) — PostgreSQL → JSON export:
  - Denormalizes task_costs + hive_nodes into dashboard data file
  - Computes summary (total cost, avg, success rate, cache-hit ratio)
  - Groups by node with per-node stats
  - Limits to 200 most recent tasks

  deploy.sh (45 lines) — Idempotent mother deploy:
  - Copies dashboard files to /usr/local/www/clawdie/dashboard/
  - Installs cron job (every 60s)
  - Runs initial export

  Schema:
  - task_costs.screenshot_uuid column (TEXT, nullable)
  - report-task-cost SSH command updated: node_hostname→node_id lookup,
    screenshot_uuid field, NULLIF for empty strings

  Wiki:
  - cost-dashboard.md — architecture, data sources, deploy flow,
    agent-friendly JSON format, screenshot proof design
  - Index updated (EN)

  184 wiki refs, clean lint, cargo fmt pass.
New crates:
- colibri-zfs: Snapshot::list(), destroy(), destroy_all(), older_than()
  Structured ZFS snapshot lifecycle without shell parsing
- colibri-pf: list_rules(), list_states()
  Structured PF firewall state inspection

New MCP tools (6):
- colibri_zfs_list_snapshots: list snapshots for a dataset
- colibri_zfs_destroy_snapshot: destroy a snapshot by name
- colibri_pf_list_rules: active PF firewall rules
- colibri_pf_list_states: PF state table entries
- colibri_wiki_search: search wiki pages with line excerpts
- colibri_wiki_page: read wiki page content in full

Tool count: 12 → 18
merge: feat/dashboard-screenshot-proof — daemon screenshot capture + HANDOFF
Some checks are pending
CI / rust (pull_request) Waiting to run
CI / markdown (pull_request) Waiting to run
CI / port (pull_request) Waiting to run
CI / agent-jail-pkgs (pull_request) Waiting to run
de574aaec1
clawdie merged commit 0d4d0f7fb1 into main 2026-06-27 18:11:51 +02:00
clawdie deleted branch chore/merge-all-uncommitted 2026-06-27 18:11:55 +02:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: clawdie/colibri#235
No description provided.