docs: approve routed ZarinPal redesign

This commit is contained in:
2026-08-20 20:44:22 +03:30
parent 23147cd60d
commit d8eeff57cd
5 changed files with 170 additions and 12 deletions

View File

@@ -453,3 +453,17 @@ Resolved external contracts: the production Problem Details base URI is owned by
- [Playwright installation and test runner](https://playwright.dev/docs/intro)
- [WCAG 2.2](https://www.w3.org/TR/WCAG22/)
- [WHATWG server-sent events](https://html.spec.whatwg.org/multipage/server-sent-events.html)
## 17. Approved feature-branch redesign delivery
The user approved `docs/ZARINPAL-REDESIGN-AMENDMENT.md` on 2026-08-20 and required the work to remain on `feature/zarinpal-dashboard-redesign` until a separately running preview is reviewed.
Build order:
1. Extend the backend contract for four latest complete period windows, terminal-scoped runs, payment history, and routed transaction evidence.
2. Generate the TypeScript contract and add shadcn-svelte/Lucide foundations.
3. Replace the single-page dashboard with the shared routed shell and URL-backed controls.
4. Deliver overview, transaction, performance, fee, peer, methodology, and detail routes as thin vertical slices.
5. Verify the isolated feature instance on alternate ports, then wait for explicit merge approval.
The current instance remains untouched while the feature preview uses API port `8081` and frontend port `5174`.

View File

@@ -804,3 +804,25 @@ Commands named below are established by Task 4. Before then, verification uses t
- [ ] Tasks 1–2 are complete before Task 3 begins.
- [ ] Implementation proceeds one task at a time with tests first where behavior/logic changes.
- [ ] Every completed increment is verified and committed atomically without pushing unless separately requested.
## Approved redesign increment — 2026-08-20
- [ ] Task 38: Add the shadcn-svelte/Lucide foundation and ZarinPal design tokens.
- Acceptance: generated local UI primitives, cropped logo treatment, 8 px data surfaces, and semantic blue/yellow tokens pass `npm run check`.
- Verify: focused component tests plus `npm run check`.
- [ ] Task 39: Deliver the persistent top bar, right collapsible sidebar, mobile drawer, terminal selector, and URL-backed period control.
- Acceptance: active icons alone are blue, desktop collapses to icons, and copied URLs restore range/terminal.
- Verify: shell tests plus keyboard and responsive browser checks.
- [ ] Task 40: Deliver `/dashboard` with supportive insight copy, formula help, payment-history chart, and recent transactions.
- Acceptance: chart points are hover/focus inspectable and exact values remain available in text.
- Verify: transformation tests and browser chart interaction.
- [ ] Task 41: Deliver `/transactions` and `/transactions/[sessionId]`.
- Acceptance: status/date/amount filters are URL-backed, rows are links, and attempt history is ordered and sensitive-field free.
- Verify: filter tests and authenticated drill-down smoke.
- [ ] Task 42: Deliver `/payments`, `/fees`, `/peers`, and `/methodology` with one written takeaway and meaningful Lucide icons per surface.
- Acceptance: every route handles ready/empty/error states and important formulas are keyboard reachable.
- Verify: route tests, `npm test`, `npm run check`, and `npm run build`.
- [ ] Task 43: Run the isolated feature preview and collect desktop/mobile evidence.
- Acceptance: login and critical journeys work at `http://127.0.0.1:5174` against API `8081` with no console/network errors.
- Verify: real-browser login, route, filter, terminal, collapse, and detail checks.
- [ ] Checkpoint R1: Commit all verified increments on `feature/zarinpal-dashboard-redesign` and wait for explicit user confirmation before merge.