Commit graph

25 commits

Author SHA1 Message Date
zenchantlive
1c4b5ab401 Cleanup: Runtime artifacts, hard-coded paths, PR 14 bug fixes 2026-03-05 15:57:33 -08:00
zenchantlive
18fbafdce4 refactor: extract agent bounded context + fix SSE comments + cleanup unused
- Extract src/lib/agent/ bounded context with types, registry, messaging
- Add comments_count to BeadIssue for SSE comment detection
- Create batch endpoints for mail/reservations APIs
- Add memory validation to session-preflight
- Remove unused empty dirs (mockup, sessions, timeline)
- Move stashes to docs/references, gitignore them
2026-03-04 22:06:40 -08:00
zenchantlive
c13b5226d3 fix(skill): add Bootstrap section, Conventions with {baseDir}, complete doc map; skip bb-mail test on Windows 2026-03-04 15:53:54 -08:00
ZenchantLive
3006698002 docs(skill): rewrite beadboard-driver entrypoint for v5 2026-03-03 19:25:57 -08:00
ZenchantLive
60415ccf58 docs(skill): expand project template for v5 coordination 2026-03-03 19:24:34 -08:00
ZenchantLive
003aba3179 test(skill): add bb mail lifecycle and preflight coverage 2026-03-03 19:23:53 -08:00
ZenchantLive
1880301e8b docs(skill): refresh command matrix and failure modes 2026-03-03 19:08:58 -08:00
ZenchantLive
53648852a3 docs(skill): rewrite coordination events and ack protocol 2026-03-03 19:04:58 -08:00
ZenchantLive
a4de66a164 fix(skill): support linux and wsl bb discovery 2026-03-03 19:03:47 -08:00
ZenchantLive
d94654d425 docs(driver-v5): expand session lifecycle workflow (maf.4) 2026-03-03 18:57:51 -08:00
ZenchantLive
645f66a734 docs(driver-v5): rewrite swarm reference with real commands (maf.3) 2026-03-03 18:57:16 -08:00
ZenchantLive
801389e87c docs(driver-v5): expand memory protocol reference (maf.2) 2026-03-03 18:56:37 -08:00
ZenchantLive
8476889644 docs(driver-v5): add agent state and liveness reference (maf.1) 2026-03-03 18:55:58 -08:00
ZenchantLive
ca5507228d docs(skill): add coordination system reference 2026-03-03 18:49:20 -08:00
ZenchantLive
d1b81250b2 feat(skill): wire bd mail delegate via bb shim 2026-03-03 18:35:29 -08:00
ZenchantLive
b5db7a7753 checkpoint: pre-split branch cleanup 2026-03-03 16:43:42 -08:00
ZenchantLive
8df567c327 feat(driver): prefer npm-global remediation with installer fallback 2026-03-02 20:45:09 -08:00
openhands
a8079813b8 Merge origin/main into feature/assign-archetypes-to-tasks-ui
Resolved conflicts:
- .gitignore: kept both bd.sock.startlock and .beadboard/ entries
- package.json: kept feature branch test script (explicit enumeration)
- API routes: kept dynamic export + isValidProjectRoot from main
- globals.css: kept HEAD slideInFromRight animation
- use-beads-subscription.ts: kept HEAD onopen handler
- realtime.ts: kept main console.log in emit()
- snapshot-differ.ts: kept main type-aware dependency diff

Blue colors preserved from feature branch.
2026-02-26 18:50:18 +00:00
zenchantlive
a03def1ca1 chore: checkpoint before DAG views UX overhaul 2026-02-22 20:43:59 -08:00
ZenchantLive
14a50ad4ae docs+skills: add main UI/UX visual-truth PRD and skill links 2026-02-18 12:50:53 -08:00
openhands
e74606da37 Merge main into recovery/corruption-incident-and-ui2-work
Fix merge conflicts intelligently:
- package.json: Use main's test script pattern (tests/guards/*.test.mjs && tests/**/*.test.ts)
- src/app/api/events/route.ts: Merge polling logic with telemetry event emission
- src/hooks/use-beads-subscription.ts: Merge event type handling (issues/telemetry/activity)

All changes preserve the new telemetry-based architecture while accepting
main's improved test coverage patterns.
2026-02-16 06:50:09 +00: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
openhands
05357580ae Fix path traversal validation and mutation sanitization
- Fix isValidProjectRoot() in 4 API routes to properly prevent path traversal
  by using path.relative() to ensure paths stay within allowed base directory
  (replaces ineffective normalized.includes('..') check)

- Fix readiness-report.mjs to remove misleading path traversal validation
  that was ineffective after path.resolve() removes '..' segments

- Fix asNonEmptyString() in mutations.ts to only remove control characters
  while preserving backslashes (for Windows paths) and punctuation (for user text)

These changes address security review comments about ineffective path traversal
checks and mutation input corruption.
2026-02-14 17:57:12 +00:00
openhands
e46062b4f5 fix: address critical security and stability issues
- Fix path traversal vulnerabilities in API route validation functions
- Fix path traversal in readiness-report.mjs artifact validation
- Add file locking to prevent race conditions in agent-reservations.ts
- Fix event ordering in ActivityEventBus by capturing snapshot before modification
- Fix memory leaks in watcher.ts by explicitly removing chokidar listeners
- Add command injection sanitization in mutations.ts

Co-authored-by: openhands <openhands@all-hands.dev>
2026-02-14 16:36:27 +00:00
zenchantlive
1ae7efb31b feat(skills): formalize agent coordination via beadboard-driver
We moved from ad-hoc task claims to a strictly defined 'Skill' system.

Triumphs:
- Implemented the 'beadboard-driver' skill, which encodes our project-specific coordination protocols (claim, reservation, handoff).
- This ensures that any AI operative (or human supervisor) can participate in the project lifecycle using a unified CLI-driven state machine.
- Decoupled high-level mission logic from low-level file mutations, allowing for easier agent skill composition in the future.

Raw Honest Moment:
Initially, we were just 'winging it' with manual status updates. Formalizing this into a skill was a necessary step to ensure our collaboration is repeatable and resilient to agent context swaps.
2026-02-14 00:23:41 -08:00