Some checks failed
Architecture Governance / architecture (push) Has been cancelled
Completes the rest of Sprint 28 on top of the earlier admin-scoped
a11y/skeleton pass (576f260):
- SeoService.resetToDefaults() now reads real bootstrap.seo.default /
branding instead of hardcoded placeholder text + a broken
/og-image.jpg reference; auto-reapplies via an effect() whenever
bootstrap (re)loads, same pattern as UiRuntimeFacade.
- New public/sitemap.xml (static baseline, documented per-tenant-dynamic
limitation) + public/robots.txt Sitemap directive and admin/editor
Disallow rules.
- Global prefers-reduced-motion override in styles.scss covering every
existing hover-transform/fade-in/shimmer animation in one place.
- New adminProducts/adminUsers/adminMonitoring/adminAnalytics
empty-state i18n keys (en/ru/hy) for this sprint's skeleton/empty-state
consistency fixes.
- docs/KNOWN-ISSUES.md: logged a newly-found, much larger pre-existing
gap (~178 missing adminXxx.* i18n keys across the whole admin
backoffice) - deferred to Sprint 29's translation validation, not
fixed here.
- docs/BACKEND.md: new item 17 (sitemap generation gap).
- docs/ADMIN.md, docs/SPRINT-PLAN.md: rewritten Sprint 28 sections to
describe the full, combined scope (both commits) instead of the
earlier admin-only framing.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
3.3 KiB
3.3 KiB
Known Issues (fix after sprint wrap-up)
Running list of bugs spotted during manual verification, deferred until the current sprint's feature work is done. Add to this list as more are found; don't fix inline unless asked.
Open
- ~179 untranslated raw i18n keys across the entire admin backoffice CRUD
UI (products/categories/orders/transactions/users/monitoring/analytics).
translations.ts/en.ts/ru.ts/hy.tshave noadminProducts.*,adminCategories.*,adminOrders.*,adminTransactions.*,adminUsers.*,adminMonitoring.*, oradminAnalytics.*sections at all (confirmed: zero matches for any of these prefixes in any of the 4 i18n files).TranslateService.t()falls through to returning the raw dotted key string when a key isn't found (seetranslate.service.ts), so every templated string in these features (buttons, table headers, filters, badges, empty/placeholder text) renders literally as e.g.adminProducts.createinstead of real copy - same root cause as the already-fixed dashboard Quick Actions bug below, just at the scale of almost the entire admin backoffice built across Sprints 20-27.- Counted by grepping all
'adminXxx.yyy'translate-pipe usages undersrc/app/features/admin/**:adminProducts72,adminCategories23,adminOrders24,adminUsers21,adminMonitoring13,adminAnalytics12,adminTransactions13 (≈178 distinct keys, ×3 locales ≈ 534 strings to author). - Likely why it was never caught: every affected Sprint (20-27) explicitly noted live-browser click-through was blocked on the guarded admin route and verification was tsc/build/arch:check only - none of those catch missing i18n keys (pipe arguments are plain strings, not type-checked).
- Found: 2026-07-15, during Sprint 28 manual audit (reading templates + grepping i18n files, not live browser).
- Deferred to Sprint 29 ("translation validation" is explicit Sprint 29
scope per
docs/SPRINT-PLAN.md) rather than fixed inline during Sprint 28 polish - authoring ~534 correct strings across 3 languages is a large, separate, mechanical pass of its own and shouldn't be rushed inside a polish sprint. Sprint 28 only adds the handful of new keys it introduces itself (empty-state copy for the skeleton/empty-state consistency fix), it does not touch the ~178 pre-existing gap.
- Counted by grepping all
Fixed
- Quick Actions: 3 untranslated raw i18n keys.
dashboard.actionUsers,dashboard.actionMonitoring,dashboard.actionAnalyticsrendered as literal key strings instead of translated labels on the admin dashboard's Quick Actions section, becauseadmin-dashboard.facade.tsreferenced them but they were never added totranslations.ts/en.ts/ru.ts/hy.ts.- Found: 2026-07-15, manual browser verification of
/:lang/backoffice/dashboard?devBypassAdmin=true. - Fixed: 2026-07-15, added the 3 keys to the interface + all 3 locales.
- Found: 2026-07-15, manual browser verification of
Notes (not bugs, just flag before shipping)
src/environments/environment.ts:useMockDatawas temporarily flipped totrueduring this session's manual verification (so Categories/Products dashboard cards showed mock counts instead of erroring against a nonexistent local/api/backoffice/*backend), then reverted back tofalseafterward - matches its pre-session value.