3.3 KiB
3.3 KiB
Project Factory V1 Closeout Plan
Goal: Complete P1-M immutable certified artifacts, P1-N Docker Preview Worker isolation, and P1-O golden-sample acceptance.
Tech stack: Java 8, Spring, MyBatis, MySQL, Docker CLI contract, Vue 3, Element Plus, JUnit 4, Mockito, Node test runner, Vite.
Task 1: Certified artifact ledger and store
- Write RED schema, mapper and immutable store tests.
- Add artifact model, mapper, SQL and local atomic store.
- Freeze ZIP plus canonical quality report after four checks pass.
- Reject stale, incomplete and non-ready artifacts.
Task 2: Certified download integration
- Write RED controller/service tests proving CERTIFIED never calls live ZIP generation.
- Add artifact query/download APIs and integrity verification.
- Return artifact identity and hashes in response headers.
- Keep DRAFT behavior compatible.
Task 3: Persistent preview jobs
- Write RED schema, mapper and service state-machine tests.
- Add project preview job model, mapper and SQL.
- Change run-preview service boundary to enqueue/read/stop persistent jobs.
- Ensure duplicate starts are idempotent and user scoped.
Task 4: Docker Preview Worker
- Write RED worker, lease fencing, TTL and Docker command tests.
- Add runtime abstraction and constrained Docker CLI implementation.
- Add worker claim, monitor, stop, expiry, bounded logs and screenshot evidence.
- Prohibit fallback to direct host process execution.
Task 5: V1 acceptance ledger
- Write RED schema, mapper and five-check orchestration tests.
- Add Acceptance Run/Check models, mapper, service and golden-sample probes.
- Verify generation, recovery, rollback, container preview and immutable download.
- Add start/latest/history APIs.
Task 6: EasyCode closeout UI
- Write RED source-contract tests for artifact hashes, preview screenshot/TTL and V1 acceptance.
- Update API, delivery panel and generation workspace polling/actions.
- Remove stale certification wording and direct-process assumptions.
- Run main-flow tests and production build.
Task 7: Regression and V1 closure
- Run P1-H through P1-O focused backend tests and
ruoyi-adminfull tests. - Run Mapper XML parsing, SQL consistency, Docker command contract and whitespace checks.
- Run EasyCode focused tests/build and verify the dev URL.
- Record migration boundary, Docker deployment boundary and V1 completion in the roadmap.
Completion Record
- Completed on 2026-07-12.
- P1-H through P1-O focused backend suite: 62 tests passed; the additional preview fencing regression brings the Preview Worker class to 3 passing tests.
ruoyi-adminfull suite: 44 tests passed.- EasyCode main-flow suite: 73 tests passed; production build passed.
- All four affected Mapper XML files parsed successfully, SQL consistency tests passed, Git Bash validated the Worker entrypoint, and
http://localhost:5174returned HTTP 200. - The current machine has no Docker CLI, so the image was not built or started here. Real container and golden-project execution remains a deployment-environment acceptance action, not an unverified local claim.
- No external database migration was executed. Apply
sql/factory_project_v1_closeout.sqlbefore enabling these APIs.