docs: sync documentation after perf/a11y/release-candidate work
- PROJECT.md: Current Status updated (perf/a11y/RC walkthrough all done, new report docs added to index). - FRONTEND-ROADMAP.md: RC PERF-01, RC A11Y-01, and Release Candidate walkthrough entries added; known-open-items list updated (2 new flags from RC walkthrough, primeng removal blocker, large chunks, backend-ready sprint explicitly deferred pending a real API contract). - KNOWN-ISSUES.md: corrected item 6 (payment modal focus-trap assumption was wrong, now actually fixed); added items 9-12 (brand contrast failures, Contacts content gap, WYSIWYG editor mislabeled, primeng removal blocker); added 2 Fixed entries for this cycle's P0s (query-param routing, Categories CRUD). - Graphify graph regenerated (graphify-out/, cache only, not tracked). - Obsidian: skipped, no running Obsidian instance in this session. - No architecture change this cycle (perf/a11y/bug fixes only) — no new ADR. - No application code touched. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -77,9 +77,13 @@ don't fix inline unless asked.
|
||||
- Found: 2026-07-17, project-editor bug-hunt audit.
|
||||
|
||||
6. **Payment modal / bank-payment iframe on Cart still custom, not `app-dialog`.**
|
||||
Has its own multi-step state and focus-trap already — migrating to the
|
||||
shared dialog primitive is a composition change, deliberately left out of
|
||||
RC-Premium-01's visual-polish scope.
|
||||
Correction (2026-07-24, RC A11Y-01): the "already has focus-trap" assumption
|
||||
below was wrong — it had none. RC A11Y-01 ported `app-dialog`'s confirmed-
|
||||
correct focus-trap/Escape/return-focus pattern directly onto it
|
||||
(`docs/ACCESSIBILITY_REPORT.md`), so the accessibility gap is closed. It's
|
||||
still a separate custom component, not the shared `app-dialog` itself —
|
||||
migrating it to the actual primitive remains a composition change,
|
||||
deliberately left out of every polish pass so far.
|
||||
- Found: 2026-07-23, RC-Premium-01 (`docs/STORE_FRONT_UX_REVIEW.md`).
|
||||
|
||||
7. **Cart's `clearCart()` uses native `confirm()`, no styled confirm dialog.**
|
||||
@@ -93,6 +97,34 @@ don't fix inline unless asked.
|
||||
token-extension decision before normalizing.
|
||||
- Found: 2026-07-23, RC-Premium-01.
|
||||
|
||||
9. **Genuine brand-color contrast failures (WCAG AA).** `--border-color`
|
||||
fails 3:1 UI-component contrast in every theme (1.24-1.42:1 measured);
|
||||
`--success/--warning/--error/--info-color` fail 4.5:1 when used as plain
|
||||
text-on-white in a handful of places. Real palette colors, not a token
|
||||
bug — fixing means visibly changing the brand, needs theme-owner sign-off.
|
||||
- Found: 2026-07-24, RC A11Y-01 (`docs/ACCESSIBILITY_REPORT.md`).
|
||||
|
||||
10. **Footer "Contacts" link has no static-page content in mock data.**
|
||||
Unlike the "About" link (which was a route-name mismatch, fixed), no
|
||||
content exists for Contacts at all — needs a content decision, not a
|
||||
code fix.
|
||||
- Found: 2026-07-24, Release Candidate walkthrough (`docs/RELEASE_REPORT.md`).
|
||||
|
||||
11. **Builder's static-page body editor is hidden and mislabeled.** The
|
||||
actual WYSIWYG content editor isn't on the "Content" tab (title/image
|
||||
only) — it's inside a collapsed `<details>` under "Advanced", labeled
|
||||
"Source HTML (advanced)" though it's the only way to edit page content.
|
||||
Works correctly once found; relocating/relabeling is a navigation
|
||||
decision, not a bug fix.
|
||||
- Found: 2026-07-24, Release Candidate walkthrough.
|
||||
|
||||
12. **`primeng`/`primeicons` still in `package.json` after their only
|
||||
consumer was deleted.** `npm uninstall` fails (`ETARGET`) on a
|
||||
pre-existing, unrelated broken `barry-cache` devDependency resolution —
|
||||
fix that first, then drop the now-fully-unused dependency (likely closes
|
||||
most of the remaining bundle-budget overage in one move).
|
||||
- Found: 2026-07-24, RC PERF-01 (`docs/PERFORMANCE_REPORT.md`).
|
||||
|
||||
## Fixed
|
||||
|
||||
1. **Full-project UX/UI + motion pass across storefront, admin dashboard,
|
||||
@@ -255,6 +287,31 @@ don't fix inline unless asked.
|
||||
~90-line dead CSS block still shipping in the bundle.
|
||||
- Fixed: 2026-07-23, RC STORE-01.
|
||||
|
||||
9. **App-wide query-param routing broken (P0).** `language.guard.ts`'s
|
||||
legacy-URL redirect built the target with `router.createUrlTree([...])`
|
||||
using a single path-segment string with the query string baked in, so it
|
||||
got percent-encoded into the path instead of parsed as query params
|
||||
(`/edit/branding?devBypassAdmin=true` → `/ru/edit/branding%3FdevBypassAdmin%3Dtrue`,
|
||||
a dead route). This guard runs on every top-level route app-wide, so any
|
||||
bookmarked/shared deep link with query params was silently broken —
|
||||
found during the Builder RC walkthrough but affects all 3 surfaces.
|
||||
- Fixed: 2026-07-24, Release Candidate walkthrough (`docs/RELEASE_REPORT.md`),
|
||||
`router.parseUrl()` instead of a hand-built path segment.
|
||||
|
||||
10. **Backoffice Categories CRUD completely broken end-to-end (P0).**
|
||||
`admin-categories-gateway.token.ts` resolved via
|
||||
`RuntimeProviderStrategyService.getBackofficeProviderMode()`, which —
|
||||
unlike `getBootstrapProviderMode()` — has no `isLocalhost()` fallback,
|
||||
so it always picked the real HTTP `AdminCategoriesApiGateway` instead of
|
||||
the local mock in an environment with no real backend. Combined with
|
||||
`saveDraft()` having no error handler: every create/publish click
|
||||
silently failed, `dirty` never cleared, and the unsaved-changes guard
|
||||
then blocked navigation with zero feedback.
|
||||
- Fixed: 2026-07-24, Release Candidate walkthrough, wired to the
|
||||
already-defined `getCategoryProviderMode()` + added the same
|
||||
`isLocalhost()` fallback `getBootstrapProviderMode()` already had.
|
||||
Live-verified: create/edit/reorder all persist correctly now.
|
||||
|
||||
## Notes (not bugs, just flag before shipping)
|
||||
|
||||
- `src/environments/environment.ts`: `useMockData` was temporarily flipped to
|
||||
|
||||
Reference in New Issue
Block a user