/app/ticketing/settings returns 404 (route ordering bug) #2

Closed
opened 2026-04-09 21:28:17 -07:00 by jwed · 0 comments
Owner

Steps to Reproduce

  1. Log in
  2. Navigate to /app/ticketing/settings

Expected

Settings page loads (200)

Actual

HTTP 404 — the /{ticket} wildcard route captures /settings as a ticket ID before the settings route can match

Root Cause

In src/routes/ticketing.php the settings routes are registered inside a permission:ticketing.settings group, but Laravel evaluates routes in declaration order. The GET /{ticket} wildcard (registered earlier in a different group) matches /settings first, looks for a ticket with ID/slug "settings", finds nothing, and returns 404.

Fix

Register all specific paths (/settings, /create) before the /{ticket} wildcard route.

Found by QA runner — happy-path suite

## Steps to Reproduce 1. Log in 2. Navigate to `/app/ticketing/settings` ## Expected Settings page loads (200) ## Actual HTTP 404 — the `/{ticket}` wildcard route captures `/settings` as a ticket ID before the settings route can match ## Root Cause In `src/routes/ticketing.php` the settings routes are registered inside a `permission:ticketing.settings` group, but Laravel evaluates routes in declaration order. The `GET /{ticket}` wildcard (registered earlier in a different group) matches `/settings` first, looks for a ticket with ID/slug "settings", finds nothing, and returns 404. ## Fix Register all specific paths (`/settings`, `/create`) before the `/{ticket}` wildcard route. *Found by QA runner — happy-path suite*
jwed closed this issue 2026-04-09 21:31:52 -07:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: jwed/dashboard-ticketing#2