Commit graph

37 commits

Author SHA1 Message Date
zenchantlive
5d2e147ca9 chore: create orchestrator backlog — 4 epics, 27 beads
Epic 1: Core Reliability (P0) — beadboard-0cf
  9 children: chat projection, persistence, async subprocess, context mgmt,
  integration tests, + existing bugs (sen, 4v7, 28z, bnx)

Epic 2: Orchestrator UX (P1) — beadboard-1zb
  9 children: onboarding, plan visibility, BLOCKED notification, graph launch,
  chat expand, stop/restart, retry, settings, + silent failures (cho)

Epic 3: Agent Visibility (P1) — beadboard-7gx
  3 children: activity detail, graph presence, direct worker communication

Epic 4: Dolt History Integration (P2) — beadboard-6rp
  6 children: session replay, rollback, session history, review surface,
  audit trail, cost visibility

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-25 20:19:52 -05:00
zenchantlive
f29c0e3cba feat: add CONTRIBUTING.md, GitHub Issue templates, contrib:open label convention
CONTRIBUTING.md:
- Two tracks: humans (GitHub flow) and agents (beadboard-driver + bd)
- Copy-pasteable agent instructions for quick setup
- PR size guidelines (under 100 lines preferred, 200+ needs issue first)
- Quality gates, claim workflow, professional conduct expectations
- beadboard-driver and bd setup for agent contributors

GitHub Issue templates:
- Bug report: structured fields (steps, platform, Dolt status, versions)
- Feature request: problem/proposal/area, opt-in to implement
- Config: links to Discord and contrib:open issue filter

contrib:open labels:
- Tagged 4 orchestrator beads for community contribution
- Left session race condition (beadboard-4v7) as internal

README:
- Updated banner to link to CONTRIBUTING.md
- Updated Contributing section with Discord link and contrib:open workflow

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-25 00:23:05 -05:00
zenchantlive
203203fb9f chore: track orchestrator bugs as beads (WIP)
Created beads for known orchestrator issues discovered during Mac onboarding:
- beadboard-sen: double-reply rendering
- beadboard-cho: silent failures in UX
- beadboard-4v7: session race condition
- beadboard-bnx: clawdbot path cleanup
- beadboard-28z: unbounded event array

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 19:03:29 -05:00
zenchantlive
5c074935d7 fix: repair beads database for macOS — remove stale Dolt port, fix comment ID types
- Remove deprecated dolt_server_port from metadata.json (stale Windows value causing auto-start suppression)
- Convert numeric comment IDs to strings in issues.jsonl (bd 0.61.0 schema requirement)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 19:02:45 -05:00
zenchantlive
5f6e5b610a beads back 2026-03-24 19:02:04 -05:00
zenchantlive
7c4c5f46f3 chore: Remove runtime artifacts from git tracking
This commit removes the following directories from git tracking (not from disk):
- .agent/ - AI tool configs
- .agents/ - Agent skills
- .augment/ - Augment AI
- .beads/ - Runtime database
- .claude/ - Claude AI configs
- .cline/ - Cline AI configs
- .openhands/ - OpenHands AI
- .dolt/ - Dolt database

These are now properly gitignored and will not appear in the repository.
This is a MASSIVE cleanup removing 1500+ files from version control.
2026-03-05 17:25:09 -08:00
zenchantlive
bba34a144e sync beads 2026-02-17 12:59:37 -08:00
zenchantlive
c74a4098e7 refactor: BaseCard hard style shadow, SocialCard blocking lists, AgentAvatar ZFC states 2026-02-16 22:41:56 -08:00
zenchantlive
54729c72f6 initial commit for beadboard 2026-02-16 21:45:27 -08:00
zenchantlive
3298fbd336 fix: wire handleCardSelect to SocialPage and SwarmPage 2026-02-16 11:26:06 -08:00
zenchantlive
f6c5398f0c fix(bb-ui2): integrate ThreadView into detail panels with sample data
- Wired ThreadView component into SocialDetail and SwarmDetail
- Added sample thread items for demo purposes
- Removed thread placeholders

Beads: bb-ui2.13 closed
2026-02-16 10:10:50 -08:00
zenchantlive
8dd2d01686 feat(bb-ui2): Social and Swarm views with detail panels integrated 2026-02-16 00:26:31 -08:00
zenchantlive
083e710388 chore: update beads and page for unified shell
- Backed up old page.tsx to page-old.tsx
- Updated page.tsx to use UnifiedShell
- Beads updated: bb-ui2.27, bb-ui2.28 closed; new agent beads created
2026-02-15 23:21:40 -08:00
zenchantlive
539e6e7021 feat(graph): integrate WorkflowGraph into unified shell
- Create GraphView component with Flow/Overview tab switcher
- Wire GraphView into UnifiedShell when view=graph
- Connect taskId URL param to selectedId for node selection
- Connect graphTab URL param for tab state persistence
- ReactFlow renders in middle panel with proper layout

Closes bb-ui2.20
2026-02-15 23:12:16 -08:00
zenchantlive
4ee550c333 feat(telemetry): complete bb-buff.1.3 - Backend Liveness Refactor
STORY:
The session backend needed to aggregate agent health from a live
telemetry stream rather than static bead metadata. This refactor
makes liveness signals real-time and accurate.

COLLABORATION:
We extended the ActivityEvent model with a native 'heartbeat' kind,
updated extendActivityLease() to emit through the activity bus, and
refactored getAgentLivenessMap() to prioritize heartbeat activity
history over stale bead metadata.

DELIVERABLES:
- ActivityEvent extended with 'heartbeat' kind
- extendActivityLease() emits heartbeats through activity bus
- getAgentLivenessMap() prefers telemetry over static metadata
- Registry APIs support projectRoot injection for testing
- Tests verify preference logic via TDD

VERIFICATION:
- 93/93 tests PASSING
- Heartbeat override verified in isolated temp projects

CLOSES: bb-buff.1.3
BLOCKS: bb-buff.3.2, bb-buff.3.3, bb-buff.2.1
2026-02-15 21:14:05 -08:00
zenchantlive
0016b57e37 fix(protocol): implement Identity Isolation to prevent task pollution
Research revealed that agent identities (consolidated to bd beads) were appearing in standard task lists because the data-access layer lacked identity-awareness.
- Refactored read-issues.ts and parser.ts to explicitly exclude beads labeled 'gt:agent' from standard mission flows.
- Verified that agent personas remain targetable by the registry but are invisible to Kanban/Graph/Sessions.
- Added Characterization Test: identity-isolation.test.ts.

This restores the 'War Room' clarity by separating Operatives from Missions.

OPERATIVE: silver-castle
SESSION: 2026-02-14-1630
2026-02-14 13:29:28 -08:00
zenchantlive
eec1d6e28f feat(protocol): deliver 'War Room' UI with Incursion Engine
We've transformed the Social-Dense Hub into a high-fidelity operational surface.
- BACKEND: Implemented Global Incursion Engine in agent-sessions.ts (N^2 overlap detection) and added the 60m 'Idle' state.
- API: Enriched the sessions payload with full metadata and active conflict arrays.
- HEADER: Delivered 4-state agent stations (Active/Stale/Evicted/Idle) with real-time 'time-ago' timers.
- FEED: Implemented the 'Fire Map' visuals:
  * Global Incursion Ticker: High-visibility alerts for agent collisions.
  * Local Conflict Badges: Pulsing pills on affected task cards.
- Refactored components for React-static compliance and strict TypeScript safety.

This commit completes the visibility track, allowing the human supervisor to monitor agent presence and friction in real-time.

OPERATIVE: silver-castle
SESSION: 2026-02-14-1430
2026-02-14 11:36:32 -08:00
zenchantlive
e010e0b10b feat(protocol): deliver Activity Lease model (Zero Background Workers)
Following a critical collaboration to resolve Windows terminal pop-ups, we've delivered a more robust 'Passive Activity' architecture:
- Terminology Pivot: Renamed 'Heartbeat' to 'Activity Lease' (Parking Permit model).
- Side-Effect Extension: tools/bb.ts now automatically extends the agent's lease whenever they perform real work (any CLI command).
- Passive Handshake: bb-init.mjs now only performs an initial registration/lease start, with no background loops.
- 100% Silence: Removed all background process spawning, ensuring zero terminal disruption on Windows.
- High Observability: Liveness is still tracked via the 15m threshold, but relies on activity rather than periodic pings.

OPERATIVE: silver-castle
SESSION: 2026-02-14-1330
2026-02-14 11:18:40 -08:00
zenchantlive
5b9c0aa6a3 feat(protocol): pivot to Passive Heartbeat for Windows stability
The previous background loop approach was disruptive on Windows (terminal pop-ups).
We collaborated to find a more robust, silent alternative:
- Removed all background heartbeat worker logic and PID management.
- Implemented 'Passive Heartbeat' in tools/bb.ts: every agent command now refreshes liveness as a side-effect.
- Updated bb-init.mjs to use explicit heartbeat calls for adoption/registration.
- Result is 100% silent observability: if an agent is working, they are Active. If they stop, they drift to Stale.

OPERATIVE: silver-castle
SESSION: 2026-02-14-1300
2026-02-14 11:06:10 -08:00
zenchantlive
965d11c0b9 feat(protocol): wire session aggregation and API with liveness
Finalizing the backend engine for the Operative Protocol.
- Updated agent-sessions.ts to use the deriveLiveness logic and the 15m protocol threshold.
- Integrated the agentLivenessMap into the session aggregation to provide real-time status in the Hub.
- Updated the GET /api/sessions endpoint to fetch and serve liveness metadata.
- Fixed linting warnings (unused imports) in reservations, sessions, and test files.

This commit completes the backend contract for bb-u6f.6.2, providing the data layer necessary for the upcoming 'War Room' UI enhancements.

OPERATIVE: silver-castle
SESSION: 2026-02-14-1145
2026-02-14 10:43:02 -08:00
zenchantlive
41f7cb8f24 feat(protocol): implement core backend engine for Operative Protocol
Our collaboration led to a rigorous 'Session Constitution' where we prioritized observability and concurrency safety.
I've delivered the first four pillars of the backend engine:
1. Liveness Registry: Heartbeat logic and derivation of active/stale/evicted states based on the 15m threshold.
2. Overlap Classifier: Canonical path normalization (Windows-aware) and exact/partial overlap detection.
3. Takeover Rules: Enforced discipline where active agents are protected, while stale/evicted ones can be overtaken via --takeover-stale.
4. Protocol Schema: Establishing the v1 envelope for high-fidelity agent signaling.

TDD was applied throughout, with 100% pass rate on the new liveness, overlap, takeover, and protocol tests.
2026-02-14 10:38:10 -08:00
zenchantlive
ab051952bd feat(logic): establish derived-activity engine and agent-session protocols
Today we reached a major architectural conclusion: project history shouldn't be stored, it should be derived. We rejected the overhead of a separate SQLite event store in favor of an O(N) snapshot-diffing engine that computes human-readable narratives directly from the issues.jsonl source of truth.

Key Triumphs:
- Implemented O(N) diffing algorithm in src/lib/snapshot-differ.ts that transforms raw JSONL into 16 distinct social event types.
- Engineered a file-based persistence layer (src/lib/activity-persistence.ts) to solve the 'Next.js HMR Wiped My Memory' bug, ensuring project heartbeat survives server restarts.
- Developed the agent-session data model that unifies Beads, Activity, and Cross-Agent Mail into a single 'Mission' context.

Raw Honest Moment:
We struggled for over an hour with 'missing history' before realizing that development-mode reloads were purging our in-memory buffers. The shift to a file-backed ring buffer was a reactive pivot that became a core project strength.
2026-02-14 00:19:59 -08:00
zenchantlive
4f8f3006e9 fix: always enable SSE auto-refresh on kanban page
Previously SSE was only enabled in single project mode (allowMutations).
Now auto-refresh works in all modes including aggregate.
2026-02-13 14:51:31 -08:00
zenchantlive
e6317594b6 ui: unify aero chrome surfaces and shared hero across kanban/graph 2026-02-13 12:17:57 -08:00
zenchantlive
75bf72435d fix(runtime): resolve white-screen parse regressions and harden checklist/realtime keying 2026-02-13 00:07:38 -08:00
zenchantlive
422453c155 Merge branch 'master' of https://github.com/zenchantlive/beadboard 2026-02-12 23:57:23 -08:00
zenchantlive
6e1b20e961 docs: Rewrite README with strong feature highlights and multi-project capabilities (bb-18e) 2026-02-12 23:57:20 -08:00
zenchantlive
34171b91eb
Update .beads/issues.jsonl
Co-authored-by: qodo-free-for-open-source-projects[bot] <189517486+qodo-free-for-open-source-projects[bot]@users.noreply.github.com>
2026-02-12 23:54:23 -08:00
zenchantlive
8490cb1d8c feat(graph): Implement Graph View with Dagre Layout and Epic Scope (bb-18e) 2026-02-12 23:36:41 -08:00
zenchantlive
3f2ae384f5 Add realtime watcher+SSE transport with tests and lock-retry read path 2026-02-11 21:05:27 -08:00
zenchantlive
cc616c1543 Add optimistic writeback flow with kanban drag-drop transitions 2026-02-11 19:59:55 -08:00
zenchantlive
2c80265258 Add bd exec bridge and mutation API routes with tests 2026-02-11 19:46:02 -08:00
zenchantlive
0e3815ac3c docs: add project context model design 2026-02-11 19:38:19 -08:00
zenchantlive
75cc86e259 feat: harden kanban responsiveness and visual system 2026-02-11 19:01:34 -08:00
zenchantlive
ce2010fd92 feat: establish tokenized kanban design foundation 2026-02-11 18:38:51 -08:00
zenchantlive
7537ec27b0 chore: set parallel agent dispatch and tracer ownership 2026-02-11 17:44:41 -08:00
zenchantlive
292a72f861 chore: initialize beadboard baseline 2026-02-11 17:42:51 -08:00