# 09. Appendix: System Inventory (As Reviewed) ## 1) Data Model Inventory (Selected Competition-Critical Models) ### Pipeline/Stage Engine - `Pipeline` - `Track` - `Stage` - `StageTransition` - `ProjectStageState` - `Cohort` - `CohortProject` - `LiveProgressCursor` - `OverrideAction` - `DecisionAuditLog` ### Assignment/Evaluation - `Assignment` - `AssignmentJob` - `Evaluation` - `EvaluationForm` - `EvaluationSummary` - `EvaluationDiscussion` - `DiscussionComment` - `ConflictOfInterest` - `GracePeriod` - `ReminderLog` ### Filtering - `FilteringRule` - `FilteringResult` - `FilteringJob` ### Awards - `SpecialAward` - `AwardEligibility` - `AwardJuror` - `AwardVote` ### Mentorship - `MentorAssignment` - `MentorMessage` - `MentorNote` - `MentorMilestone` - `MentorMilestoneCompletion` ### Documents/Submission - `FileRequirement` - `ProjectFile` ### Live Voting - `LiveVotingSession` - `LiveVote` - `AudienceVoter` ### Identity/Team - `User` - `TeamMember` ## 2) Service Inventory (Competition-Critical) - `src/server/services/stage-engine.ts` - `src/server/services/stage-filtering.ts` - `src/server/services/stage-assignment.ts` - `src/server/services/live-control.ts` - `src/server/services/stage-notifications.ts` - `src/server/services/evaluation-reminders.ts` - `src/server/services/smart-assignment.ts` - `src/server/services/ai-assignment.ts` - `src/server/services/ai-filtering.ts` - `src/server/services/award-eligibility-job.ts` - `src/server/services/mentor-matching.ts` ## 3) tRPC Router Inventory - `program` - `project` - `user` - `assignment` - `evaluation` - `file` - `export` - `audit` - `settings` - `gracePeriod` - `learningResource` - `partner` - `notionImport` - `typeformImport` - `tag` - `applicant` - `liveVoting` - `analytics` - `avatar` - `logo` - `application` - `mentor` - `filtering` - `specialAward` - `notification` - `message` - `webhook` - `projectPool` - `wizardTemplate` - `dashboard` - `pipeline` - `stage` - `stageFiltering` - `stageAssignment` - `cohort` - `live` - `decision` - `award` ## 4) Page Inventory (High-Level by Role Group) ### Admin - members, invite members, programs, apply settings, pipeline wizard/advanced/editor, projects, mentors, awards, reports, settings, audit, messaging, partner, learning ### Applicant - dashboard, team, pipeline views, stage docs/status views, mentoring, document center ### Jury - stage list, assignment list, project evaluate pages, compare page, live page, awards, learning ### Mentor - dashboard, projects, project detail, resources ### Auth/Public - apply, edition apply, accept invite, login, onboarding, set password, public vote/live score, submission pages ## 5) Existing Test Inventory ### Unit - `tests/unit/stage-engine.test.ts` - `tests/unit/stage-assignment.test.ts` - `tests/unit/stage-filtering.test.ts` - `tests/unit/live-control.test.ts` - `tests/unit/override-validation.test.ts` - `tests/unit/award-governance.test.ts` ### Integration - `tests/integration/pipeline-crud.test.ts` - `tests/integration/stage-config.test.ts` - `tests/integration/assignment-preview.test.ts` - `tests/integration/cohort-voting.test.ts` - `tests/integration/live-runtime.test.ts` - `tests/integration/decision-audit.test.ts` ## 6) Legacy/Transition Observations 1. `roundId` fields still exist as legacy optional references in multiple models. 2. Stage/pipeline is active architecture but legacy wording remains in some routers/comments/UI labels. 3. Some critical business rules still rely on JSON keys and implicit route behavior. This inventory is the baseline used for the redesign and migration plans in this folder.