d18cf44546
fix(api): lazy-load node-pty to prevent API crash when native binary is missing
...
node-pty requires a compiled native addon (.node binary) that may not
be available in all Docker environments. The eager import crashed the
entire API at startup. Changed to dynamic import() in onModuleInit()
so the service degrades gracefully — terminal sessions are disabled
but all other API functionality works.
Also added explicit node-gyp rebuild to Dockerfile deps stage since
pnpm may skip postinstall scripts for native addons.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-26 07:44:47 -06:00
d05b870f08
fix(api): add build tools for node-pty native compilation in Docker ( #524 )
...
ci/woodpecker/push/api Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-26 13:24:34 +00:00
1aaf5618ce
docs: close out MS19 Chat & Terminal System mission ( #523 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-26 04:21:38 +00:00
9b2520ce1f
feat(web): add agent output terminal tabs for orchestrator sessions ( #522 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-26 04:04:26 +00:00
b110c469c4
feat(web): add orchestrator command system in chat interface ( #521 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-26 03:39:00 +00:00
859dcfc4b7
feat(web): implement multi-session terminal tab management ( #520 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-26 03:18:35 +00:00
13aa52aa53
feat(web): polish master chat with model selector, params config, and empty state ( #519 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-26 03:17:23 +00:00
417c6ab49c
feat(web): integrate xterm.js with WebSocket terminal backend ( #518 )
...
ci/woodpecker/push/orchestrator Pipeline was successful
ci/woodpecker/push/api Pipeline was successful
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-26 02:55:53 +00:00
8128eb7fbe
feat(api): add terminal session persistence with Prisma model and CRUD ( #517 )
...
ci/woodpecker/push/api Pipeline failed
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-26 02:49:32 +00:00
7de0e734b0
feat(web): implement SSE chat streaming with real-time token rendering ( #516 )
...
ci/woodpecker/push/web Pipeline failed
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-26 02:39:43 +00:00
6290fc3d53
feat(api): add terminal WebSocket gateway with PTY session management ( #515 )
...
ci/woodpecker/push/web Pipeline failed
ci/woodpecker/push/orchestrator Pipeline failed
ci/woodpecker/push/api Pipeline failed
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-26 02:27:29 +00:00
9f4de1682f
fix(api): resolve CSRF guard ordering with global AuthGuard ( #514 )
...
ci/woodpecker/push/api Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-26 02:26:02 +00:00
374ca7ace3
docs: initialize MS19 Chat & Terminal mission planning ( #513 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-26 01:49:40 +00:00
72c64d2eeb
fix(api): add global /api prefix to resolve frontend route mismatch ( #507 )
...
ci/woodpecker/push/orchestrator Pipeline was successful
ci/woodpecker/push/api Pipeline was successful
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-26 01:13:48 +00:00
5f6c520a98
fix(auth): prevent login page freeze on OAuth sign-in failure ( #506 )
...
ci/woodpecker/push/api Pipeline was successful
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-25 01:59:36 +00:00
9a7673bea2
docs: close out MS18 Theme & Widget System mission ( #505 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-24 03:01:54 +00:00
91934b9933
docs: update mission artifacts for MS18 completion ( #504 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-24 02:29:06 +00:00
7f89682946
test(web): add unit tests for MS18 components ( #503 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-24 02:23:05 +00:00
8b4c565f20
feat(web): add kanban board filtering with URL param persistence ( #502 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-24 02:09:37 +00:00
d5ecc0b107
feat(web): add markdown round-trip and replace textarea with Tiptap ( #501 )
...
ci/woodpecker/push/orchestrator Pipeline was successful
ci/woodpecker/push/api Pipeline was successful
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-24 01:40:34 +00:00
a81c4a5edd
feat(web): add Tiptap WYSIWYG KnowledgeEditor component ( #500 )
...
ci/woodpecker/push/orchestrator Pipeline was successful
ci/woodpecker/push/api Pipeline was successful
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-24 01:23:57 +00:00
ff5a09c3fb
feat(web): add widget config dialog and layout management controls ( #499 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-24 01:11:47 +00:00
f93fa60fff
feat(web): add widget picker drawer for dashboard customization ( #498 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-24 00:59:45 +00:00
cc56f2cbe1
feat(web): migrate dashboard to WidgetGrid with layout persistence ( #497 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-24 00:50:24 +00:00
f9cccd6965
feat(api): seed 7 widget definitions for dashboard system ( #496 )
...
ci/woodpecker/push/api Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-24 00:28:02 +00:00
90c3bbccdf
feat(web): add theme selection UI in Settings > Appearance ( #495 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 14:18:16 +00:00
79286e98c6
feat(web): upgrade ThemeProvider for multi-theme registry ( #494 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 14:09:10 +00:00
cfd1def4a9
feat(web): add theme definition system with 5 built-in themes ( #493 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 13:59:01 +00:00
f435d8e8c6
docs: initialize MS18 Theme & Widget System mission ( #492 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 13:36:10 +00:00
3d78b09064
docs: close out MS16+MS17 mission ( #486 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 13:27:22 +00:00
a7955b9b32
docs: mark MS16+MS17 milestone complete ( #485 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 13:16:38 +00:00
372cc100cc
docs: update PRD statuses and mission artifacts for MS16+MS17 ( #484 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 05:09:04 +00:00
37cf813b88
fix(web): update calendar and knowledge tests for real API integration ( #483 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 05:04:55 +00:00
3d5b50af11
feat(web): add profile page with user info and preferences ( #482 )
...
ci/woodpecker/push/web Pipeline failed
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 04:50:44 +00:00
f30c2f790c
feat(web): add file manager page with list/grid views ( #481 )
...
ci/woodpecker/push/web Pipeline failed
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 04:39:19 +00:00
05b1a93ccb
feat(web): add logs and telemetry page with filtering and auto-refresh ( #480 )
...
ci/woodpecker/push/web Pipeline failed
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 04:38:15 +00:00
a78a8b88e1
feat(web): add project workspace page with tasks and agent sessions ( #479 )
...
ci/woodpecker/push/web Pipeline failed
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 04:29:39 +00:00
172ed1d40f
feat(web): add kanban board page with drag-and-drop ( #478 )
...
ci/woodpecker/push/web Pipeline failed
ci/woodpecker/push/orchestrator Pipeline was successful
ci/woodpecker/push/api Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 04:26:25 +00:00
ee2ddfc8b8
feat(web): add projects page with CRUD operations ( #477 )
...
ci/woodpecker/push/web Pipeline failed
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 04:13:26 +00:00
5a6d00a064
feat(web): wire knowledge pages to real API data ( #476 )
...
ci/woodpecker/push/web Pipeline failed
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 04:12:14 +00:00
ffda74ec12
test(web): update tasks page tests for real API integration ( #475 )
...
ci/woodpecker/push/web Pipeline failed
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 03:59:56 +00:00
f97be2e6a3
feat(web): wire calendar page to real API data ( #474 )
...
ci/woodpecker/push/web Pipeline failed
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 03:51:15 +00:00
97606713b5
feat(web): wire tasks page to real API data ( #473 )
...
ci/woodpecker/push/web Pipeline failed
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 03:51:08 +00:00
d0c720e6da
feat(web): add custom 404 pages for global and authenticated routes ( #472 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 03:43:55 +00:00
64e817cfb8
feat(web): add settings root index page with category cards ( #471 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 03:42:01 +00:00
cd5c2218c8
chore(orchestrator): bootstrap MS16+MS17 planning ( #470 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 03:29:53 +00:00
f643d2bc04
docs: mark mission complete (MS-P4-003) ( #465 )
...
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 02:11:13 +00:00
8957904ea9
Phase 4: Deploy + Smoke Test ( #463 ) ( #464 )
...
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 02:09:43 +00:00
458cac7cdd
Phase 3: Agent Cycle Visibility ( #461 ) ( #462 )
...
ci/woodpecker/push/api Pipeline was successful
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 01:07:29 +00:00
7581d26567
Phase 2: Task Ingestion Pipeline ( #459 ) ( #460 )
...
ci/woodpecker/push/api Pipeline was successful
ci/woodpecker/push/web Pipeline was successful
Co-authored-by: Jason Woltje <jason@diversecanvas.com >
Co-committed-by: Jason Woltje <jason@diversecanvas.com >
2026-02-23 00:54:55 +00:00