gsxdsm
0044c23c64
FN-5699: fix github-copilot device-code login callback handling
Prevent dashboard auth initiation from crashing when Copilot emits device-code callbacks.
- wire optional auth callbacks (`onDeviceCode`, `onSelect`) through dashboard auth route typing
- capture and return device-code payload from either `onDeviceCode` or parsed Copilot instructions when `/api/auth/login` starts
- guard auth-init promise settlement to avoid double resolve/reject races and normalize async login errors
- add regression coverage for Copilot device-code callback handling in auth route tests
- sync roadmap plugin schema-version test expectation from 94 to 95 to keep suite assertions aligned
Files changed:
.changeset/fn-5699-copilot-device-code-callback.md | 5 ++
packages/dashboard/src/__tests__/routes-auth.test.ts | 21 ++++++++
packages/dashboard/src/routes.ts | 7 +++
packages/dashboard/src/routes/register-auth-routes.ts | 62 +++++++++++++++++-----
plugins/fusion-plugin-roadmap/src/store/__tests__/roadmap-store.test.ts | 4 +-
5 files changed, 83 insertions(+), 16 deletions(-)
Fusion-Task-Id: FN-5699
Fusion-Task-Lineage: 24bf59f2-3b22-4087-96ca-35409fe00895
2026-05-29 11:22:27 -07:00
..
2026-05-29 11:22:27 -07:00
2026-05-29 11:22:27 -07:00
2026-05-01 05:04:05 -07:00
2026-04-26 15:00:10 -07:00
2026-04-26 15:16:22 -07:00
2026-05-07 11:25:01 -07:00
2026-04-26 15:16:22 -07:00
2026-05-12 19:38:39 -07:00
2026-04-28 14:25:55 -07:00
2026-05-16 22:26:42 -07:00
2026-04-29 20:15:05 -07:00
2026-05-26 21:38:25 -07:00
2026-05-28 21:23:48 -07:00
2026-04-27 22:17:54 -07:00
2026-04-29 22:37:52 -07:00
2026-05-19 17:19:02 -07:00
2026-05-05 00:31:36 -07:00
2026-05-05 00:21:21 -07:00
2026-05-07 17:24:11 -07:00
2026-04-28 18:21:17 -07:00
2026-05-14 04:42:32 -07:00
2026-05-11 16:33:16 -07:00
2026-04-26 18:11:09 -07:00
2026-05-28 19:49:31 -07:00
2026-05-20 04:41:04 -07:00
2026-05-16 12:56:31 -07:00
2026-05-18 04:01:51 -07:00
2026-05-28 19:49:31 -07:00
2026-05-28 19:49:31 -07:00
2026-05-18 04:01:51 -07:00
2026-05-20 01:27:22 -07:00
2026-05-28 10:32:16 -07:00
2026-05-28 19:49:31 -07:00
2026-05-18 14:46:20 -07:00
2026-05-18 14:46:20 -07:00
2026-05-04 10:18:38 -07:00
2026-05-15 11:47:03 -07:00
2026-05-19 18:26:18 -07:00
2026-05-28 23:58:47 -07:00
2026-05-28 21:23:48 -07:00
2026-05-19 18:21:35 -07:00
2026-05-10 15:33:24 -07:00
2026-05-18 00:47:08 -07:00
2026-05-16 10:31:44 -07:00
2026-05-17 23:21:34 -07:00
2026-04-30 20:10:52 -07:00
2026-05-06 18:40:52 -07:00
2026-05-11 06:47:43 -07:00
2026-05-11 06:47:43 -07:00
2026-05-29 11:22:27 -07:00
2026-05-07 04:17:52 -07:00
2026-05-23 06:06:51 -07:00
2026-05-04 07:14:37 -07:00
2026-05-19 08:13:06 -07:00
2026-05-07 16:03:25 -07:00
2026-05-02 13:32:09 -07:00
2026-04-26 13:55:25 -07:00
2026-04-29 07:10:52 -07:00
2026-05-17 00:22:57 -07:00
2026-05-17 09:24:28 -07:00