fix(10): resolve GET /source-config 404 shadowed by :id route
The admin source-config settings form failed to load with "Failed to
fetch tender-radar source config". Network trace showed
GET /modules/tender-radar/source-config returning 404.
Root cause: NestJS RouterExplorer maps routes in method-declaration
order. `@Get(':id')` was declared before `@Get('source-config')`, so
the param route captured "source-config" as an id and shadowed the
static handler (401 unauthenticated, 404 past the guard — no Tender
with id "source-config").
Fix: declare `@Get('source-config')` before `@Get(':id')`. Add a
declaration-order regression test — unit tests call controller methods
directly, bypass routing, and could never catch route shadowing.
Verified live: settings form now loads real config, interval save
persists and live-re-registers the scheduler (INGEST-06). Phase 10
verification raised human_needed -> passed after full browser UAT.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
+7
-7
@@ -4,17 +4,17 @@ milestone: v1.1
|
||||
milestone_name: Ausschreibungs-Radar
|
||||
current_phase: 10
|
||||
current_phase_name: ausschreibungs-radar-foundation-d-e-ingestion
|
||||
status: verifying
|
||||
stopped_at: Completed 10-06-PLAN.md
|
||||
last_updated: "2026-07-21T09:27:21.391Z"
|
||||
status: verified
|
||||
stopped_at: Phase 10 verified (live UAT passed; route-order bug fixed)
|
||||
last_updated: "2026-07-21T12:44:00Z"
|
||||
last_activity: 2026-07-21
|
||||
last_activity_desc: Phase 10 execution started
|
||||
last_activity_desc: Phase 10 live browser UAT passed; GET /source-config route-order bug fixed + regression test
|
||||
progress:
|
||||
total_phases: 14
|
||||
completed_phases: 9
|
||||
completed_phases: 10
|
||||
total_plans: 46
|
||||
completed_plans: 45
|
||||
percent: 64
|
||||
completed_plans: 46
|
||||
percent: 71
|
||||
---
|
||||
|
||||
# Project State
|
||||
|
||||
Reference in New Issue
Block a user