Step 1 of 6
Define admin scope and data
Decide exactly what the admin manages so the dashboard is concrete, not decorative.
Define the admin dashboard spec for this app. List: the entities admins manage (e.g. users, orders, content), the 4-6 stats that matter (with the exact query behind each), the table columns per entity, the row actions (view/edit/disable/delete) and what each changes in the database, and who counts as admin. Every stat and action must map to real data - no decorative metrics.
Expected after this step
A spec mapping every stat, column, and action to real data and queries.
Should not happen
- ✕Stats cards showing hardcoded numbers
- ✕Tables rendering static arrays instead of database queries
- ✕Delete/disable that only removes the row from local state
- ✕Admin routes reachable by any logged-in user
Verify before continuing
Do not move on until every check is true. The complete button stays locked until then.
Do not continue if…
- !Stats cards showing hardcoded numbers
- !Tables rendering static arrays instead of database queries
- !Delete/disable that only removes the row from local state
- !Admin routes reachable by any logged-in user
If the AI messes this up
Use this when the AI fakes progress or breaks the feature. It forces a real fix.
The spec includes decorative metrics with no data source. Remove or replace them - every stat must state the exact query or computation behind it.