17 lines
1.3 KiB
Markdown
17 lines
1.3 KiB
Markdown
# Technical debt
|
|
|
|
## P1
|
|
|
|
- EF migrations and startup reconciliation still share historical schema ownership. Keep compatibility bootstraps until a production restore rehearsal supports an expand/verify/contract migration.
|
|
- `JobApplication` duplicates opportunity data now owned by `Job`. Keep dual writes and compatibility reads until the production report/restore gate passes and one observation release completes.
|
|
- Background workers are single-instance; add database leasing before deploying more than one backend replica.
|
|
|
|
## P2/P3
|
|
|
|
- Central log aggregation is deployment-owned; add it only when multi-host operation or incident response requires it.
|
|
- Tags remain a JSON string and attachment-purpose flags remain compatibility columns; normalize/remove only with measured need and an API/schema compatibility release.
|
|
- Checklist reads intentionally seed/synchronize system items and are non-cacheable until measured workspace volume justifies separation.
|
|
- Large controllers/components should be split only around a cohesive behavior change with regression coverage; do not perform a standalone rewrite.
|
|
|
|
Intentional design choices are not debt: free-text statuses preserve custom user values, Next.js remains the static shell, and the current CV queue targets one backend instance.
|