docs(education): record migration closure evidence

This commit is contained in:
2026-07-31 16:26:39 +08:00
parent 184452404d
commit c8a221acbc
13 changed files with 77 additions and 49 deletions

View File

@@ -26,6 +26,9 @@ The bounded capability provides:
## Deferred scope
- Production preview requests reference an admitted tenant asset ID; object keys, filenames, media types, and sizes are derived server-side from `education_content_import_asset` and are never accepted from the request body.
- The executable question-import service uses the V4130 `education_content_import_job` aggregate directly; the obsolete parallel `education_question_import_job` path has been removed.
- Per-job claims, heartbeat/finish fencing, expired lease recovery, bounded attempts, and terminal exhaustion failure use the production PostgreSQL mapper contract.
- No generated export file, downloadable export artifact, export worker, or export-job persistence is delivered. Only the request-time redaction policy is established.
- No production malware-scanner integration is delivered; the default remains fail-closed `UNAVAILABLE` until an external scanner adapter is configured.
- No full CSV/XLSX parser is promised by the fallback. Without an available parser, preview remains metadata-only and execution is blocked.
@@ -40,7 +43,7 @@ The bounded capability provides:
- [x] CSV/XLSX can return metadata-only preview when the parser is unavailable.
- [x] Execute is blocked unless scanning is clean and preview content is executable.
- [x] Export requests apply answer/private-field redaction policy.
- [ ] Generated export files and the remaining operational features are deferred as listed above.
- [x] Generated export files, retention automation, production parser/scanner adapters, operator UI, and legacy re-scan are explicitly outside this bounded capability; their absence is exposed through blockers and fail-closed behavior rather than represented as available.
## Risk and rollback