QA Checklist
End-to-end manual testing from an end-user perspective. See issue #64.
Legend: (T) = automated test exists, (J) = covered by journey test, (D) = documented in user guide
Data & Tables
Section titled “Data & Tables”- Ask the AI to create a new list (e.g., “I need to track my inventory”) (T)(J)(D)
- Ask the AI to add fields (e.g., “I also need a price and a category”) (T)(D)
- Ask the AI to remove or rename a field (T)(D)
- Add a few records manually (T)(J)(D)
- Edit a record (T)(D)
- Delete a record (T)(D)
- Sort and filter the list
Relationships
Section titled “Relationships”- Ask the AI to link two lists (e.g., “connect orders to customers”) (T)(D)
- Verify the link works — clicking a customer shows their orders (T)
Users & Access
Section titled “Users & Access”- Invite a new user by email (T)(D)
- Log in as the invited user (T)(D)
- Verify the invited user sees only what they should (T)(D)
- Log out and back in
Navigation
Section titled “Navigation”- Verify new lists appear in the sidebar (T)(J)(D)
- Navigate between lists (T)(J)(D)
- Use the detail and edit views (T)(D)
Builder / AI Chat
Section titled “Builder / AI Chat”- Start a new conversation (T)(J)(D)
- Continue an existing conversation (T)
- Delete a conversation (T)
- Ask the AI to change FK display columns on an existing table (T)(D)
- Verify updated columns appear in FK dropdown after approval
- Ask the AI to delete a page — verify confirmation widget shows, page removed after approval (T)
- Reject page deletion — verify page is unchanged
Live Updates
Section titled “Live Updates”- Create, update, or delete a page in the Builder — verify it appears/updates/disappears without refreshing
- Open two tabs — verify a page change in one tab reflects in the other
General
Section titled “General”- App loads after logging in (T)
- Empty list shows a sensible state (no confusing errors)
Journey Test
Section titled “Journey Test”The journey test (pnpm test:journey) exercises the full builder flow as a single sequential scenario: login → AI creates table → approve → add CRUD rows → AI creates custom page → approve → verify page renders. It catches integration breakage between features that pass individually. Items marked (J) above are covered.
Coverage Gaps
Section titled “Coverage Gaps”Items without (T) or (D) above need attention:
| Gap | Type | Notes |
|---|---|---|
| Sort and filter | Test + Docs | No tests or docs for column sorting/filtering |
| Log out | Docs | Logout flow not documented |
| Conversation list/delete | Docs | Tested in backend but not in user guide |
| Empty states | Test + Docs | Only 404 tested; empty table UI not covered |