Submatter/.convoys/owner-cockpit-v02/brief-3-ops-copilot.md
Randall Stillwell 6f139d6af2 feat(owner-cockpit): forge webhooks + artifacts + copilot (Epic 8/11/12)
- Forge webhook POST /api/webhooks/forge HMAC sha256 verify, marker echodo-convoy → pr_review→merged as automation
- Completion artifacts table 0017, deterministic summary template, gallery /artifacts
- Ops copilot tRPC copilot + context tools (fleet, convoy, backlog) + panel + Draft Task → backlog.createTask
- Doc-writer SOPs: webhook rotation, copilot prompt, published flow examples
- Allow pr_review→merged as automation for webhook

Convoy: .convoys/owner-cockpit-v02

Co-authored-by: orchestrator
2026-08-25 17:49:38 -05:00

2 KiB

brief convoy role title status priority slice_dependencies recommended_model model_tier
3 owner-cockpit-v02 role-implementer Ops copilot — context tools + UI + draft work from chat ready P1
claude-planning premium

Brief 3 — Epic-ops-copilot (Epic 12)

Goal

ops copilot answers "what needs me?" with links, triages, and can draft a Task from chat. Uses gate-copilot routing but broader context.

Files

  • apps/web/server/routers/copilot.ts NEW — opsCopilot.generateText tRPC: resolveModel(gate-copilot) packages/shared/src/model-routing/index.ts, context tools: fleetStatus() (reuse convoys.fleet logic), convoyGet(workspaceSlug, convoyId), backlogListTree(workspaceSlug) (reuse backlog.listTree), backlogSearch (grep markdown_backlog_items). Tools are read-only, workspace-scoped, bounded. System prompt: "You are ops copilot for second brain OS… respond with links [workspace/slug]."
  • apps/web/server/routers/harnesses.ts — no change, just reuse resolveModel.
  • apps/web/components/copilot/ops-copilot-panel.tsx NEW — chat panel (reuses components/ui/*, ai SDK useChat if available or plain generateText loop), shows fleet → needs you citations, button Draft Task → calls backlog.createTask via create-backlog-item shape.
  • apps/web/app/(app)/fleet/page.tsx — add copilot FAB or sidebar embed.

Acceptance

  • "What needs me?" returns gate inbox items with [fleet] links to convoys.
  • Draft Task from copilot creates Task-*.md via same path as Plans tree (tool create-backlog-item logic).
  • Workspace-scoped — no cross-tenant leakage.
  • pnpm lint && pnpm type-check pass.

Prompt

You are role-implementer brief 3. Read plans/Plan-automation-foundation/Epic-ops-copilot/Epic-ops-copilot.md, docs/adr-model-routing.md, apps/web/server/routers/convoys.ts:267 gateCopilot as reference, docs/decisions/2026-08-25-second-brain-os-pivot.md. Keep tools small (<3 tools), no secrets in prompt.

Depends

None — can run parallel with 1,2.