Files
MOPC-Portal/docs/round-redesign-architecture-docs/mixed-round-design-implementation-docs/shared/dependency-refit-inventory.md
Matt 331b67dae0 Round system redesign: Phases 1-7 complete
Full pipeline/track/stage architecture replacing the legacy round system.

Schema: 11 new models (Pipeline, Track, Stage, StageTransition,
ProjectStageState, RoutingRule, Cohort, CohortProject, LiveProgressCursor,
OverrideAction, AudienceVoter) + 8 new enums.

Backend: 9 new routers (pipeline, stage, routing, stageFiltering,
stageAssignment, cohort, live, decision, award) + 6 new services
(stage-engine, routing-engine, stage-filtering, stage-assignment,
stage-notifications, live-control).

Frontend: Pipeline wizard (17 components), jury stage pages (7),
applicant pipeline pages (3), public stage pages (2), admin pipeline
pages (5), shared stage components (3), SSE route, live hook.

Phase 6 refit: 23 routers/services migrated from roundId to stageId,
all frontend components refitted. Deleted round.ts (985 lines),
roundTemplate.ts, round-helpers.ts, round-settings.ts, round-type-settings.tsx,
10 legacy admin pages, 7 legacy jury pages, 3 legacy dialogs.

Phase 7 validation: 36 tests (10 unit + 8 integration files) all passing,
TypeScript 0 errors, Next.js build succeeds, 13 integrity checks,
legacy symbol sweep clean, auto-seed on first Docker startup.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 13:57:09 +01:00

2.5 KiB

Dependency Refit Inventory

This inventory is release-blocking. Every listed module must be validated against the new contracts.

Backend Routers

  • src/server/routers/_app.ts
  • src/server/routers/round.ts
  • src/server/routers/filtering.ts
  • src/server/routers/live-voting.ts
  • src/server/routers/specialAward.ts
  • src/server/routers/assignment.ts
  • src/server/routers/evaluation.ts
  • src/server/routers/file.ts
  • src/server/routers/project.ts
  • src/server/routers/project-pool.ts
  • src/server/routers/application.ts
  • src/server/routers/applicant.ts
  • src/server/routers/export.ts
  • src/server/routers/analytics.ts
  • src/server/routers/program.ts
  • src/server/routers/roundTemplate.ts
  • src/server/routers/gracePeriod.ts
  • src/server/routers/webhook.ts

Backend Services

  • src/server/services/smart-assignment.ts
  • src/server/services/ai-filtering.ts
  • src/server/services/ai-evaluation-summary.ts
  • src/server/services/evaluation-reminders.ts
  • src/server/services/in-app-notification.ts
  • src/server/services/award-eligibility-job.ts
  • src/server/services/webhook-dispatcher.ts

Admin Surfaces

  • src/app/(admin)/admin/rounds/**
  • src/app/(admin)/admin/awards/**
  • src/app/(admin)/admin/reports/page.tsx
  • src/components/admin/round-pipeline.tsx
  • src/components/admin/assign-projects-dialog.tsx
  • src/components/admin/advance-projects-dialog.tsx
  • src/components/admin/remove-projects-dialog.tsx
  • src/components/admin/file-requirements-editor.tsx
  • src/components/forms/round-type-settings.tsx

Jury, Applicant, Public

  • src/app/(jury)/jury/**
  • src/components/jury/**
  • src/app/(applicant)/applicant/**
  • src/app/(public)/apply/**
  • src/app/(public)/my-submission/**
  • src/app/(public)/vote/**
  • src/app/(public)/live-scores/**

Reporting and Exports

  • chart and observer modules under src/components/charts/** and src/components/observer/**
  • export and PDF paths under src/components/shared/export-pdf-button.tsx, src/components/admin/pdf-report.tsx, src/server/routers/export.ts

Schema and Seed Paths

  • prisma/schema.prisma
  • relevant migrations and seed scripts under prisma/

Mandatory Legacy Sweep Queries (Release Blockers)

  1. rg "trpc\.round" src
  2. rg "\broundId\b" src/server src/components src/app
  3. rg "round\.settingsJson|roundType" src/server src/components src/app
  4. rg "model Round|enum RoundType" prisma/schema.prisma

Allowlist exceptions (if any) must be explicit and approved in Phase 06 gates.