Files
ruoyi-vue-pro/docs/education/migration/issues/README.md

3.3 KiB

Education Migration Tickets

This directory turns GOAL.md into executable, blocker-aware vertical slices.

Workflow

  1. Work only tickets whose blockers are complete.
  2. Start each implementation ticket in a fresh context after reading GOAL.md, the ticket, relevant decisions, and current Git status.
  3. Preserve the dirty working tree. Implementation is serial unless an isolated worktree and integration plan are explicit.
  4. Apply TDD at the ticket's declared seams.
  5. Use flyway-postgresql for every schema, index, constraint, seed, baseline, backfill, or Flyway configuration change.
  6. Close with focused tests, git diff --check, and mvn -pl yudao-server -am -DskipTests clean compile.
  7. Report exact commands and results. Never report PostgreSQL migration success without an actual successful PostgreSQL run.

Status vocabulary

  • done: implemented and verified to the ticket's current acceptance criteria.
  • in-progress: currently being implemented.
  • ready: all blockers complete and no unresolved decision prevents work.
  • blocked: depends on another ticket or product decision.
  • decision: produces a recorded decision rather than production behavior.

Ticket graph

EDU-000 Phase 0 artifacts                           done
  ├── EDU-001 Safe question content                 done, follow-up coverage remains
  ├── EDU-002 Practice regression baseline          done
  │     ├── EDU-016 PostgreSQL persistence tests    done; temporary bridge blocked on EDU-005/EDU-006
  │     └── EDU-006 Practice schema Flyway          done
  │           ├── EDU-007 Create/restore practice   done
  │           ├── EDU-008 Idempotent answer save    done
  │           └── EDU-009 Atomic submit/report      done
  ├── EDU-003 Tenant resolution decision            done
  │     └── EDU-004 Tenant/identity security        done; ingress/IP-only probing throttle remains operational blocker
  └── EDU-005 PostgreSQL/Flyway takeover decision   done

EDU-009 + provider/content decisions
  └── EDU-010 Tenant content publication            in progress (Manual Collection delivered; category/blueprint remain)
        └── EDU-011 Import/export/assets/scanning   blocked; contract disposition exposed by capability manifest

EDU-004
  └── EDU-012 Classes and education relationships   blocked; contract disposition exposed by capability manifest

Commerce ownership decisions
  └── EDU-013 Education commercialization           product decision required; fail-closed disposition exposed

All owner/contract decisions
  └── EDU-014 Extended learning waves               product decision required; family decomposition remains
        └── EDU-015 Operational independence        legacy-dependent under SCALAR_READ; target-only proof remains
  1. EDU-010 — Continue with the provider-consistent question publication lifecycle; V4070 graph integrity is delivered.
  2. Continue through EDU-011/EDU-012 as their blockers clear.

Phase 0 completion caveat

Phase 0 artifacts exist, but several architecture and product decisions remain open. EDU-000 is considered complete as an inventory deliverable, not as resolution of every decision it discovered.