48a7f5a825
Five-project Clean Architecture solution (Core/Infrastructure/App + Core.Tests/ Integration.Tests) on .NET 10 with central package management, snake_case EF mapping, and shared build/style config. - Full domain entity set + EF DbContext for the SDD §5.3 schema (singular table names). - InitialSchema migration (relational) + TimescaleHypertables migration (raw SQL: create_hypertable + compression on reading, hypertable on consumption). - App wiring: Serilog (actually wired, unlike MQTTower), DbContext, migrate-on-startup, /healthz. Serves plain HTTP behind a reverse proxy (no HTTPS redirect). - deploy/Dockerfile (2-stage, ICU-capable) + docker-compose (app + timescaledb). - Integration.Tests: shared TimescaleFixture (Testcontainers) — migrations, hypertables, compression policy, and /healthz all verified green (4/4). Claude-Session: https://claude.ai/code/session_01WujdMtMJPbxDpDnMeK22rr
20 lines
649 B
XML
20 lines
649 B
XML
<Solution>
|
|
<Folder Name="/src/" />
|
|
<Folder Name="/src/App/">
|
|
<Project Path="src/App/MeterVault.App.csproj" />
|
|
</Folder>
|
|
<Folder Name="/src/Core/">
|
|
<Project Path="src/Core/MeterVault.Core.csproj" />
|
|
</Folder>
|
|
<Folder Name="/src/Infrastructure/">
|
|
<Project Path="src/Infrastructure/MeterVault.Infrastructure.csproj" />
|
|
</Folder>
|
|
<Folder Name="/tests/" />
|
|
<Folder Name="/tests/Core.Tests/">
|
|
<Project Path="tests/Core.Tests/MeterVault.Core.Tests.csproj" />
|
|
</Folder>
|
|
<Folder Name="/tests/Integration.Tests/">
|
|
<Project Path="tests/Integration.Tests/MeterVault.Integration.Tests.csproj" />
|
|
</Folder>
|
|
</Solution>
|