Summary
Add browser-level tests that verify the most important user journeys in mock mode and a controlled live-mode API fixture.
Current Behaviour
The repository does not include visible end-to-end tests. Important flows such as wallet connection state, dashboard rendering, access denial, admin navigation, member listing, and policy editing are not tested through a browser.
Expected Behaviour
Contributors should be able to run a deterministic E2E suite that validates critical flows before merging UI or API changes.
Suggested Implementation
Add Playwright and create wallet/API mocks for deterministic browser tests. Cover dashboard loading in mock mode, gated page allow/deny behaviour, admin member role assignment, policy editing, and live-mode error handling with intercepted network responses.
Files or Areas Likely Affected
package.json
playwright.config.ts
e2e/
lib/api/mock.ts
app/**/*.tsx
README.md
.github/workflows/
Acceptance Criteria
Additional Notes
Avoid relying on a real browser wallet extension in CI. Use controlled mocks for wallet state.
Summary
Add browser-level tests that verify the most important user journeys in mock mode and a controlled live-mode API fixture.
Current Behaviour
The repository does not include visible end-to-end tests. Important flows such as wallet connection state, dashboard rendering, access denial, admin navigation, member listing, and policy editing are not tested through a browser.
Expected Behaviour
Contributors should be able to run a deterministic E2E suite that validates critical flows before merging UI or API changes.
Suggested Implementation
Add Playwright and create wallet/API mocks for deterministic browser tests. Cover dashboard loading in mock mode, gated page allow/deny behaviour, admin member role assignment, policy editing, and live-mode error handling with intercepted network responses.
Files or Areas Likely Affected
package.jsonplaywright.config.tse2e/lib/api/mock.tsapp/**/*.tsxREADME.md.github/workflows/Acceptance Criteria
npm run test:e2eAdditional Notes
Avoid relying on a real browser wallet extension in CI. Use controlled mocks for wallet state.