spaxel/mothership/internal
jedarden 2c8bbcf646
Some checks are pending
CI Benchmark - Fusion Loop Timing / Fusion Loop Timing Benchmark (push) Waiting to run
fix(fleet): remove duplicate route registration to prevent chi panic
- Remove duplicate node-specific routes (role, label, locate, delete) from
  FleetHandler.RegisterRoutes to avoid chi panic on duplicate registration
- Keep only unique FleetHandler routes: /api/fleet/health, /api/fleet/history,
  /api/fleet/optimise, /api/fleet/simulate
- Add startup smoke test TestRouteRegistrationNoPanic to verify both Handler
  and FleetHandler can be registered on same router without panic

main.go registers both fleet.NewHandler and fleet.NewFleetHandler on the
same router, which previously caused chi to panic due to duplicate routes:
  POST /api/nodes/{mac}/role
  PATCH /api/nodes/{mac}/label
  POST /api/nodes/{mac}/locate
  DELETE /api/nodes/{mac}

The Handler has comprehensive node/room/mode endpoints while FleetHandler
focuses on health/optimization/simulation, so duplicates are removed from
FleetHandler.

Closes: bf-3o15x
2026-05-24 09:47:54 -04:00
..
analytics test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
apdetector test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
api simulator: fix GDOP overlay and shopping list JSON output 2026-05-05 23:34:43 -04:00
auth test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 07:38:16 -04:00
automation test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
autoupdate ota: minor fixes to auto-update integration 2026-05-05 12:27:18 -04:00
ble Remove unused findLinksForZone function causing build error 2026-05-06 09:58:25 -04:00
briefing test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
config feat(onboarding): migration window, Unpaired badge, re-provision flow 2026-04-24 18:46:47 -04:00
dashboard feat(replay): implement time-travel debugging with parameter tuning 2026-05-05 18:33:37 -04:00
db api: complete GET /api/portals/:id/crossings endpoint 2026-05-05 15:30:08 -04:00
diagnostics ci: fix golangci-lint issues to enable static analysis gate 2026-05-05 02:38:32 -04:00
doctor api: add GET /api/doctor endpoint for pre-flight configuration diagnostics 2026-05-05 11:48:07 -04:00
eventbus feat: implement repeated-setting change detection with guided calibration flow 2026-05-04 00:21:38 -04:00
events test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
explainability test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
falldetect fix: remove unused imports and variables in falldetect/detector.go 2026-04-06 18:47:11 -04:00
fleet fix(fleet): remove duplicate route registration to prevent chi panic 2026-05-24 09:47:54 -04:00
floorplan test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
fusion test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
guidedtroubleshoot fix: resolve all test and vet failures across mothership packages 2026-04-15 18:38:35 -04:00
health test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
help test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
ingestion Implement TX slot collision detection and adaptive re-stagger 2026-05-06 08:28:24 -04:00
learning test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
loadshed feat: extract evaluate() from EndIteration for testable load shedding state machine 2026-04-09 05:59:54 -04:00
localization test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
localizer/fusion test: add CI benchmark gate for fusion loop timing budget 2026-05-04 06:34:50 -04:00
mqtt Remove unused findLinksForZone function causing build error 2026-05-06 09:58:25 -04:00
notifications test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
notify test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
ota ota: implement auto-update with canary strategy and quiet window 2026-05-05 11:48:07 -04:00
oui test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
prediction test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
provisioning feat(provisioning): carry ms_ip in payload for mDNS-less networks 2026-04-24 01:06:05 -04:00
recorder test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
recording test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
render test: enhance floor-plan renderer tests with precise coordinate and color verification 2026-04-11 04:29:13 -04:00
replay test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
shutdown test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
signal Remove unused findLinksForZone function causing build error 2026-05-06 09:58:25 -04:00
simulator simulator: fix GDOP overlay and shopping list JSON output 2026-05-05 23:11:26 -04:00
sleep test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
startup feat: startup phase sequencing with 30s timeout enforcement 2026-04-07 12:40:25 -04:00
timeline test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
tracker feat: complete anomaly detection & security mode dashboard UI 2026-04-09 05:59:54 -04:00
tracking feat: complete anomaly detection & security mode dashboard UI 2026-04-07 15:50:25 -04:00
volume test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
webhook test: implement acceptance scenario integration tests (AS-1 through AS-6) 2026-05-05 05:45:15 -04:00
zones Remove unused findLinksForZone function causing build error 2026-05-06 09:58:25 -04:00