bd: backup 2026-03-04 02:41
This commit is contained in:
parent
d1b81250b2
commit
5b18f97b7b
5 changed files with 33 additions and 11 deletions
|
|
@ -1,8 +1,11 @@
|
|||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-02-28T10:20:47Z","event_type":"created","id":1,"issue_id":"beadboard-3t8","new_value":"","old_value":""}
|
||||
{"actor":"ZenchantLive","comment":"","created_at":"2026-03-03T18:18:33Z","event_type":"created","id":1,"issue_id":"beadboard-wisp-8zgx","new_value":"","old_value":""}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-02-28T10:20:56Z","event_type":"status_changed","id":2,"issue_id":"beadboard-3t8","new_value":"{\"notes\":\"Root cause: state divergence and backend drift. .beads/issues.jsonl + beads.db had 381 issues, while active Dolt DB exposed only 4 due stale/incorrect Dolt dataset, stale lock files, and server-mode requirements after upgrading bd.\\\\n\\\\nRepair sequence that worked:\\\\n1) Upgraded bd to 0.56.1.\\\\n2) Installed local dolt binary (~/.local/bin/dolt).\\\\n3) Started local dolt sql-server on 127.0.0.1:3307 rooted at .beads/dolt.\\\\n4) Verified source-of-truth candidate counts: issues.jsonl=381 and beads.db=381 matched.\\\\n5) Recovered known-good 381-issue Dolt dataset from backup path and restored into active .beads/dolt/beadboard.\\\\n6) Set active dolt database via 'bd dolt set database beadboard'.\\\\n7) Re-ran status/ready/list verification.\\\\n\\\\nFinal verification:\\\\n- bd status =\\u003e Total 381, Open 66, Blocked 23, Closed 219, Ready 43\\\\n- bd ready -n 20 =\\u003e non-empty (42 ready total)\\\\n- bd list --all --json =\\u003e total 381; status counts {open:66, closed:219, tombstone:94, deferred:2}\\\\n\\\\nOperational note:\\\\n- bd 0.56.1 is server-mode for Dolt; ensure dolt sql-server is running on configured host/port before bd commands.\\\\n- If unavailable, restart from repo with: cd .beads/dolt \\u0026\\u0026 dolt sql-server --host 127.0.0.1 --port 3307\",\"status\":\"in_progress\"}","old_value":"{\"id\":\"beadboard-3t8\",\"title\":\"Dolt/JSONL recovery: restore beadboard issue inventory\",\"description\":\"Capture successful Dolt reconciliation after bd 0.56.1 migration and lock/server failures.\",\"acceptance_criteria\":\"Document root cause, exact repair commands, final counts, and restart steps for dolt server\",\"status\":\"open\",\"priority\":0,\"issue_type\":\"task\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-02-28T18:20:48Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-02-28T18:20:48Z\"}"}
|
||||
{"actor":"ZenchantLive","comment":"","created_at":"2026-03-03T18:25:55Z","event_type":"created","id":2,"issue_id":"beadboard-wisp-ougu","new_value":"","old_value":""}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-02-28T10:21:00Z","event_type":"closed","id":3,"issue_id":"beadboard-3t8","new_value":"Recovered active Dolt dataset to 381 issues, restored non-empty ready queue, and documented repeatable repair steps + server prerequisites.","old_value":""}
|
||||
{"actor":"ZenchantLive","comment":"","created_at":"2026-03-03T18:26:14Z","event_type":"created","id":3,"issue_id":"beadboard-wisp-qt50","new_value":"","old_value":""}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-02-28T12:59:29Z","event_type":"created","id":4,"issue_id":"beadboard-4qa","new_value":"","old_value":""}
|
||||
{"actor":"ZenchantLive","comment":"","created_at":"2026-03-03T18:26:19Z","event_type":"created","id":4,"issue_id":"beadboard-wisp-uo0r","new_value":"","old_value":""}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-02-28T12:59:38Z","event_type":"created","id":5,"issue_id":"beadboard-yh3","new_value":"","old_value":""}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-02-28T12:59:48Z","event_type":"created","id":6,"issue_id":"beadboard-t83","new_value":"","old_value":""}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-02-28T13:02:57Z","event_type":"closed","id":7,"issue_id":"beadboard-4qa","new_value":"Recreating as proper children of Phase 0 epic with correct naming","old_value":""}
|
||||
|
|
@ -942,3 +945,18 @@
|
|||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:18:34Z","event_type":"updated","id":1051,"issue_id":"bb-test-coord-izs2","new_value":"{\"title\":\"Agent: test-coord-izs2\"}","old_value":"{\"id\":\"bb-test-coord-izs2\",\"title\":\"Agent: bb-test-coord-izs2\",\"status\":\"open\",\"priority\":0,\"issue_type\":\"task\",\"created_at\":\"2026-03-04T02:18:34Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-04T02:18:34Z\",\"agent_state\":\"idle\",\"last_activity\":\"2026-03-04T02:18:34Z\"}"}
|
||||
{"actor":"ZenchantLive","comment":"Added label: gt:agent","created_at":"2026-03-03T18:18:34Z","event_type":"label_added","id":1052,"issue_id":"bb-test-coord-izs2","new_value":null,"old_value":null}
|
||||
{"actor":"ZenchantLive","comment":"Added label: role:test","created_at":"2026-03-03T18:18:34Z","event_type":"label_added","id":1053,"issue_id":"bb-test-coord-izs2","new_value":null,"old_value":null}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:24:16Z","event_type":"updated","id":1054,"issue_id":"beadboard-izs.2","new_value":"{\"notes\":\"Implemented bb agent subcommand routing in src/cli/beadboard-cli.ts (ported tools/bb.ts command surface and response formatting). Added CLI contract test in tests/cli/beadboard-cli.test.ts. Verification evidence: node --import tsx --test tests/cli/beadboard-cli.test.ts tests/cli/beadboard-help-output.test.ts tests/cli/beadboard-bin-routing.test.ts (pass, 7/7); node bin/beadboard.js agent list --json (ok true, command=agent list); node bin/beadboard.js agent register --name test-coord-izs2 --role test --json (ok true); node bin/beadboard.js agent show --agent test-coord-izs2 --json (ok true); npm run lint (exit 0, warnings only). Memory review: no new reusable memory.\"}","old_value":"{\"id\":\"beadboard-izs.2\",\"title\":\"bb coord: wire bb agent commands into global bb CLI\",\"description\":\"## TASK CONTEXT\\nThe global bb npm CLI (beadboard-cli.ts) only handles start/open/status/doctor/self-update/uninstall. External agents (in any repo) need bb agent send/inbox/read/ack/register/list/show/activity-lease/reserve/release/status. The full implementation is in src/lib/agent-*.ts. This task ports the agent subcommand from tools/bb.ts into beadboard-cli.ts.\\n\\n## TASK CONTRACT\\n**Goal**: Expose the full bb agent command surface through the globally-installed bb CLI.\\n\\n**Success Criteria**:\\n- bb agent register --name foo --role ui works from any directory\\n- bb agent send --from foo --to bar --bead x --category INFO --subject y --body z works\\n- bb agent inbox --agent foo lists messages\\n- bb agent read --agent foo --message m marks as read\\n- bb agent ack --agent foo --message m acknowledges\\n- bb agent reserve/release/status work\\n- bb agent activity-lease --agent foo works\\n- Human-readable output by default, JSON with --json flag\\n- npm run build passes\\n\\n**Scope**:\\n- Modify beadboard-cli.ts to add bb agent subcommand\\n- Import src/lib/agent-mail.ts, agent-registry.ts, agent-reservations.ts\\n- Port command routing and printResponse formatting from tools/bb.ts\\n\\n**Out of Scope**:\\n- Changes to the lib implementations\\n- Frontend routes\\n\\n## IMPLEMENTATION CONSTRAINTS\\n- Use the audit from izs.1 to understand beadboard-cli.ts structure before modifying\\n- Port tools/bb.ts agent command routing exactly — do not redesign the API surface\\n- Must work on Windows, WSL, and Linux\\n\\n## VERIFICATION REQUIREMENTS\\n- npm run build or equivalent passes\\n- bb agent list returns empty list (no crash) from a fresh test run\\n- bb agent register --name test-coord --role test succeeds then bb agent show --agent test-coord returns record\",\"status\":\"in_progress\",\"priority\":1,\"issue_type\":\"task\",\"assignee\":\"beadboard-2i2\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-04T01:56:04Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-04T02:17:03Z\"}"}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:26:00Z","event_type":"closed","id":1055,"issue_id":"beadboard-izs.2","new_value":"Exposed bb agent coordination command surface through global beadboard CLI with JSON/human output parity and verified command flows.","old_value":""}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:26:23Z","event_type":"closed","id":1056,"issue_id":"beadboard-izs.5","new_value":"bb-mail-shim.mjs created; session-preflight.mjs updated with mail delegate auto-config; bd mail send/inbox/read/ack pipeline verified end-to-end via BB_AGENT=silver-scribe. Delegate configured via bd config set mail.delegate.","old_value":""}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:26:24Z","event_type":"closed","id":1057,"issue_id":"beadboard-izs.2","new_value":"Already implemented — global bb CLI at /home/zenchant/.npm-global/bin/bb already exposes full bb agent command surface (register/list/show/activity-lease/send/inbox/read/ack/reserve/release/status). Verified via bb agent --help and live end-to-end test.","old_value":""}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:26:29Z","event_type":"updated","id":1058,"issue_id":"bb-silver-scribe","new_value":"{\"agent_state\":\"done\",\"last_activity\":\"2026-03-03T18:26:29.967950883-08:00\"}","old_value":"{\"id\":\"bb-silver-scribe\",\"title\":\"Agent: silver-scribe\",\"status\":\"open\",\"priority\":0,\"issue_type\":\"task\",\"created_at\":\"2026-03-04T02:18:26Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-04T02:18:29Z\",\"agent_state\":\"working\",\"last_activity\":\"2026-03-04T02:18:29Z\"}"}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:26:30Z","event_type":"closed","id":1059,"issue_id":"bb-silver-scribe","new_value":"{\"status\":\"closed\"}","old_value":"{\"id\":\"bb-silver-scribe\",\"title\":\"Agent: silver-scribe\",\"status\":\"open\",\"priority\":0,\"issue_type\":\"task\",\"created_at\":\"2026-03-04T02:18:26Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-04T02:26:30Z\",\"agent_state\":\"done\",\"last_activity\":\"2026-03-04T02:26:30Z\"}"}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:26:43Z","event_type":"status_changed","id":1060,"issue_id":"beadboard-izs.3","new_value":"{\"assignee\":\"beadboard-2i2\",\"status\":\"in_progress\"}","old_value":"{\"id\":\"beadboard-izs.3\",\"title\":\"bb coord: frontend API routes (/api/agents/mail + /api/agents/reservations)\",\"description\":\"## TASK CONTEXT\\nBeadBoard's dashboard needs to display agent coordination data. The libs in src/lib/agent-*.ts have all the business logic; they just need Next.js API routes to expose them to the browser. The API contract is defined in izs.1.\\n\\n## TASK CONTRACT\\n**Goal**: Create Next.js API routes for agent mail and reservations that the frontend can call.\\n\\n**Success Criteria**:\\n- GET /api/agents/mail?agent=\\u003cid\\u003e\\u0026state=\\u003cunread|read|acked\\u003e returns inbox messages\\n- POST /api/agents/mail body {from, to, bead, category, subject, body, thread?} creates message\\n- POST /api/agents/mail/read body {agent, message} marks as read\\n- POST /api/agents/mail/ack body {agent, message} acknowledges message\\n- GET /api/agents/reservations?agent=\\u003cid\\u003e returns active reservations + unacked_required_messages\\n- Error shape matches existing routes: {ok: false, error: {code, message}}\\n- npm run typecheck passes\\n\\n**Scope**:\\n- New files: src/app/api/agents/mail/route.ts, src/app/api/agents/reservations/route.ts\\n- Import and call src/lib/agent-mail.ts and src/lib/agent-reservations.ts functions\\n\\n**Out of Scope**:\\n- Frontend UI (izs.4)\\n- SSE streaming for mail\\n- Auth beyond existing patterns in the codebase\\n\\n## IMPLEMENTATION CONSTRAINTS\\n- Read existing routes in src/app/api/beads/ and src/app/api/agents/ for patterns before writing\\n- Use NextResponse for all responses\\n- Check izs.1 audit for confirmed API contract before implementing\\n\\n## VERIFICATION REQUIREMENTS\\n- npm run typecheck clean\\n- curl localhost:3000/api/agents/mail?agent=nonexistent returns {ok: false, error: {code: \\\"AGENT_NOT_FOUND\\\", ...}}\\n- npm run lint clean\",\"status\":\"open\",\"priority\":1,\"issue_type\":\"task\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-04T01:56:10Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-04T01:56:10Z\"}"}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:31:59Z","event_type":"updated","id":1061,"issue_id":"beadboard-izs.3","new_value":"{\"notes\":\"Implemented agent coordination API routes: src/app/api/agents/mail/route.ts and src/app/api/agents/reservations/route.ts with NextResponse JSON envelopes and normalized error shape {ok:false,error:{code,message}}. Added compatibility endpoints src/app/api/agents/mail/read/route.ts and src/app/api/agents/mail/ack/route.ts. Added route contract tests in tests/api/agents-mail.test.ts (missing-agent and validation flows). Verification evidence: node --import tsx --test tests/api/agents-mail.test.ts (4/4 pass); npm run typecheck (pass); npm run lint (exit 0, warnings only). Memory review: no new reusable memory.\"}","old_value":"{\"id\":\"beadboard-izs.3\",\"title\":\"bb coord: frontend API routes (/api/agents/mail + /api/agents/reservations)\",\"description\":\"## TASK CONTEXT\\nBeadBoard's dashboard needs to display agent coordination data. The libs in src/lib/agent-*.ts have all the business logic; they just need Next.js API routes to expose them to the browser. The API contract is defined in izs.1.\\n\\n## TASK CONTRACT\\n**Goal**: Create Next.js API routes for agent mail and reservations that the frontend can call.\\n\\n**Success Criteria**:\\n- GET /api/agents/mail?agent=\\u003cid\\u003e\\u0026state=\\u003cunread|read|acked\\u003e returns inbox messages\\n- POST /api/agents/mail body {from, to, bead, category, subject, body, thread?} creates message\\n- POST /api/agents/mail/read body {agent, message} marks as read\\n- POST /api/agents/mail/ack body {agent, message} acknowledges message\\n- GET /api/agents/reservations?agent=\\u003cid\\u003e returns active reservations + unacked_required_messages\\n- Error shape matches existing routes: {ok: false, error: {code, message}}\\n- npm run typecheck passes\\n\\n**Scope**:\\n- New files: src/app/api/agents/mail/route.ts, src/app/api/agents/reservations/route.ts\\n- Import and call src/lib/agent-mail.ts and src/lib/agent-reservations.ts functions\\n\\n**Out of Scope**:\\n- Frontend UI (izs.4)\\n- SSE streaming for mail\\n- Auth beyond existing patterns in the codebase\\n\\n## IMPLEMENTATION CONSTRAINTS\\n- Read existing routes in src/app/api/beads/ and src/app/api/agents/ for patterns before writing\\n- Use NextResponse for all responses\\n- Check izs.1 audit for confirmed API contract before implementing\\n\\n## VERIFICATION REQUIREMENTS\\n- npm run typecheck clean\\n- curl localhost:3000/api/agents/mail?agent=nonexistent returns {ok: false, error: {code: \\\"AGENT_NOT_FOUND\\\", ...}}\\n- npm run lint clean\",\"status\":\"in_progress\",\"priority\":1,\"issue_type\":\"task\",\"assignee\":\"beadboard-2i2\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-04T01:56:10Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-04T02:26:44Z\"}"}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:31:59Z","event_type":"closed","id":1062,"issue_id":"beadboard-izs.3","new_value":"Added /api/agents/mail and /api/agents/reservations routes with read/ack compatibility endpoints and validated response contracts.","old_value":""}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:32:20Z","event_type":"reopened","id":1063,"issue_id":"beadboard-izs.5","new_value":"{\"assignee\":\"beadboard-2i2\",\"status\":\"in_progress\"}","old_value":"{\"id\":\"beadboard-izs.5\",\"title\":\"bb coord: bd mail delegate configuration + session-preflight wiring\",\"description\":\"## TASK CONTEXT\\nbd mail is designed as a delegate — it shells out to a configured external provider via BEADS_MAIL_DELEGATE env var or bd config set mail.delegate. The bb CLI (now with bb agent send/inbox via izs.2) is the natural delegate for BeadBoard environments. This task wires bd mail → bb agent so agents using bd mail transparently use the BeadBoard coordination stack.\\n\\n## TASK CONTRACT\\n**Goal**: Configure bd mail to delegate to bb agent commands so the session-preflight script automatically sets up mail routing.\\n\\n**Success Criteria**:\\n- bd config set mail.delegate bb (or equivalent) documented and working\\n- .agents/skills/beadboard-driver/scripts/session-preflight.mjs runs the delegate config command on startup\\n- bd mail send --to foo --bead x --subject y --body z routes through bb agent send\\n- Fallback: if bb not installed, bd mail fails with helpful error (not silent failure)\\n- help/cli/bd_help.txt mail section read and delegate mechanism confirmed before implementing\\n\\n**Scope**:\\n- Update session-preflight.mjs to configure bd mail delegate\\n- Read help/cli/bd_help.txt to confirm exact bd mail delegate config syntax\\n- Document delegate config in bd comment on izs.5\\n\\n**Out of Scope**:\\n- Changes to bd internals\\n- Building an alternate mail system\\n- project.template.md update (tracked in maf.9)\\n\\n## IMPLEMENTATION CONSTRAINTS\\n- Read help/cli/bd_help.txt mail section BEFORE configuring — do not assume flag names\\n- Check BEADS_MAIL_DELEGATE env var as alternative to bd config\\n\\n## VERIFICATION REQUIREMENTS\\n- node scripts/session-preflight.mjs completes without error\\n- bd mail send routes to bb after preflight runs\\n- bd mail without bb installed produces useful error\",\"status\":\"closed\",\"priority\":1,\"issue_type\":\"task\",\"assignee\":\"silver-scribe\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-04T01:56:13Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-04T02:26:24Z\",\"closed_at\":\"2026-03-04T02:26:24Z\",\"close_reason\":\"bb-mail-shim.mjs created; session-preflight.mjs updated with mail delegate auto-config; bd mail send/inbox/read/ack pipeline verified end-to-end via BB_AGENT=silver-scribe. Delegate configured via bd config set mail.delegate.\"}"}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:35:18Z","event_type":"updated","id":1064,"issue_id":"beadboard-izs.5","new_value":"{\"notes\":\"Implemented delegate wiring in skills/beadboard-driver/scripts/session-preflight.mjs and added skills/beadboard-driver/scripts/bb-mail-shim.mjs translating bd mail inbox/send/read/ack into bb agent commands. Added tests: tests/skills/beadboard-driver/session-preflight.test.ts and tests/skills/beadboard-driver/bb-mail-shim.test.ts. Verification evidence: node --import tsx --test tests/skills/beadboard-driver/session-preflight.test.ts tests/skills/beadboard-driver/bb-mail-shim.test.ts (3/3 pass); node skills/beadboard-driver/scripts/session-preflight.mjs (ok true, mail.configured=true); integration check with fake bb: bd mail inbox invoked bb args 'agent inbox --agent silver-scribe'; PATH=/usr/bin:/bin BB_AGENT=silver-scribe node skills/beadboard-driver/scripts/bb-mail-shim.mjs inbox -\\u003e 'bb command not found in PATH'. Memory review: no new reusable memory.\"}","old_value":"{\"id\":\"beadboard-izs.5\",\"title\":\"bb coord: bd mail delegate configuration + session-preflight wiring\",\"description\":\"## TASK CONTEXT\\nbd mail is designed as a delegate — it shells out to a configured external provider via BEADS_MAIL_DELEGATE env var or bd config set mail.delegate. The bb CLI (now with bb agent send/inbox via izs.2) is the natural delegate for BeadBoard environments. This task wires bd mail → bb agent so agents using bd mail transparently use the BeadBoard coordination stack.\\n\\n## TASK CONTRACT\\n**Goal**: Configure bd mail to delegate to bb agent commands so the session-preflight script automatically sets up mail routing.\\n\\n**Success Criteria**:\\n- bd config set mail.delegate bb (or equivalent) documented and working\\n- .agents/skills/beadboard-driver/scripts/session-preflight.mjs runs the delegate config command on startup\\n- bd mail send --to foo --bead x --subject y --body z routes through bb agent send\\n- Fallback: if bb not installed, bd mail fails with helpful error (not silent failure)\\n- help/cli/bd_help.txt mail section read and delegate mechanism confirmed before implementing\\n\\n**Scope**:\\n- Update session-preflight.mjs to configure bd mail delegate\\n- Read help/cli/bd_help.txt to confirm exact bd mail delegate config syntax\\n- Document delegate config in bd comment on izs.5\\n\\n**Out of Scope**:\\n- Changes to bd internals\\n- Building an alternate mail system\\n- project.template.md update (tracked in maf.9)\\n\\n## IMPLEMENTATION CONSTRAINTS\\n- Read help/cli/bd_help.txt mail section BEFORE configuring — do not assume flag names\\n- Check BEADS_MAIL_DELEGATE env var as alternative to bd config\\n\\n## VERIFICATION REQUIREMENTS\\n- node scripts/session-preflight.mjs completes without error\\n- bd mail send routes to bb after preflight runs\\n- bd mail without bb installed produces useful error\",\"status\":\"in_progress\",\"priority\":1,\"issue_type\":\"task\",\"assignee\":\"beadboard-2i2\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-04T01:56:13Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-04T02:32:21Z\"}"}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:35:22Z","event_type":"closed","id":1065,"issue_id":"beadboard-izs.5","new_value":"Configured bd mail delegate via session preflight and added bb mail shim with verified routing and fallback error behavior.","old_value":""}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:35:41Z","event_type":"status_changed","id":1066,"issue_id":"beadboard-izs.4","new_value":"{\"assignee\":\"beadboard-2i2\",\"status\":\"in_progress\"}","old_value":"{\"id\":\"beadboard-izs.4\",\"title\":\"bb coord: frontend UI — agent mail inbox + reservation badges\",\"description\":\"## TASK CONTEXT\\nThe Social lens and Activity panel in UnifiedShell need to surface agent coordination state: unread message count per agent, HANDOFF/BLOCKED urgency badges, and active reservation scope labels. This makes BeadBoard the primary coordination dashboard for multi-agent sessions.\\n\\n## TASK CONTRACT\\n**Goal**: Add agent mail and reservation visibility to the Social and Activity views in the BeadBoard dashboard.\\n\\n**Success Criteria**:\\n- Agent cards in Social view show unread message count badge (fetched from /api/agents/mail)\\n- HANDOFF/BLOCKED messages show amber/red badge (urgent); INFO/DECISION show neutral\\n- Clicking badge shows inline message list with subject, body, category, state, from_agent\\n- Ack button on HANDOFF/BLOCKED messages (calls POST /api/agents/mail/ack)\\n- Activity panel shows recent coordination events (sends, acks) in telemetry feed\\n- Agent card shows active reservation scope as label (from /api/agents/reservations)\\n- npm run typecheck and npm run lint pass\\n\\n**Scope**:\\n- Update src/components/social/ (agent card or social-page.tsx)\\n- Update src/components/activity/activity-panel.tsx for coordination events\\n- Fetch from API routes created in izs.3\\n\\n**Out of Scope**:\\n- Composing new messages from UI (read/ack only in v1)\\n- SSE live push for mail — polling with SWR or manual refresh is fine\\n- New npm dependencies\\n\\n## IMPLEMENTATION CONSTRAINTS\\n- Use existing shadcn/ui primitives from components/ui/\\n- Follow Tailwind patterns from src/components/social/social-page.tsx\\n- AgentAvatar component at src/components/shared/agent-avatar.tsx is the anchor for badges\\n- Check CLAUDE.md: src/components/shared/unified-shell.tsx is the root layout — understand view structure before modifying\\n\\n## VERIFICATION REQUIREMENTS\\n- npm run typecheck \\u0026\\u0026 npm run lint pass\\n- Dev server: agent cards show message badge when unread messages exist in ~/.beadboard/agent/messages/\\n- HANDOFF category badge is visually distinct from INFO\",\"status\":\"open\",\"priority\":1,\"issue_type\":\"task\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-04T01:56:11Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-04T01:56:11Z\"}"}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:41:26Z","event_type":"updated","id":1067,"issue_id":"beadboard-izs.4","new_value":"{\"notes\":\"Implemented coordination UI in Social/Activity surfaces. Social: src/components/social/social-page.tsx now polls /api/agents/mail and /api/agents/reservations per visible agent, computes unread badges and reservation labels, and wires ack action via /api/agents/mail/ack. SocialCard: src/components/social/social-card.tsx now renders per-agent unread badges, reservation scope chips, inline message list (subject/body/category/state/from_agent), and Ack button for requires_ack categories. Activity: src/components/activity/activity-panel.tsx now augments telemetry with coordination events (coord_send/coord_ack derived from mail API) and displays reservation scope chips per agent card. Verification evidence: npm run typecheck (pass); npm run lint (exit 0, warnings only). Manual-browser verification not run in this session. Memory review: no new reusable memory.\"}","old_value":"{\"id\":\"beadboard-izs.4\",\"title\":\"bb coord: frontend UI — agent mail inbox + reservation badges\",\"description\":\"## TASK CONTEXT\\nThe Social lens and Activity panel in UnifiedShell need to surface agent coordination state: unread message count per agent, HANDOFF/BLOCKED urgency badges, and active reservation scope labels. This makes BeadBoard the primary coordination dashboard for multi-agent sessions.\\n\\n## TASK CONTRACT\\n**Goal**: Add agent mail and reservation visibility to the Social and Activity views in the BeadBoard dashboard.\\n\\n**Success Criteria**:\\n- Agent cards in Social view show unread message count badge (fetched from /api/agents/mail)\\n- HANDOFF/BLOCKED messages show amber/red badge (urgent); INFO/DECISION show neutral\\n- Clicking badge shows inline message list with subject, body, category, state, from_agent\\n- Ack button on HANDOFF/BLOCKED messages (calls POST /api/agents/mail/ack)\\n- Activity panel shows recent coordination events (sends, acks) in telemetry feed\\n- Agent card shows active reservation scope as label (from /api/agents/reservations)\\n- npm run typecheck and npm run lint pass\\n\\n**Scope**:\\n- Update src/components/social/ (agent card or social-page.tsx)\\n- Update src/components/activity/activity-panel.tsx for coordination events\\n- Fetch from API routes created in izs.3\\n\\n**Out of Scope**:\\n- Composing new messages from UI (read/ack only in v1)\\n- SSE live push for mail — polling with SWR or manual refresh is fine\\n- New npm dependencies\\n\\n## IMPLEMENTATION CONSTRAINTS\\n- Use existing shadcn/ui primitives from components/ui/\\n- Follow Tailwind patterns from src/components/social/social-page.tsx\\n- AgentAvatar component at src/components/shared/agent-avatar.tsx is the anchor for badges\\n- Check CLAUDE.md: src/components/shared/unified-shell.tsx is the root layout — understand view structure before modifying\\n\\n## VERIFICATION REQUIREMENTS\\n- npm run typecheck \\u0026\\u0026 npm run lint pass\\n- Dev server: agent cards show message badge when unread messages exist in ~/.beadboard/agent/messages/\\n- HANDOFF category badge is visually distinct from INFO\",\"status\":\"in_progress\",\"priority\":1,\"issue_type\":\"task\",\"assignee\":\"beadboard-2i2\",\"owner\":\"jordanlive121@gmail.com\",\"created_at\":\"2026-03-04T01:56:11Z\",\"created_by\":\"ZenchantLive\",\"updated_at\":\"2026-03-04T02:35:42Z\"}"}
|
||||
{"actor":"ZenchantLive","comment":null,"created_at":"2026-03-03T18:41:26Z","event_type":"closed","id":1068,"issue_id":"beadboard-izs.4","new_value":"Added Social/Activity coordination badges, inline inbox visibility, ack actions, and reservation labels using new agent APIs.","old_value":""}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue