Commit graph

8 commits

Author SHA1 Message Date
ZenchantLive
003aba3179 test(skill): add bb mail lifecycle and preflight coverage 2026-03-03 19:23:53 -08:00
ZenchantLive
a4de66a164 fix(skill): support linux and wsl bb discovery 2026-03-03 19:03:47 -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
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