52 lines
2.3 KiB
Markdown
52 lines
2.3 KiB
Markdown
# Task D.7.2 Setup Readiness and Verification APIs
|
|
|
|
Date: 2026-07-02
|
|
Status: implemented
|
|
|
|
## Scope Delivered
|
|
|
|
- Added setup API contracts:
|
|
- `src/features/setup/api/types.ts`
|
|
- `src/features/setup/api/service.ts`
|
|
- `src/features/setup/api/queries.ts`
|
|
- Added read-only setup server services:
|
|
- `src/features/setup/server/readiness.service.ts`
|
|
- `src/features/setup/server/verification.service.ts`
|
|
- Added thin protected route handlers:
|
|
- `src/app/api/setup/readiness/route.ts`
|
|
- `src/app/api/setup/verify/route.ts`
|
|
|
|
## Behavior
|
|
|
|
- `GET /api/setup/readiness`
|
|
- protected by `requireSystemRole('super_admin')`
|
|
- returns structured setup readiness checks
|
|
- checks environment, database, migrations/schema queryability, storage smoke test, local upload directory, PDF template/mapping readiness, and optional email configuration
|
|
|
|
- `POST /api/setup/verify`
|
|
- protected by `requireSystemRole('super_admin')`
|
|
- accepts optional `organizationId` and `administratorEmail`
|
|
- falls back to the current session active organization when `organizationId` is not provided
|
|
- returns structured verification checks for administrator, membership, CRM assignment, organization, branch/product type options, document sequences, approval workflow/matrix, PDF, notification templates, report definitions, email config, and planned CSV/manifest checks
|
|
|
|
## Safety Notes
|
|
|
|
- No seed execution was added.
|
|
- No CSV import was added.
|
|
- No reset/reseed behavior was added.
|
|
- No setup state tables or migrations were added.
|
|
- The only intentional write-like behavior is the readiness storage smoke test, which writes a temporary setup object and immediately deletes it. Cleanup failures are reported as warnings.
|
|
- Document sequence checks are read-only and do not call `generateNextDocumentCode()`.
|
|
- Report verification checks query report definition rows directly and do not call report services that audit report views.
|
|
|
|
## Verification
|
|
|
|
- `npm run typecheck`: passed.
|
|
- `npx oxlint src/features/setup src/app/api/setup`: passed.
|
|
- `npm run lint`: failed due to pre-existing unrelated lint errors/warnings outside this task, including `src/features/foundation/document-template/server/management-service.ts` and skill asset scripts.
|
|
|
|
## Follow-up
|
|
|
|
- D.7.3 can add static CSV template pack.
|
|
- D.7.8 should replace planned CSV preview/seed manifest warnings with persisted setup state checks.
|