Hermes 284313f908
Some checks are pending
Bidi Control Character Guard / bidi-control-guard (push) Waiting to run
Circular Dependency Check / Check for new circular dependencies (push) Waiting to run
Citus Migration Smoke / Combined migrations on single-node Citus (push) Waiting to run
E2E Fresh Install Tests / fresh-install-e2e (push) Waiting to run
ext-v2 guardrails / Run ext-v2 guard and ESLint (push) Waiting to run
Integration Tests / Check for relevant changes (push) Waiting to run
Integration Tests / ${{ (github.event_name == 'schedule' || github.event.inputs.suite == 'full') && 'Full integration suite' || 'Tier-1 integration subset' }} (push) Blocked by required conditions
Mobile checks / Mobile lint + typecheck (push) Waiting to run
Mobile checks / Mobile unit tests (push) Waiting to run
Mobile checks / Mobile dependency audit (report) (push) Waiting to run
Mobile checks / Mobile reproducibility checks (push) Waiting to run
Secrets guard (env backups) / Ensure no tracked env backup files (push) Waiting to run
Temporal Readiness / fast-readiness (push) Waiting to run
Temporal Readiness / docker-parity (push) Waiting to run
TypeScript Type Check / Nx affected typecheck (push) Waiting to run
Unit Tests / Skipped-test budget (push) Waiting to run
Unit Tests / Nx affected unit tests (push) Waiting to run
Unit Tests / Server unit coverage (informational) (push) Waiting to run
Validate Tenant Management Schema / Check for relevant changes (push) Waiting to run
Validate Tenant Management Schema / Validate Tenant Management Schema (push) Blocked by required conditions
EE Workflows Build Guard / ee-workflows-build-guard (push) Waiting to run
Initial import of AlgaPSA codebase from PSA server
Excluded: .git, node_modules, secrets/, compose.env, assemblyscript tgz

Source: /opt/alga-psa on psa.joliet.tech
2026-06-22 16:12:17 -05:00

49 lines
8.1 KiB
JSON

[
{"id": "F001", "description": "Audit features/tickets.json and list MSP-specific key gaps (bulk.*, dashboard.*, export.*, settings.*, watchList.*, materials.*, etc.)", "implemented": true, "prdRefs": ["2b-21a/namespace-gaps"]},
{"id": "F002", "description": "Add missing MSP keys to en/features/tickets.json under appropriate groups (bulk, dashboard, export, watchList, materials, settings, quickAdd, properties, validation, errors)", "implemented": true, "prdRefs": ["2b-21a/namespace-gaps"]},
{"id": "F003", "description": "Generate fr/features/tickets.json updates for all new keys added in F002", "implemented": true, "prdRefs": ["2b-21a/non-functional"]},
{"id": "F004", "description": "Generate es/features/tickets.json updates for all new keys", "implemented": true, "prdRefs": ["2b-21a/non-functional"]},
{"id": "F005", "description": "Generate de/features/tickets.json updates for all new keys", "implemented": true, "prdRefs": ["2b-21a/non-functional"]},
{"id": "F006", "description": "Generate nl/features/tickets.json updates for all new keys", "implemented": true, "prdRefs": ["2b-21a/non-functional"]},
{"id": "F007", "description": "Generate it/features/tickets.json updates for all new keys (with accent audit)", "implemented": true, "prdRefs": ["2b-21a/non-functional"]},
{"id": "F008", "description": "Generate pl/features/tickets.json updates for all new keys", "implemented": true, "prdRefs": ["2b-21a/non-functional"]},
{"id": "F009", "description": "Run `node scripts/generate-pseudo-locales.cjs` to regenerate xx/ and yy/ pseudo-locale files from updated English source (do NOT hand-edit pseudo-locales)", "implemented": true, "prdRefs": ["2b-21a/non-functional"]},
{"id": "F010", "description": "Update route namespace coverage so `/msp/settings` and `/msp/service-requests/*` load `features/tickets` for reused ticket components", "implemented": true, "prdRefs": ["2b-21a/acceptance"]},
{"id": "F020", "description": "Wire useTranslation('features/tickets') in TicketingDashboard.tsx — page title, add button, filter labels (status/priority/assignee/response state/due date)", "implemented": true, "prdRefs": ["2b-21a/sub-batch-A"]},
{"id": "F021", "description": "Wire bulk action strings in TicketingDashboard.tsx — move/delete/bundle buttons, selection counts, confirmations, toast messages (with count interpolation)", "implemented": true, "prdRefs": ["2b-21a/sub-batch-A"]},
{"id": "F022", "description": "Wire TicketingDashboard.tsx empty states, loading text, error toasts, board-switching confirmations", "implemented": true, "prdRefs": ["2b-21a/sub-batch-A"]},
{"id": "F023", "description": "Wire useTranslation in QuickAddTicket.tsx — dialog title, field labels, placeholders", "implemented": true, "prdRefs": ["2b-21a/sub-batch-A"]},
{"id": "F023A", "description": "Finish QuickAddTicket.tsx field-chrome i18n missed by the earlier audit — ITIL matrix labels, team-member picker section label, unnamed location fallback", "implemented": true, "prdRefs": ["2b-21a/sub-batch-A"]},
{"id": "F024", "description": "Wire QuickAddTicket.tsx validation errors, submit/cancel buttons, tag creation flow strings, toast messages", "implemented": true, "prdRefs": ["2b-21a/sub-batch-A"]},
{"id": "F025", "description": "Wire useTranslation in ticket/TicketInfo.tsx — detail header, field labels, action buttons", "implemented": true, "prdRefs": ["2b-21a/sub-batch-A"]},
{"id": "F026", "description": "Wire TicketInfo.tsx confirmation dialogs, inline edit triggers, toast messages", "implemented": true, "prdRefs": ["2b-21a/sub-batch-A"]},
{"id": "F027", "description": "Wire useTranslation in ticket/TicketProperties.tsx — side panel labels, status/priority/board selects, assignment UI", "implemented": true, "prdRefs": ["2b-21a/sub-batch-A"]},
{"id": "F028", "description": "Wire TicketProperties.tsx inline edit controls, change confirmations, board-change reselection prompts", "implemented": true, "prdRefs": ["2b-21a/sub-batch-A"]},
{"id": "F030", "description": "Wire useTranslation in settings/CategoriesSettings.tsx — board/channel scope selector, category tree labels", "implemented": true, "prdRefs": ["2b-21a/sub-batch-B"]},
{"id": "F031", "description": "Wire CategoriesSettings.tsx add/edit/delete dialogs, validation messages, toast confirmations", "implemented": true, "prdRefs": ["2b-21a/sub-batch-B"]},
{"id": "F032", "description": "Wire useTranslation in TicketExportDialog.tsx — format options (CSV/XLSX), column picker, date range labels", "implemented": true, "prdRefs": ["2b-21a/sub-batch-B"]},
{"id": "F033", "description": "Wire TicketExportDialog.tsx action buttons, download/failure toasts, progress messaging", "implemented": true, "prdRefs": ["2b-21a/sub-batch-B"]},
{"id": "F034", "description": "Wire useTranslation in ticket/TicketMaterialsCard.tsx — materials list, add dialog, cost labels", "implemented": true, "prdRefs": ["2b-21a/sub-batch-B"]},
{"id": "F035", "description": "Wire TicketMaterialsCard.tsx delete confirmations, empty states, validation errors", "implemented": true, "prdRefs": ["2b-21a/sub-batch-B"]},
{"id": "F036", "description": "Wire useTranslation in settings/DisplaySettings.tsx — column visibility toggles, sort options", "implemented": true, "prdRefs": ["2b-21a/sub-batch-B"]},
{"id": "F037", "description": "Wire DisplaySettings.tsx save/reset buttons, per-user preference labels", "implemented": true, "prdRefs": ["2b-21a/sub-batch-B"]},
{"id": "F040", "description": "Wire useTranslation in ticket/TicketWatchListCard.tsx — watcher list, add/remove buttons, empty state", "implemented": true, "prdRefs": ["2b-21a/sub-batch-C"]},
{"id": "F041", "description": "Wire useTranslation in ticket/TicketEmailNotifications.tsx — notification toggle labels, help text", "implemented": true, "prdRefs": ["2b-21a/sub-batch-C"]},
{"id": "F042", "description": "Wire useTranslation in ResponseStateSelect.tsx — response state option labels (All/Awaiting Client/Awaiting Internal/None)", "implemented": true, "prdRefs": ["2b-21a/sub-batch-C"]},
{"id": "F043", "description": "Wire useTranslation in QuickAddCategory.tsx — inline category creation dialog, validation", "implemented": true, "prdRefs": ["2b-21a/sub-batch-C"]},
{"id": "F044", "description": "Wire useTranslation in ticket/TicketDetailsContainer.tsx — loading/error states, not-found messaging", "implemented": true, "prdRefs": ["2b-21a/sub-batch-C"]},
{"id": "F045", "description": "Wire useTranslation in CategoryPicker.tsx — picker placeholder, empty state, search label", "implemented": true, "prdRefs": ["2b-21a/sub-batch-C"]},
{"id": "F046", "description": "Wire useTranslation in ticket/CommentMetadataDebugModal.tsx (dev-facing; translate user-visible strings only)", "implemented": true, "prdRefs": ["2b-21a/sub-batch-C"]},
{"id": "F047", "description": "Wire useTranslation in ticket/TicketNavigation.tsx — prev/next button labels", "implemented": true, "prdRefs": ["2b-21a/sub-batch-C"]},
{"id": "F048", "description": "Wire useTranslation in TicketingDashboardContainer.tsx — any visible strings in wrapper/container", "implemented": true, "prdRefs": ["2b-21a/sub-batch-C"]},
{"id": "F049", "description": "Audit and wire TicketOriginBadge.tsx and ResponseSourceBadge.tsx — origin/source labels (may need new keys in origin.* / responseSource.*)", "implemented": true, "prdRefs": ["2b-21a/sub-batch-C"]},
{"id": "F050", "description": "Confirm zero-string components (TicketDetailsSkeleton, AgentScheduleDrawerStyles, TicketListSkeleton, AgentScheduleDrawer re-export shim) and document as N/A", "implemented": true, "prdRefs": ["2b-21a/sub-batch-C"]},
{"id": "F060", "description": "Run `node scripts/validate-translations.cjs` and resolve any key parity issues across all 9 locales (exit code 0 required)", "implemented": true, "prdRefs": ["2b-21a/acceptance"]},
{"id": "F061", "description": "Update parent plan .ai/translation/MSP_i18n_plan.md — mark 2b-21a ✅ DONE with final string count", "implemented": true, "prdRefs": ["2b-21a/acceptance"]},
{"id": "F062", "description": "Update SCRATCHPAD.md with final key count, any namespace design decisions, and deferred items", "implemented": true, "prdRefs": ["2b-21a/acceptance"]}
]