docs: consolidate manual test scenarios into 10 E2E tests#701
Conversation
Replace 10 per-feature test files (107 scenarios, 2224 lines) with a single docs/ai-design/manual-tests.md containing 10 end-to-end scenarios that each exercise multiple features. Update CLAUDE.md to reference the consolidated file. Deleted directories (test-only): - 2025-02-25-spv-peer-rework - 2026-02-24-address-nonce-column - 2026-02-24-asset-lock-fee-fix - 2026-02-24-dashmate-auto-update - 2026-02-24-mine-blocks-dialog - 2026-02-24-platform-sync-simplification - 2026-02-24-spv-sync-error-status - 2026-02-24-sync-status-panel - 2026-03-03-fix-nonce-reset-on-refresh - 2026-03-05-banner-details-overlap Preserved directories (non-test design docs): - 2026-02-16-spv-single-runtime-refactor - 2026-02-17-unified-messages - 2026-02-27-banner-review-fixes Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
📝 WalkthroughWalkthroughThis change restructures project documentation by removing detailed manual test scenario files and introducing a user-persona-driven approach. It adds comprehensive user personas, a user-stories catalog, UX design patterns guidance, and updates CI/PR guidelines to reflect this new documentation strategy. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/ai-design/manual-tests.md`:
- Around line 1-5: The manual test spec file manual-tests.md must be moved from
docs/ai-design into a new ISO-dated subdirectory (e.g., create
docs/ai-design/2026-03-06/) to comply with the repo rule; update any internal
references or links that pointed to manual-tests.md to use the new path, and if
moving breaks CI or docs indexes adjust those references (search for usages of
"manual-tests.md" in the repo), or alternatively update the repo guidance to
relax the ISO-date requirement if you intend to keep the current location.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: b8639841-2a74-456f-b729-0313b30d27ce
📒 Files selected for processing (12)
CLAUDE.mddocs/ai-design/2025-02-25-spv-peer-rework/manual-tests.mddocs/ai-design/2026-02-24-address-nonce-column/manual-test-scenarios.mddocs/ai-design/2026-02-24-asset-lock-fee-fix/manual-test-scenarios.mddocs/ai-design/2026-02-24-dashmate-auto-update/manual-test-scenarios.mddocs/ai-design/2026-02-24-mine-blocks-dialog/manual-test-scenarios.mddocs/ai-design/2026-02-24-platform-sync-simplification/manual-test-scenarios.mddocs/ai-design/2026-02-24-spv-sync-error-status/manual-test-scenarios.mddocs/ai-design/2026-02-24-sync-status-panel/manual-test-scenarios.mddocs/ai-design/2026-03-03-fix-nonce-reset-on-refresh/manual-test-scenarios.mddocs/ai-design/2026-03-05-banner-details-overlap/manual-test.mddocs/ai-design/manual-tests.md
💤 Files with no reviewable changes (10)
- docs/ai-design/2026-03-03-fix-nonce-reset-on-refresh/manual-test-scenarios.md
- docs/ai-design/2026-02-24-asset-lock-fee-fix/manual-test-scenarios.md
- docs/ai-design/2026-02-24-mine-blocks-dialog/manual-test-scenarios.md
- docs/ai-design/2026-02-24-sync-status-panel/manual-test-scenarios.md
- docs/ai-design/2025-02-25-spv-peer-rework/manual-tests.md
- docs/ai-design/2026-02-24-dashmate-auto-update/manual-test-scenarios.md
- docs/ai-design/2026-02-24-platform-sync-simplification/manual-test-scenarios.md
- docs/ai-design/2026-03-05-banner-details-overlap/manual-test.md
- docs/ai-design/2026-02-24-address-nonce-column/manual-test-scenarios.md
- docs/ai-design/2026-02-24-spv-sync-error-status/manual-test-scenarios.md
Define three user archetypes (Everyday User, Power User, Platform Developer) to guide progressive disclosure in the wallet UI. Add concise README as index. Reference personas in CLAUDE.md documentation section. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Comprehensive user story inventory derived from source code, internal docs, and published documentation. Each story tagged by persona (Alex/Priya/Jordan), marked [Implemented] or [Gap], with acceptance criteria. Covers wallet, send/receive, asset locks, identity, DPNS, DashPay, tokens, contracts, developer tools, and network settings. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Concise UI/UX conventions covering design tokens, color system, buttons, dialogs, forms, messages, tables, loading states, navigation, keyboard accessibility, progressive disclosure, and responsive layout. All values verified against theme.rs and component implementations. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Full codebase audit of user-stories.md against implementation: - Fix SND-005: [Gap] → [Implemented] (fee estimation exists) - Fix NET-006: [Implemented] → [Gap] (no UI control) - Add note to DPN-005 about Platform-level vote constraint - Add 15 new stories: WAL-017..020, SND-006, IDN-012..013, DPY-009..011, TOK-015..017 (113 total, was 98) Update ux-design-patterns.md with missing patterns: - Password strength colors, interactive state colors - Additional semantic color constants - Shadow system tokens - ComponentStyles button and input helpers - Password input pattern (hold-to-reveal) Add user stories catalog section to CLAUDE.md requiring story updates on feature PRs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (2)
docs/personas/platform-developer.md (1)
77-83: Minor formatting: Remove blank lines inside blockquotes.The blockquotes contain blank lines between quotes, which violates markdown best practices. Remove the blank lines to improve rendering consistency.
📝 Proposed fix
## Quotes (Illustrative) > "I need to test 5 different identity scenarios. Creating each one takes 12 clicks across 3 screens. Can this be a single operation?" - > "The error says 'insufficient credits.' How many credits do I have? How many do I need? What is the fee? Show me the numbers." - > "I just want a funded wallet on Testnet. I do not care about the mnemonic backup -- this wallet will be deleted in an hour."🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/personas/platform-developer.md` around lines 77 - 83, In the "## Quotes (Illustrative)" section remove the blank lines between the blockquote lines so each quote is a contiguous blockquote (i.e., ensure each ">" line directly follows the previous ">" without an empty line); update the three quoted entries (the identity-testing quote, the insufficient credits quote, and the funded wallet on Testnet quote) so there are no blank lines inside each blockquote and the markdown renders consistently.docs/personas/power-user.md (1)
80-86: Minor formatting: Remove blank lines inside blockquotes.The blockquotes contain blank lines between quotes. Remove them for consistent markdown formatting.
📝 Proposed fix
## Quotes (Illustrative) > "I need to see every address in my wallet, what derivation path it is on, and whether it has been used. This is basic information." - > "Why is transaction history only available in 'developer mode'? I am not a developer, I am a user who wants to see my transactions." - > "I created an asset lock yesterday, but I cannot find it in the list. The search/recover feature should be more prominent."🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/personas/power-user.md` around lines 80 - 86, The blockquote section under the header "## Quotes (Illustrative)" has extra blank lines between individual quoted lines; edit the markdown so each quote line begins with '>' and there are no empty lines between them (i.e., collapse the blank lines so the three quoted lines are consecutive blockquote lines) to ensure consistent blockquote formatting.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@docs/user-stories.md`:
- Around line 140-147: Replace the non-standard term "unbackup" in the WAL-015
story header and bullets with clear phrasing such as "not backed up" (e.g.,
change "unbackup" to "not backed up" or "unbacked-up"); update the title
"WAL-015: Create throwaway wallet without mnemonic backup" and the bullet that
currently reads "Wallet is clearly marked as 'unbackup' or 'temporary.'" to
instead read something like "Wallet is clearly marked as 'temporary (not backed
up)'" so the meaning is standard and unambiguous.
---
Nitpick comments:
In `@docs/personas/platform-developer.md`:
- Around line 77-83: In the "## Quotes (Illustrative)" section remove the blank
lines between the blockquote lines so each quote is a contiguous blockquote
(i.e., ensure each ">" line directly follows the previous ">" without an empty
line); update the three quoted entries (the identity-testing quote, the
insufficient credits quote, and the funded wallet on Testnet quote) so there are
no blank lines inside each blockquote and the markdown renders consistently.
In `@docs/personas/power-user.md`:
- Around line 80-86: The blockquote section under the header "## Quotes
(Illustrative)" has extra blank lines between individual quoted lines; edit the
markdown so each quote line begins with '>' and there are no empty lines between
them (i.e., collapse the blank lines so the three quoted lines are consecutive
blockquote lines) to ensure consistent blockquote formatting.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 8287bffd-d92c-4f87-b102-ce5d0ddcf149
📒 Files selected for processing (7)
CLAUDE.mddocs/personas/README.mddocs/personas/everyday-user.mddocs/personas/platform-developer.mddocs/personas/power-user.mddocs/user-stories.mddocs/ux-design-patterns.md
There was a problem hiding this comment.
Claudius the Magnificent's Review
A docs-only PR that consolidates 10 per-feature manual test files into a single E2E document, adds personas, user stories, and a UX design patterns reference. The restructuring is well-conceived and significantly improves project organization.
3 MEDIUM findings posted as inline comments. No blockers — these are all straightforward fixes.
Overall: solid work. The consolidated test scenarios cover the critical paths well, the personas are actionable, and the UX patterns doc is a valuable reference. Fix the nits and this is good to go. 👍
🤖 Co-authored by Claudius the Magnificent AI Agent
Remove stale counts (scenario limits, story counts) and implementation constants (pixel sizes, hex codes, padding values) that drift out of sync with source code. Documents now explain usage/intent and point to source files for exact values. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
Actionable comments posted: 1
♻️ Duplicate comments (1)
docs/user-stories.md (1)
140-146:⚠️ Potential issue | 🟡 MinorReplace the non-standard term "unbackup".
"unbackup"reads like a typo here. Please switch to wording like"not backed up"or"temporary (not backed up)"so the state is unambiguous.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@docs/user-stories.md` around lines 140 - 146, Replace the non-standard term "unbackup" in the WAL-015 user story text with a clear phrase such as "not backed up" or "temporary (not backed up)"; update the title/body occurrences (e.g., the "WAL-015: Create throwaway wallet without mnemonic backup [Gap]" section) so the wallet state reads unambiguously as "temporary (not backed up)" or "not backed up" wherever "unbackup" appears.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@CLAUDE.md`:
- Around line 42-43: The guidance in CLAUDE.md references
docs/ai-design/manual-tests.md but conflicts with the repo rule that
docs/ai-design/** must live in ISO-dated subfolders; either move the
consolidated manual-tests.md into an ISO-prefixed subdirectory (e.g.,
docs/ai-design/2026-03-10/manual-tests.md) and update any references, or
explicitly add a single-line exception in CLAUDE.md stating that
docs/ai-design/manual-tests.md is a permitted top-level exception to the
dated-layout rule; update the text to mention the exact filename
(manual-tests.md) so reviewers know which choice was made.
---
Duplicate comments:
In `@docs/user-stories.md`:
- Around line 140-146: Replace the non-standard term "unbackup" in the WAL-015
user story text with a clear phrase such as "not backed up" or "temporary (not
backed up)"; update the title/body occurrences (e.g., the "WAL-015: Create
throwaway wallet without mnemonic backup [Gap]" section) so the wallet state
reads unambiguously as "temporary (not backed up)" or "not backed up" wherever
"unbackup" appears.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: f50e5a1a-46a0-4ed7-b99b-3a0801929525
📒 Files selected for processing (3)
CLAUDE.mddocs/user-stories.mddocs/ux-design-patterns.md
🚧 Files skipped from review as they are similar to previous changes (1)
- docs/ux-design-patterns.md
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
There was a problem hiding this comment.
Actionable comments posted: 1
♻️ Duplicate comments (1)
CLAUDE.md (1)
71-74:⚠️ Potential issue | 🟡 MinorDocument
docs/ai-design/manual-tests.mdas an explicit exception.Line 71 still says
docs/ai-designcontent is date-grouped, but this PR’s consolidated manual test file lives atdocs/ai-design/manual-tests.md. Please name that exact file as an allowed top-level exception; otherwise the repo guidance still contradicts the new layout.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@CLAUDE.md` around lines 71 - 74, Update the CLAUDE.md section that describes docs/ai-design to explicitly allow docs/ai-design/manual-tests.md as a top-level exception; change the sentence that currently says the ai-design folder must be date-grouped to also state that docs/ai-design/manual-tests.md may be maintained as a consolidated manual test file at the top level of that folder (i.e., list "docs/ai-design/manual-tests.md" by name as an allowed exception alongside the existing rule).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@CLAUDE.md`:
- Around line 39-44: Update the "User stories catalog" section to include the
new manual-test workflow by adding a sentence that instructs contributors to
reference scenario numbers from docs/ai-design/manual-tests.md when adding or
changing user-facing features; specifically mention that PRs introducing
manual-test changes must add the corresponding manual-test scenario ID(s) (from
docs/ai-design/manual-tests.md) to docs/user-stories.md or the PR description
and update any `[Gap]`/`[Implemented]` tags accordingly so manual-test scenarios
remain discoverable and enforced.
---
Duplicate comments:
In `@CLAUDE.md`:
- Around line 71-74: Update the CLAUDE.md section that describes docs/ai-design
to explicitly allow docs/ai-design/manual-tests.md as a top-level exception;
change the sentence that currently says the ai-design folder must be
date-grouped to also state that docs/ai-design/manual-tests.md may be maintained
as a consolidated manual test file at the top level of that folder (i.e., list
"docs/ai-design/manual-tests.md" by name as an allowed exception alongside the
existing rule).
| ### User stories catalog | ||
|
|
||
| ### Manual test scenarios | ||
|
|
||
| You MUST identify manual tests needed for the changes and write a manual test scenarios. Use the `claudius:qa-engineer` agent if available. | ||
| Skip the manual test file only for non-functional changes (CI, docs, formatting, pure refactoring) — state why in the PR description. | ||
| Put tests in docs directory, as described in "Documentation" section below. Reference the file in the PR description under "Test plan". | ||
| Before creating a PR, re-review test scenarios and update them if needed. | ||
| When a PR adds or significantly changes user-facing features, check `docs/user-stories.md`: | ||
| - If a new feature matches no existing story, add one following the existing format (ID, persona, description, acceptance criteria, `[Implemented]` tag). | ||
| - If a `[Gap]` story is now implemented, flip its tag to `[Implemented]`. | ||
| - Skip user-story updates for non-functional changes (CI, docs, formatting, refactoring). |
There was a problem hiding this comment.
Add the new manual-test workflow here.
These instructions now point contributors at docs/user-stories.md, but they never tell them to reference scenario numbers from docs/ai-design/manual-tests.md. That leaves the main workflow change from this PR undocumented, so future PRs can still drift back to ad-hoc manual-test docs.
Suggested doc update
+### Manual test scenarios
+
+When a PR changes user-facing behavior, reference the relevant scenario numbers from `docs/ai-design/manual-tests.md` in the PR/test plan instead of creating a new per-PR manual-test document.
+
### User stories catalog
When a PR adds or significantly changes user-facing features, check `docs/user-stories.md`:
- If a new feature matches no existing story, add one following the existing format (ID, persona, description, acceptance criteria, `[Implemented]` tag).
- If a `[Gap]` story is now implemented, flip its tag to `[Implemented]`.
- Skip user-story updates for non-functional changes (CI, docs, formatting, refactoring).🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@CLAUDE.md` around lines 39 - 44, Update the "User stories catalog" section to
include the new manual-test workflow by adding a sentence that instructs
contributors to reference scenario numbers from docs/ai-design/manual-tests.md
when adding or changing user-facing features; specifically mention that PRs
introducing manual-test changes must add the corresponding manual-test scenario
ID(s) (from docs/ai-design/manual-tests.md) to docs/user-stories.md or the PR
description and update any `[Gap]`/`[Implemented]` tags accordingly so
manual-test scenarios remain discoverable and enforced.
Summary
docs/ai-design/manual-tests.mdcontaining 10 end-to-end scenariosCLAUDE.mdto reference the consolidated file — new PRs reference scenario numbers instead of creating per-PR test filesWhat changed?
Deleted 10 test-only directories:
2025-02-25-spv-peer-rework/(12 scenarios)2026-02-24-address-nonce-column/(8 scenarios)2026-02-24-asset-lock-fee-fix/(10 scenarios)2026-02-24-dashmate-auto-update/(8 scenarios)2026-02-24-mine-blocks-dialog/(24 scenarios)2026-02-24-platform-sync-simplification/(11 scenarios)2026-02-24-spv-sync-error-status/(4 scenarios)2026-02-24-sync-status-panel/(24 scenarios)2026-03-03-fix-nonce-reset-on-refresh/(5 scenarios)2026-03-05-banner-details-overlap/(1 scenario)Preserved 3 directories with non-test design docs (architecture, UX specs, review guides).
New
docs/ai-design/manual-tests.mdwith 10 E2E scenarios:Test plan
Non-functional change (documentation only) — no manual testing required.
Breaking Changes
None
🤖 Co-authored by Claudius the Magnificent AI Agent
Summary by CodeRabbit
Release Notes