# TODO Checklist of everything documented as open/remaining, verified against current repo state on 2026-07-26 (re-verified against source, not against prior docs). ## Backend — doing together - [ ] `bootstrap.json` real content (branding/theme/nav/seo) — default stubs. - [ ] Builder bootstrap draft/publish/validate — no backend, editor saves nowhere real. - [ ] Backoffice Products CRUD — mock only. - [ ] Media upload/delete/replace pipeline — mock only. - [ ] Backoffice Orders CRUD + status transitions — mock only. - [ ] Backoffice Transactions — mock only. - [ ] Backoffice Users/roles/invitations — mock only. - [ ] Backoffice Moderation (reviews/reports) — mock only. - [ ] Analytics traffic/funnels/heatmaps — no data source at all (FUTURE). - [ ] Backend Ready sprint — no real API contract exists yet. In progress: see `docs/BACKEND_INTEGRATION.md` (Backend Finalization Sprint, 2026-07-26). ## UX/design decisions deferred - [ ] Cart payment modal — still a custom overlay (`.bank-payment-modal`), not `app-dialog` (composition change, deferred). - [ ] Brand-color contrast failures (`--border-color`, `--success/warning/error/info-color`) — fails WCAG AA, needs theme-owner sign-off. - [ ] `stars.component.scss` hex literal (`#cdd6d5`, line 10) — no token match, needs token-extension decision. - [ ] Footer "Contacts" link (`footer-contacts` / `nav.contacts`) — verify static-page content exists for it in bootstrap mock; not re-checked this pass. - [ ] Theme Mode (dark/system) selector — no runtime CSS effect, real feature project needed. - [ ] Homepage hero-to-categories dead-space gap — mock config artifact, needs real-tenant repro. ## Tooling/infra - [ ] 2 large lazy chunks (`project-editor` 320kB, `catalog-container` 126kB) — no split found yet. - [ ] Angular 22 upgrade — researched, not executed. Plan: ~2-3.5 days, needs barry-cache fix + Node bump first. Explicitly out of scope for current Backend Finalization Sprint. - [ ] `git push` of local B2B commits to origin — pending go-ahead. ## Resolved since last pass (2026-07-26), verified against source - [x] "Featured Products" hardcoded English string — gone, no longer in source. - [x] Dashboard "Проблема"/Problem status on 0 products/categories — verified `admin-dashboard.facade.ts`: `unhealthy` only fires on real fetch error (`metrics.status === 'error'`), not on a genuine zero count. Not a bug; prior TODO entry was inaccurate. - [x] Backoffice Monitoring raw dev text (`GET /api/products responded 200 in 84ms`, `order.created`) — fixed 2026-07-26 (RC-02 task 3): friendly wording by default, raw detail behind collapsed "Technical details". - [x] Cart `clearCart()` native `confirm()` — fixed 2026-07-26 (RC-02 task 4): styled `app-confirm-dialog` (new shared component wrapping existing `app-dialog`). - [x] All native `confirm()`/`alert()`/`prompt()` in production UI (12 confirms + 4 alerts across cart, media library, static-pages editor, builder) — fixed 2026-07-26 (RC-02 task 4). - [x] `pages/category`, `pages/search`, `pages/item-detail`, `pages/info/**`, `pages/legal/**` (40+ files) — unrouted dead code, deleted 2026-07-25 (RC-02 task 6). - [x] `dynamic-renderer/` pipeline "unwired, needs finish-or-delete" — **incorrect premise**, verified 2026-07-25: it's the live homepage rendering pipeline (`HomeComponent` → `WebsiteRuntimeFacade` → `PageRendererService`/`PageResolverService` → `DynamicPageLayoutComponent`). Nothing to finish or delete. - [x] ~178 missing `adminXxx.*` translation keys — re-checked 2026-07-26: `en.ts`/`ru.ts`/`hy.ts` key counts are within ~4 of each other (near parity). Prior figure was stale or inaccurate; no large gap exists now. - [x] getMainImage() no-photo fallback pointed at a nonexistent `/assets/images/placeholder.svg` — fixed 2026-07-26 (RC-02 task 5): asset created, `onerror` fallback added to every dynamic ``. - [x] Footer payment icons (`mir-logo.svg`, `visa-logo.svg`, `mastercard-logo.svg`) referenced in `bootstrap.json` but files didn't exist — site-wide broken image in every page footer. Fixed 2026-07-26: assets created, `onerror` fallback added. - [x] Category/subcategory empty states used "Oops!"/"Упс!" apology wording for a normal zero-results condition — fixed 2026-07-25 (RC-02 task 2), then the pages themselves were deleted as dead code (task 6) anyway. - [x] No `canDeactivate` guard on `admin/products/:id/edit` — fixed 2026-07-25 (`adminProductDirtyGuard`, mirrors categories). - [x] `primeng`/`primeicons` in `package.json` despite no consumer — fixed 2026-07-25 (bumped `barry-cache`, then `npm uninstall`). - [x] Builder static-page body editor hidden/mislabeled — fixed 2026-07-25 (RC-01 phase 6). - [x] `HeaderConfig.showProfile` toggle — was already removed from the editor template; stale TODO entry, no action needed. ## Done this cycle (for reference, not re-tracked here) Storefront polish, performance audit (bundle −24%), WCAG 2.1 AA accessibility audit, release-candidate walkthroughs, dead-code cleanup, documentation consolidation, RC-02 release-candidate pass (i18n, empty-state wording, dialog consistency, image placeholders, merchant-friendly Monitoring wording, legacy page deletion — see `docs/RELEASE_REPORT.md`), Backend Finalization Sprint (in progress — `docs/BACKEND_INTEGRATION.md`). Full detail: `docs/FRONTEND-ROADMAP.md`.