refactor: restructure solution into -models/-data/-api project taxonomy #20
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What
Full restructure of the myAi solution project layout across 10 phases, separating concerns cleanly into executables, domain-contracts, data-layer, and shared-primitive projects.
Why
Three structural problems existed:
ag-api), making the migration host unintuitive.
Project taxonomy (target state)
Changes
Phase 1 — Rename shared-models → common; namespace Shared.Models → Common
Phase 2 — Create shared-data with abstract BaseEntity (
equired string Id { get; init; } + DateTime CreatedAt)
Phase 3 — Rename myai-models → myai-data; namespace MyAi.Models → MyAi.Data; MigrationsAssembly("myai-data")
Phase 4 — Rename cv-search-models → cv-search-data; move JobSearchSettings to cv-matcher-api-models; entities inherit BaseEntity
Phase 5 — Extract
ag-data from
ag-api (RagDbContext + entities + migrations); fix duplicate service registrations; MigrationsAssembly("rag-data")
Phase 6 — Extract cv-matcher-data from cv-matcher-api (CvMatcherDbContext + entities + migrations); MigrationsAssembly("cv-matcher-data")
Phase 7 — Create empty cv-cleanup-job-models and cv-search-job-models (proactive)
Phase 8 — Update all 5 Dockerfiles for renamed/new projects
Phase 9 — Add Models/ and Data/ virtual solution folders in .sln; update root CLAUDE.md, cv-matcher-api/CLAUDE.md, cv-search-job/CLAUDE.md
Phase 10 — Add Directory.Packages.props for central NuGet version management; remove Version= from all elements
Testing
Commit
95ed36 on branch
efactor/models-data-layer-structure — 105 files changed
testto refactor: restructure solution into -models/-data/-api project taxonomy