Commit Graph

1973 Commits

Author SHA1 Message Date
gsxdsm
e722330964 feat(FN-1755): merge fusion/fn-1755 2026-04-14 10:59:04 -07:00
gsxdsm
8c798952c4 feat(FN-1746): merge fusion/fn-1746 2026-04-14 10:58:57 -07:00
gsxdsm
9e19ee1aa0 feat(FN-1697): merge fusion/fn-1697 2026-04-14 10:58:51 -07:00
gsxdsm
08f42b366d Merge branch 'fusion/fn-1690' into main
- Add roadmap schema migration v32 with covering indexes for roadmapItems table
- Implement RoadmapStore with CRUD and deterministic ordering
- Wire RoadmapStore access via TaskStore.getRoadmapStore()
- Update architecture.md with RoadmapStore persistence docs
- Fix pre-existing test failures in SettingsModal and store tests
2026-04-14 10:56:12 -07:00
gsxdsm
4067f85454 feat(FN-1740): merge fusion/fn-1740 2026-04-14 10:43:59 -07:00
gsxdsm
d12f8d6de7 feat(FN-1688): merge fusion/fn-1688 2026-04-14 10:43:51 -07:00
gsxdsm
dfb514f8ed fix(FN-1690): update test expectations for experimentalFeatures merge behavior
- Fix store.test.ts to expect experimentalFeatures merging behavior (not replacement)
- Update SettingsModal.test.tsx nav item count from 14 to 15 for Experimental Features section
- Note: RoadmapStore implementation was already merged to main via previous squash
2026-04-14 10:42:02 -07:00
gsxdsm
ebb830218c fix(FN-1685): fix pre-existing test expectation for experimentalFeatures merge behavior 2026-04-14 10:29:37 -07:00
gsxdsm
4e33f55b23 feat(FN-1739): merge fusion/fn-1739 2026-04-14 10:29:21 -07:00
gsxdsm
bb2fa6f579 feat(FN-1738): merge fusion/fn-1738 2026-04-14 10:28:51 -07:00
gsxdsm
54befbe021 feat(FN-1724): merge fusion/fn-1724 2026-04-14 10:14:47 -07:00
gsxdsm
0dffdec04c feat(FN-1660): merge fusion/fn-1660 2026-04-14 10:13:53 -07:00
gsxdsm
6e8bf267a7 feat(FN-1655): merge fusion/fn-1655 2026-04-14 09:59:00 -07:00
gsxdsm
9ef6cecf75 feat(FN-1513): merge fusion/fn-1513 2026-04-14 09:58:51 -07:00
gsxdsm
d8982d5336 feat(FN-1690): add RoadmapStore with SQLite persistence
- Implement RoadmapStore with CRUD operations for roadmaps, milestones, and features
- Add roadmap schema migration v32 with roadmaps, roadmap_milestones, and roadmap_features tables
- Add covering indexes for deterministic ordering within roadmaps and milestones
- Wire RoadmapStore access via TaskStore.getRoadmapStore()
- Update architecture.md documentation with RoadmapStore persistence
- Add comprehensive tests for RoadmapStore CRUD and ordering
- Update db.test.ts with schema v32 assertions
- Add UpdateInput type imports to task-documents.test.ts
- Export RoadmapStore from core index.ts
2026-04-14 09:57:09 -07:00
gsxdsm
7857b9660b feat(FN-1514): add regression tests for skillSelection across executor, step-session, and triage
- Add executor skillSelection regression tests covering model override resolution
- Add step-session skillSelection tests for per-step agent creation
- Add triage skillSelection tests for spec generation with projectRootDir
- Verify skillSelection context propagation across all execution paths
2026-04-14 09:51:12 -07:00
gsxdsm
3e2731a0c3 feat(FN-1513): add skill selection resolver for deterministic session skills
- Add skill selection resolver for deterministic session skill sets
- Wire skill override into createKbAgent via AgentOptions
- Export skill resolver types and functions from engine index
- Add regression tests for skill override wiring and resolver fallback semantics
- Apply skill selection to triage and executor sessions
- Apply skill selection to reviewer, merger, and heartbeat sessions
- Fix SessionSkillContextInput to use AgentStore instead of TaskStore
- Add session-skill-context helper for unified skill selection across all session types
- Update memory with skill resolver diagnostics distinction
2026-04-14 09:47:06 -07:00
gsxdsm
ec2ad95a1c fix(store.test.ts): fix experimentalFeatures test to match replacement semantics 2026-04-14 09:45:11 -07:00
gsxdsm
94a5e8e805 feat(FN-1735): merge fusion/fn-1735 2026-04-14 09:44:52 -07:00
gsxdsm
6e0b30f4dd feat(FN-1651): merge fusion/fn-1651 2026-04-14 09:43:50 -07:00
gsxdsm
93fd380227 feat(FN-1727): add core regression for title summarization under saturated-slot settings 2026-04-14 09:43:49 -07:00
gsxdsm
db040e92c4 feat(FN-1727): add engine regression for heartbeat execution under saturated task lanes 2026-04-14 09:41:20 -07:00
gsxdsm
9ce75b227f feat(FN-1524): add POST /routines/:id/trigger endpoint
- Add POST /routines/:id/trigger as canonical endpoint for manual routine triggers
- Keep POST /routines/:id/run as backward-compatible alias with identical behavior
- Remove duplicate recordRun calls from routine route handlers (persistence handled by RoutineRunner.completeRoutineExecution)
- Update webhook auth to return 401 instead of 403 for missing/invalid signature headers
- Add comprehensive tests for /trigger endpoint and double-persist fix
2026-04-14 09:39:06 -07:00
gsxdsm
4f23883bac feat(FN-1734): merge fusion/fn-1734 2026-04-14 09:29:08 -07:00
gsxdsm
e6becfa41b feat(FN-1658): merge fusion/fn-1658 2026-04-14 09:29:02 -07:00
gsxdsm
687d594b3c feat(FN-1648): merge fusion/fn-1648 2026-04-14 09:28:57 -07:00
gsxdsm
7bd6f37932 feat(FN-1515): merge fusion/fn-1515 2026-04-14 09:28:50 -07:00
gsxdsm
bc74460340 feat(FN-1524): add POST /routines/:id/trigger endpoint
- Add POST /routines/:id/trigger as canonical endpoint for manual routine triggers
- Keep POST /routines/:id/run as backward-compatible alias
- Remove duplicate recordRun calls from routine route handlers (persistence handled by RoutineRunner)
- Update webhook auth to return 401 instead of 403 for signature failures
- Fix TypeScript types for promptOverrides to support null values (delete semantics)
- Fix API endpoint to return empty diff stats when worktree doesn't exist
2026-04-14 09:28:05 -07:00
gsxdsm
8e44096e07 fix(FN-1513): fix SessionSkillContextInput to use AgentStore instead of TaskStore 2026-04-14 09:03:43 -07:00
gsxdsm
817f5eae90 feat(FN-1513): track excluded skill paths and improve skill resolver diagnostics
- Add excludedSkillPaths to SkillSelectionResult to track skills disabled by - patterns
- Update createSkillsOverrideFromSelection to filter out excluded skills
- Produce warning diagnostics for disabled skills that exist but were excluded
- Add tests for excluded paths tracking and deterministic output order
- Update memory documentation with skill resolver diagnostics distinction
- Fix pi-create-kb-agent test to include excludedSkillPaths in selection mock
2026-04-14 08:56:06 -07:00
gsxdsm
07b8030400 feat(FN-1639): merge fusion/fn-1639 2026-04-14 08:43:59 -07:00
gsxdsm
f95afa129f feat(FN-1498): merge fusion/fn-1498 2026-04-14 08:43:51 -07:00
gsxdsm
b6c26d308b feat(FN-1513): regression tests for skill override wiring and resolver fallback semantics
- Added excludedSkillPaths to SkillSelectionResult for tracking explicitly
  disabled skill paths from -prefix patterns
- Extended createSkillsOverrideFromSelection to distinguish disabled
  skills (exist but excluded) from missing skills (not found)
- Added regression tests:
  - Excluded skill paths tracking in resolveSessionSkills
  - Disabled vs missing skill diagnostics distinction
  - Deterministic ordering verification
  - Skills override wiring in createKbAgent
- Updated existing tests to use new interface
2026-04-14 08:41:37 -07:00
gsxdsm
203948cca9 feat(FN-1511): add skill selection resolver for deterministic session skills
- Add SkillSelectionResolver and SkillSelectionContext for deterministic skill sets
- Implement skill-resolver.ts with request/filter/resolve workflow
- Add session-skill-context.ts helper for unified skill selection across all session types
- Wire skill override into createKbAgent via AgentOptions
- Apply skill selection to triage, executor, reviewer, merger, and heartbeat sessions
- Add comprehensive tests for skill-resolver and session-skill-context
- Export skill resolver types and functions from engine index
- Add skill selection resolver pattern to memory documentation
2026-04-14 08:40:21 -07:00
gsxdsm
383995a434 feat(FN-1511): apply skill selection to reviewer, merger, and heartbeat sessions 2026-04-14 08:24:18 -07:00
gsxdsm
4e217e493d feat(FN-1511): apply skill selection to triage and executor sessions 2026-04-14 08:20:22 -07:00
gsxdsm
78190897be feat(FN-1618): merge fusion/fn-1618 2026-04-14 08:14:28 -07:00
gsxdsm
6667fd93c2 feat(FN-1530): merge fusion/fn-1530 2026-04-14 08:14:19 -07:00
gsxdsm
ad363d8441 feat(FN-1510): merge fusion/fn-1510 2026-04-14 08:13:53 -07:00
gsxdsm
271f3f7c16 feat(FN-1745): scope WebSocket channels to project context for multi-project support
- Scope /api/tasks/:id/logs/stream SSE endpoint to resolved project context
- Make badge WebSocket/pubsub channels project-aware using scopeKey
- Fix terminal WebSocket project/service resolution with auth middleware
- Add cross-instance badge broadcast via BadgePubSub with projectId metadata
- Update AGENTS.md documentation for badge WebSocket project-scoping
- Add tests for project-scoped WebSocket and SSE endpoints
- Add tests for project detection in WebSocket upgrade handling
2026-04-14 08:13:25 -07:00
gsxdsm
0944fff7ba feat(FN-1511): add session-skill-context helper for unified skill selection 2026-04-14 08:12:47 -07:00
gsxdsm
7849ec2a51 docs(FN-1510): add skill selection resolver pattern to memory 2026-04-14 08:02:09 -07:00
gsxdsm
38d859e843 fix(FN-1554): return empty diff when worktree is missing or nonexistent
- Return empty diff instead of 500 error when worktree path is null, undefined, or doesn't exist on disk
- Add 9 tests covering null worktree, undefined worktree, nonexistent paths, and valid paths
- Fixes dashboard crash on diff tab for in-progress tasks with missing worktrees
2026-04-14 08:00:47 -07:00
gsxdsm
0afb5eb31d feat(FN-1510): add skill resolver and createKbAgent override tests 2026-04-14 07:59:58 -07:00
gsxdsm
5eaf7374af feat(FN-1638): add plugin manager UI redesign and clear triage status on todo
- Restructure PluginManager detail view with card-based layout
- Add mobile responsive styles with adaptive grid
- Add desktop CSS with card-based grid design
- Clear triage status when task moves to todo
- Add changeset for plugin settings design
2026-04-14 07:51:33 -07:00
gsxdsm
c6f9d8fc66 feat(FN-1510): export skill resolver types and functions from engine index 2026-04-14 07:49:17 -07:00
gsxdsm
43a7e2b933 feat(FN-1510): wire skill override into createKbAgent via AgentOptions 2026-04-14 07:48:58 -07:00
gsxdsm
d564f57db8 feat(FN-1510): add skill selection resolver for deterministic session skill sets 2026-04-14 07:48:13 -07:00
gsxdsm
1341c606f7 fix triage handoff state 2026-04-14 07:42:45 -07:00
gsxdsm
b48c95cb1c fix(engine): clear stale specifying statuses on triage processor startup
After a process crash or restart, tasks retain "specifying" status in the
database but no agent is actually running. These stale statuses consume
concurrency slots, blocking all new triage work. Added a startup sweep
that clears orphaned "specifying" statuses, mirroring the existing
merge status cleanup.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-14 00:11:37 -07:00