39 lines
1.5 KiB
Markdown
39 lines
1.5 KiB
Markdown
# V1.2 Task 1 Completion Report
|
|||
|
|
|
||
|
|
## Status
|
||
|
|
|
||
|
|
Completed
|
||
|
|
|
||
|
|
## Implemented
|
||
|
|
|
||
|
|
- Added V062 account lifecycle and profile revision columns.
|
||
|
|
- Added V063 CSV import batch and row tables with idempotency and row-level results.
|
||
|
|
- Added V064 independent consent state and service state tables.
|
||
|
|
- Added hash-only credential entity and lifecycle/import/consent entities.
|
||
|
|
- Backfilled approved existing profiles so `published_profile_revision` equals `profile_revision`.
|
||
|
|
- Added H2 schema coverage and migration/entity contract tests.
|
||
|
|
|
||
|
|
## Database Changes
|
||
|
|
|
||
|
|
- New migrations: `V062__add_v12_user_account_lifecycle.sql`, `V063__add_v12_import_batches.sql`, `V064__add_v12_consent_and_service_state.sql`.
|
||
|
|
- Existing V001-V061 files were not modified.
|
||
|
|
- No plaintext password column exists.
|
||
|
|
|
||
|
|
## Automated Tests
|
||
|
|
|
||
|
|
```text
|
||
|
|
mvn -B -f backend/pom.xml test "-Dtest=V12MigrationContractTest,MigrationValidationTest,EntityMigrationParityTest"
|
||
|
|
21 tests passed, 0 failures, 0 errors
|
||
|
|
```
|
||
|
|
|
||
|
|
The first contract run failed as expected before V062-V064 existed. A parity failure also found the missing `deleted_at` on `user_import_rows`; the migration and H2 schema were corrected and the suite passed.
|
||
|
|
|
||
|
|
## Not Verified
|
||
|
|
|
||
|
|
- Clean PostgreSQL V001-V064 migration was not executed because no isolated PostgreSQL runtime was available in this step.
|
||
|
|
- Profile update transaction and service API gates are intentionally deferred to Task 4.
|
||
|
|
|
||
|
|
## Next Phase
|
||
|
|
|
||
|
|
Task 2: user registration, phone verification, and historical WeChat account association.
|