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

227 lines
8.0 KiB
JSON

[
{
"id": "F001",
"description": "Task 2c-1: Delete orphaned model server/src/lib/models/role.ts (0 callers, functionality in packages/auth and packages/users)",
"implemented": true,
"prdRefs": [
"FR-01"
]
},
{
"id": "F002",
"description": "Task 2c-1: Delete orphaned model server/src/lib/models/standardServiceType.ts (0 callers, no package equivalent needed)",
"implemented": true,
"prdRefs": [
"FR-01"
]
},
{
"id": "F003",
"description": "Task 2c-1: Delete orphaned model server/src/lib/models/timeSheetComment.ts (0 callers, TimeSheetService reimplements inline)",
"implemented": true,
"prdRefs": [
"FR-01"
]
},
{
"id": "F004",
"description": "Task 2c-1: Delete orphaned model server/src/lib/models/session.tsx (0 callers, superseded by packages/db/src/models/UserSession.ts)",
"implemented": true,
"prdRefs": [
"FR-01"
]
},
{
"id": "F005",
"description": "Task 2c-1: Delete orphaned model server/src/lib/models/ticketResource.tsx (0 callers, superseded by packages/tickets/src/actions/ticketResourceActions.ts)",
"implemented": true,
"prdRefs": [
"FR-01"
]
},
{
"id": "F006",
"description": "Task 2c-1: Delete orphaned model server/src/lib/models/userPreferences.tsx (0 callers, superseded by packages/db/src/models/userPreferences.ts)",
"implemented": true,
"prdRefs": [
"FR-01"
]
},
{
"id": "F007",
"description": "Task 2c-1: Delete orphaned model server/src/lib/models/notification.ts (0 direct path imports, exact duplicate at packages/notifications/src/types/notification.ts)",
"implemented": true,
"prdRefs": [
"FR-01"
]
},
{
"id": "F008",
"description": "Task 2c-1: Delete empty barrel file server/src/lib/models/index.ts (contains only comments, exports nothing)",
"implemented": true,
"prdRefs": [
"FR-02"
]
},
{
"id": "F009",
"description": "Task 2c-2: Delete orphaned service server/src/lib/services/PasswordResetService.ts (0 callers)",
"implemented": true,
"prdRefs": [
"FR-03"
]
},
{
"id": "F010",
"description": "Task 2c-2: Delete orphaned service server/src/lib/services/taskTypeService.ts (0 callers)",
"implemented": true,
"prdRefs": [
"FR-03"
]
},
{
"id": "F011",
"description": "Task 2c-3: Delete dead email file server/src/lib/email/sendPasswordResetEmail.ts (0 direct imports, package duplicate exists)",
"implemented": true,
"prdRefs": [
"FR-04"
]
},
{
"id": "F012",
"description": "Task 2c-3: Delete dead email file server/src/lib/email/sendPortalInvitationEmail.ts (0 direct imports, package duplicate exists)",
"implemented": true,
"prdRefs": [
"FR-04"
]
},
{
"id": "F013",
"description": "Task 2c-3: Delete dead email file server/src/lib/email/sendVerificationEmail.ts (0 direct imports, package duplicate exists)",
"implemented": true,
"prdRefs": [
"FR-04"
]
},
{
"id": "F014",
"description": "Task 2c-3: Delete dead email file server/src/lib/email/sendCancellationFeedbackEmail.ts (0 direct imports, package duplicate exists)",
"implemented": true,
"prdRefs": [
"FR-04"
]
},
{
"id": "F015",
"description": "Task 2c-3: Delete dead email file server/src/lib/email/clientPortalTenantRecoveryEmail.ts (0 direct imports, package duplicate exists)",
"implemented": true,
"prdRefs": [
"FR-04"
]
},
{
"id": "F016",
"description": "Task 2c-3: Delete dead email file server/src/lib/email/system/SystemEmailProviderFactory.ts (0 direct imports)",
"implemented": true,
"prdRefs": [
"FR-04"
]
},
{
"id": "F017",
"description": "Task 2c-3: Delete dead email directory server/src/lib/email/system/templates/* (0 direct imports)",
"implemented": true,
"prdRefs": [
"FR-04"
]
},
{
"id": "F018",
"description": "Task 2c-3: Delete dead email file server/src/lib/email/tenant/types.ts (0 direct imports)",
"implemented": true,
"prdRefs": [
"FR-04"
]
},
{
"id": "F019",
"description": "Task 2d-1: Delete shim server/src/lib/user-actions/userActions.ts (pure re-export of @alga-psa/users/actions) and update all callers to import from @alga-psa/users/actions directly",
"implemented": true,
"prdRefs": [
"FR-05"
]
},
{
"id": "F020",
"description": "Task 2d-2: Delete shim server/src/lib/eventBus/events.ts (pure re-export of @alga-psa/event-schemas) and update all callers to import from @alga-psa/event-schemas directly",
"implemented": true,
"prdRefs": [
"FR-06"
]
},
{
"id": "F021",
"description": "Task 2d-3: Delete shim server/src/lib/auth/getSession.ts (re-exports getSession, getSessionWithRevocationCheck from @alga-psa/auth) and update all 23 callers (12 server + 11 EE) to import from @alga-psa/auth directly. NOTE: This is the largest single task. Server callers: invoiceService.ts, client-portal/layout.tsx, documents/download route, serverFeatureFlags.tsx, auth/session.ts, assets/page.tsx, assets/[asset_id]/page.tsx, time-sheet-approvals/page.tsx, billingCycleActions.test.ts, extensions/gateway/auth.ts, feature-flags/route.ts. EE callers: msp/layout.tsx, license-actions.ts, 9 tenant-management route handlers.",
"implemented": true,
"prdRefs": [
"FR-07"
]
},
{
"id": "F022",
"description": "Task 2e-1: Update server/src/app/api/public/appointment-request/route.ts to import SystemEmailService from @alga-psa/email instead of @/lib/email/system/SystemEmailService. Delete server/src/lib/email/system/SystemEmailService.ts, server/src/lib/email/system/types.ts, and system/ directory.",
"implemented": true,
"prdRefs": [
"FR-08"
]
},
{
"id": "F023",
"description": "Task 2e-2: Update server/src/test/unit/outboundEmailWorkflowEvents.test.ts to import BaseEmailService from @alga-psa/email instead of ../../lib/email/BaseEmailService. Delete server/src/lib/email/BaseEmailService.ts.",
"implemented": true,
"prdRefs": [
"FR-09"
]
},
{
"id": "F024",
"description": "Task 2e-3: Update server/src/services/surveyService.ts to import DatabaseTemplateProcessor from @alga-psa/email instead of ../lib/email/tenant/templateProcessors. Update server/src/test/integration/surveyEmailTemplates.integration.test.ts similarly. Delete server/src/lib/email/tenant/templateProcessors.ts and tenant/ directory.",
"implemented": true,
"prdRefs": [
"FR-10"
]
},
{
"id": "F025",
"description": "Task 2e-4: Rewrite server/src/lib/email/index.ts to be a pure re-export barrel from @alga-psa/email only. Remove all local file imports. All callers of @/lib/email must still resolve.",
"implemented": true,
"prdRefs": [
"FR-11"
]
},
{
"id": "F026",
"description": "Task 2f-1: Migrate all 9 callers of server/src/lib/models/internalNotification.ts to import types (InternalNotification, CreateInternalNotificationRequest, etc.) from @alga-psa/notifications instead. Delete the server model file.",
"implemented": true,
"prdRefs": [
"FR-12"
]
},
{
"id": "F027",
"description": "Task 2f-2: Migrate 3 callers of server/src/lib/models/document-association.tsx (EntityImageService.ts, documentPermissionUtils.ts, test file) to import DocumentAssociation from @alga-psa/documents/models/documentAssociation. Verify API compatibility. Delete server model.",
"implemented": true,
"prdRefs": [
"FR-13"
]
},
{
"id": "F028",
"description": "Task 2f-3: Add PortalDomainSessionToken exports (consumePortalDomainOtt, pruneExpiredPortalDomainOtts, __setPortalDomainOttConnectionFactoryForTests) to @alga-psa/auth barrel exports. Migrate 4 callers (domain-session/route.ts, route.test.ts, portalDomainSessionOtt.test.ts, prune script). Delete server/src/lib/models/PortalDomainSessionToken.ts.",
"implemented": true,
"prdRefs": [
"FR-14"
]
}
]