Area: admin-dashboard/ · Difficulty: easy
Problem
admin-dashboard/pages/health.tsx still renders hardcoded English copy (for example Control-plane health, Re-run, All systems healthy, and No report available.) instead of using the admin i18n hook. That makes the health page inconsistent with the localized admin surfaces and leaves it untranslated when the operator switches locales.
Scope
Import useI18n from admin-dashboard/lib/i18n and wrap the page's user-facing strings in t(), following the same pattern used by localized admin pages such as members.tsx and the existing queue i18n issue. Keep this scoped to text/i18n wiring only — no data-flow or layout changes.
Acceptance
- Switching the admin locale away from English updates the visible
health.tsx strings.
- The page behavior, polling, and status rendering stay unchanged.
cd admin-dashboard && npm run typecheck passes.
Why this is a good first issue
Single-file UI cleanup with a clear pattern to copy, visible before/after verification, and no backend or state-management risk.
Area:
admin-dashboard/· Difficulty: easyProblem
admin-dashboard/pages/health.tsxstill renders hardcoded English copy (for exampleControl-plane health,Re-run,All systems healthy, andNo report available.) instead of using the admin i18n hook. That makes the health page inconsistent with the localized admin surfaces and leaves it untranslated when the operator switches locales.Scope
Import
useI18nfromadmin-dashboard/lib/i18nand wrap the page's user-facing strings int(), following the same pattern used by localized admin pages such asmembers.tsxand the existing queue i18n issue. Keep this scoped to text/i18n wiring only — no data-flow or layout changes.Acceptance
health.tsxstrings.cd admin-dashboard && npm run typecheckpasses.Why this is a good first issue
Single-file UI cleanup with a clear pattern to copy, visible before/after verification, and no backend or state-management risk.