Fusion
87d9c1c380
feat(FN-2925): merge fusion/fn-2925
- Mobile header row polish: finalize QuickChatFAB CSS for mobile viewport handling, apply visual viewport height to quick chat panel, remove duplicate keyboard overlap subtraction
- Add `node-routing-policy.ts` with routing logic for mesh network nodes; expand scheduler node-routing tests with new policy coverage
- Improve reviewer decision logic and add reviewer test cases for changed behavior
- Refactor triage module (48 lines changed) with updated agent selection logic
- Update `AgentsView` component and styles; add `AgentsView.test.tsx` integration test
- Simplify `QuickChatFAB.test.tsx` test by removing CSS class permutation coverage
- Update architecture docs and settings reference to reflect new routing capabilities
Commits merged:
- fix(FN-2925): remove duplicate keyboard overlap subtraction
- feat(FN-2925): complete Step 5 — finalize mobile header row polish
- fix(FN-2925): apply visual viewport height to mobile quick chat panel
- feat(FN-2903): merge fusion/fn-2903
- feat(FN-2950): merge fusion/fn-2950
Files changed:
docs/architecture.md | 19 +--
docs/settings-reference.md | 2 +-
packages/dashboard/app/components/AgentsView.css | 20 +++-
packages/dashboard/app/components/AgentsView.tsx | 11 +-
packages/dashboard/app/components/QuickChatFAB.css | 32 ++++-
.../dashboard/app/components/SettingsModal.tsx | 4 +-
.../app/components/__tests__/AgentsView.test.tsx | 37 ++++++
.../app/components/__tests__/QuickChatFAB.test.tsx | 18 +--
.../src/__tests__/node-routing-policy.test.ts | 78 ++++++++++++
packages/engine/src/__tests__/reviewer.test.ts | 19 ++-
.../src/__tests__/scheduler-node-routing.test.ts | 131 ++++++++++++++++++++-
packages/engine/src/__tests__/triage.test.ts | 16 +--
packages/engine/src/node-routing-policy.ts | 45 +++++++
packages/engine/src/reviewer.ts | 33 ++++--
packages/engine/src/scheduler.ts | 44 ++++++-
packages/engine/src/triage.ts | 48 ++++----
16 files changed, 473 insertions(+), 84 deletions(-)
Fusion-Task-Id: FN-2925
2026-04-29 12:53:10 -07:00
..
2026-04-29 12:17:18 -07:00
2026-04-24 19:39:20 -07:00
2026-04-28 14:25:56 -07:00
2026-04-29 12:53:10 -07:00
2026-04-29 07:10:52 -07:00
2026-04-28 14:25:56 -07:00
2026-04-19 10:13:34 -07:00
2026-04-19 20:48:14 -07:00
2026-04-23 23:02:35 -07:00
2026-04-29 11:26:39 -07:00
2026-04-29 11:26:39 -07:00
2026-04-24 08:54:25 -07:00
2026-04-16 21:42:16 -07:00
2026-04-29 11:26:39 -07:00
2026-04-10 03:02:38 -07:00
2026-04-28 18:21:17 -07:00
2026-04-28 14:25:55 -07:00
2026-04-29 11:26:39 -07:00
2026-04-28 14:25:55 -07:00
2026-04-29 07:35:23 -07:00
2026-04-28 14:25:56 -07:00
2026-04-26 12:45:05 -07:00
2026-04-29 09:54:54 -07:00
2026-04-23 23:02:35 -07:00
2026-04-26 16:14:35 -07:00
2026-04-13 17:14:06 -07:00
2026-04-07 22:56:09 -07:00
2026-04-29 12:17:18 -07:00
2026-04-28 14:25:56 -07:00
2026-04-23 23:02:35 -07:00
2026-04-29 11:26:39 -07:00
2026-04-22 13:57:10 -07:00
2026-04-04 00:29:34 -07:00
2026-04-23 14:11:04 -07:00
2026-04-23 14:11:04 -07:00
2026-04-15 19:53:22 -07:00
2026-04-29 11:26:39 -07:00
2026-04-16 21:42:16 -07:00
2026-04-12 19:59:12 -07:00
2026-04-23 23:02:35 -07:00
2026-04-03 07:58:45 -07:00
2026-04-29 12:17:18 -07:00
2026-04-27 08:33:03 -07:00
2026-04-15 16:32:16 -07:00
2026-04-15 02:20:39 -07:00
2026-04-28 14:25:55 -07:00
2026-04-29 12:17:18 -07:00
2026-04-29 11:26:39 -07:00
2026-04-25 13:21:02 -07:00
2026-04-27 04:51:29 -07:00
2026-04-27 08:33:03 -07:00
2026-04-25 13:21:02 -07:00
2026-04-26 12:45:05 -07:00
2026-04-27 05:13:59 -07:00
2026-04-27 17:26:01 -07:00
2026-04-12 15:13:27 -07:00
2026-04-05 22:50:03 -07:00
2026-04-22 00:43:08 -07:00
2026-04-29 12:17:18 -07:00
2026-04-23 23:02:35 -07:00
2026-04-05 20:56:58 -07:00
2026-04-26 22:20:17 -07:00