Admin Venues section โ
- Status: BUILT and pushed 2026-08-28 on
feat/admin-and-merchant-portals, across four slices plus four changes the operator directed live. Not merged; she reviews the branch on 2026-08-29. - Issue:
#985: feat(admin/venues): Venues becomes a real section with sub nav, drawer editing, metrics and filters - Launch plan: UNDECIDED. No
ALPHA.mdrow was found for admin venue management; see "Which launch plan row is this?" below. - Test plan:
docs/engineering/testing/runs/admin-venues-section/README.md, filled from a live pass. Scenario 13, the falsifying one, was run and passed. - Captures:
screenshots/live/(live, signed in) andscreenshots/(Storybook). - Harness:
harness/control-walk.e2e.mjs, re-runnable.
What is this? โ
Admin Venues stops being one page and becomes a section, modelled on Users. โ
- The operator named the comparison herself on 2026-08-28: "each venue should be clickable vs having an 'edit' button, similar to how the admin users page behaves", and "ideally that venue list also has 4 core metrics at the top, similar to users", and "we add filtering similar to users".
- So this is not a fresh design.
UserManagement.jsxis the reference implementation and the shapes come from it.
What is there now? โ
One route, one page, one form, and the configuration living somewhere else. โ
| Piece | Where it is | What it does |
|---|---|---|
| The list | /admin/venues to VenuesPage.jsx | A table. No sub nav, no metric strip, no filters |
| Editing | A separate page to VenueForm.jsx | Reached by an explicit Edit button, navigating away from the list |
| Configuration | /admin/config/venues/{tiers,import,refresh,overpass} to ConfigVenue.jsx | Four routes, one component, filed under Settings |
| Activity | /admin/analytics/dashboards/venue-activity to VenueActivityDashboard.jsx | A real dashboard, but it lives under Analytics, not Venues |
The Users page already has both shapes this needs. โ
- A four-up metric strip, and an Activity view with its own charts and granularity control. Both are in
UserManagement.jsx. - Practical consequence: the metric strip and the Activity page are ports, not inventions. Read that file before designing either.
What is the target? โ
A sub header nav over the section, with these tabs. โ
- List: the venue table, with a four-up metric strip on top and Users-style filters.
- Activity: the venue activity view.
- Create venue: its own page.
- Configuration: the four current Settings routes, moved in.
A row click opens a drawer. The Edit button goes away. โ
- The operator was explicit that editing must not navigate to a new page.
What is open, and must not be guessed? โ
Which four metrics. RESOLVED 2026-08-28 by the operator. โ
- Venues, Live now, Needs attention, Category mix. Three of the four filter the table; Category mix does not, because a mix is not a subset of the list, so it is a div rather than a button and stays out of the tab order.
- Two labels she rejected on sight, both cases of my framing leaking into a label: "Supply" (from calling this the alpha supply gate) became "Venues", and a "hangout venues" count under a "Category mix" heading became the number of categories present.
Whether Activity is a MOVE or a MIRROR. RESOLVED 2026-08-28: MOVE, with a redirect. โ
- Now at
/admin/venues/activity. The old analytics path redirects rather than being deleted, and Analytics keeps a cross-link at the end of its dashboard strip. - Named consequence: with Venue Activity gone and Ad Delivery moved to the Ad Network section, Analytics > Dashboards contains three placeholder routes and nothing else. Left clean rather than half-fixed, per the PM's call: old paths redirect, nothing dangles. It needs her decision.
What happens to the old configuration routes. RESOLVED: redirect, one per sub-page. โ
- All four
/admin/config/venues/*paths redirect into/admin/venues/config/*, preserving WHICH sub-page was asked for rather than dumping every bookmark on Tiers. The Settings nav entry is gone.
Which launch plan row is this? โ
- Open question. No row in
ALPHA.mdwas found covering admin venue management, and inventing one is not this project's call.