chore: update solution and remove obsolete documentation
This commit is contained in:
30
AGENTS.md
30
AGENTS.md
@@ -1,30 +0,0 @@
|
||||
# AGENTS
|
||||
|
||||
## Repo Snapshot (verified)
|
||||
- This is a .NET 8 solution with 4 projects: API (`src/presentation/DigitalData.TaskFlow.API`), Application, Domain, Infrastructure.
|
||||
- `Program.cs` only wires DI + Swagger + `MapControllers`; there are currently no controller classes, so no HTTP endpoints are exposed yet.
|
||||
- There is no test project in the repository right now.
|
||||
|
||||
## High-value Commands
|
||||
- Restore/build whole solution from repo root:
|
||||
- `dotnet restore DigitalData.TaskFlow.sln`
|
||||
- `dotnet build DigitalData.TaskFlow.sln`
|
||||
- Run API project:
|
||||
- `dotnet run --project src/presentation/DigitalData.TaskFlow.API/DigitalData.TaskFlow.API.csproj`
|
||||
- Focused build for one layer:
|
||||
- `dotnet build src/core/DigitalData.TaskFlow.Application/DigitalData.TaskFlow.Application.csproj`
|
||||
|
||||
## Architecture That Matters During Edits
|
||||
- Dependency direction is strict: `API -> Application -> Domain`; `Infrastructure` depends on `Application` + `Domain` and is injected by API.
|
||||
- Application layer uses MediatR + FluentValidation pipeline behavior (`ValidationBehavior<,>`) + AutoMapper profile (`ApplicationMappingProfile`).
|
||||
- Response contract is centralized in Domain `ApiEnvelope<T>` + `MetaEntry`; use `ApiEnvelopeFactory` for consistent `meta.code/message` mapping.
|
||||
- Infrastructure registers `TaskFlowDbContext` and repository interfaces in `DependencyInjection.cs`; missing `ConnectionStrings:TaskFlowDb` throws at startup.
|
||||
- DB row-shape models (for procedures/views) live in Infrastructure (`Persistence/Models`), not in Domain.
|
||||
|
||||
## Current Implementation Gaps (easy to miss)
|
||||
- `DocumentRepository` and `WorkflowRepository.CloseAsync` are still baseline/stub implementations returning placeholder data.
|
||||
- `WorkflowListingReadModel` column mapping is based on read-only DB metadata and observed SP result sets; final shape must be re-verified from DB metadata (`sp_describe_first_result_set` or equivalent) before production hardening.
|
||||
- `Swagger:EnabledInProduction` exists in config model but is not used in `Program.cs` yet.
|
||||
|
||||
## Config/Security Gotcha
|
||||
- `src/presentation/DigitalData.TaskFlow.API/appsettings.json` currently contains a concrete SQL connection string and a MediatR license key; treat this file as sensitive and avoid propagating those values in docs, logs, or commits.
|
||||
@@ -1,23 +1,28 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.0.31903.59
|
||||
VisualStudioVersion = 17.14.36717.8
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DigitalData.TaskFlow.API", "src\presentation\DigitalData.TaskFlow.API\DigitalData.TaskFlow.API.csproj", "{C0F3BD78-47FF-4320-A139-99D42648BA6B}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{02EA681E-C7D8-13C7-8484-4AC65E1B71E8}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "presentation", "presentation", "{BC4CBCBB-D810-4AA5-855C-C9E8FDADA008}"
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "presentation", "presentation", "{4F1A8452-FAEC-4EE4-87A3-DB0AF05B780F}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "core", "core", "{06231918-0EB3-49B0-B6CA-2A441D58B02F}"
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{8EC462FD-D22E-90A8-E5CE-7E832BA40C5D}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
.gitignore = .gitignore
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "infrastructure", "infrastructure", "{FD60D353-ABC5-4C93-92E5-069EE28B452E}"
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "core", "core", "{C3F5466A-4F6B-4DF3-B594-2B4FE943AC1E}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DigitalData.TaskFlow.API", "src\presentation\DigitalData.TaskFlow.API\DigitalData.TaskFlow.API.csproj", "{DAECF4CE-7AE3-4DBE-8D32-F5F2B4EC8AEC}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DigitalData.TaskFlow.Domain", "src\core\DigitalData.TaskFlow.Domain\DigitalData.TaskFlow.Domain.csproj", "{42B3A931-DDB1-4648-9EFA-9812354C6982}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DigitalData.TaskFlow.Domain", "src\core\DigitalData.TaskFlow.Domain\DigitalData.TaskFlow.Domain.csproj", "{EA5328FE-D015-4DAF-838D-57B4218ADA15}"
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "infrastructure", "infrastructure", "{9C44DE52-84B0-4441-9419-E810762D195D}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DigitalData.TaskFlow.Application", "src\core\DigitalData.TaskFlow.Application\DigitalData.TaskFlow.Application.csproj", "{104944BD-55C2-458C-B0C6-1B41C84B2C08}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DigitalData.TaskFlow.Infrastructure", "src\infrastructure\DigitalData.TaskFlow.Infrastructure\DigitalData.TaskFlow.Infrastructure.csproj", "{D414DF56-EBE6-4972-B76C-4004F1CEA812}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DigitalData.TaskFlow.Infrastructure", "src\infrastructure\DigitalData.TaskFlow.Infrastructure\DigitalData.TaskFlow.Infrastructure.csproj", "{D4459BE4-B483-46E8-9052-523646D24B90}"
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DigitalData.TaskFlow.Application", "src\core\DigitalData.TaskFlow.Application\DigitalData.TaskFlow.Application.csproj", "{FAC8E4F4-C0B2-4582-A5CE-A8BC76A135B8}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
@@ -25,36 +30,36 @@ Global
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{DAECF4CE-7AE3-4DBE-8D32-F5F2B4EC8AEC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{DAECF4CE-7AE3-4DBE-8D32-F5F2B4EC8AEC}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{DAECF4CE-7AE3-4DBE-8D32-F5F2B4EC8AEC}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{DAECF4CE-7AE3-4DBE-8D32-F5F2B4EC8AEC}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{EA5328FE-D015-4DAF-838D-57B4218ADA15}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{EA5328FE-D015-4DAF-838D-57B4218ADA15}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{EA5328FE-D015-4DAF-838D-57B4218ADA15}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{EA5328FE-D015-4DAF-838D-57B4218ADA15}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{104944BD-55C2-458C-B0C6-1B41C84B2C08}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{104944BD-55C2-458C-B0C6-1B41C84B2C08}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{104944BD-55C2-458C-B0C6-1B41C84B2C08}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{104944BD-55C2-458C-B0C6-1B41C84B2C08}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{D4459BE4-B483-46E8-9052-523646D24B90}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{D4459BE4-B483-46E8-9052-523646D24B90}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{D4459BE4-B483-46E8-9052-523646D24B90}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{D4459BE4-B483-46E8-9052-523646D24B90}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{C0F3BD78-47FF-4320-A139-99D42648BA6B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{C0F3BD78-47FF-4320-A139-99D42648BA6B}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{C0F3BD78-47FF-4320-A139-99D42648BA6B}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{C0F3BD78-47FF-4320-A139-99D42648BA6B}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{42B3A931-DDB1-4648-9EFA-9812354C6982}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{42B3A931-DDB1-4648-9EFA-9812354C6982}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{42B3A931-DDB1-4648-9EFA-9812354C6982}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{42B3A931-DDB1-4648-9EFA-9812354C6982}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{D414DF56-EBE6-4972-B76C-4004F1CEA812}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{D414DF56-EBE6-4972-B76C-4004F1CEA812}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{D414DF56-EBE6-4972-B76C-4004F1CEA812}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{D414DF56-EBE6-4972-B76C-4004F1CEA812}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{FAC8E4F4-C0B2-4582-A5CE-A8BC76A135B8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{FAC8E4F4-C0B2-4582-A5CE-A8BC76A135B8}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{FAC8E4F4-C0B2-4582-A5CE-A8BC76A135B8}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{FAC8E4F4-C0B2-4582-A5CE-A8BC76A135B8}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(NestedProjects) = preSolution
|
||||
{BC4CBCBB-D810-4AA5-855C-C9E8FDADA008} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8}
|
||||
{06231918-0EB3-49B0-B6CA-2A441D58B02F} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8}
|
||||
{FD60D353-ABC5-4C93-92E5-069EE28B452E} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8}
|
||||
{DAECF4CE-7AE3-4DBE-8D32-F5F2B4EC8AEC} = {BC4CBCBB-D810-4AA5-855C-C9E8FDADA008}
|
||||
{EA5328FE-D015-4DAF-838D-57B4218ADA15} = {06231918-0EB3-49B0-B6CA-2A441D58B02F}
|
||||
{104944BD-55C2-458C-B0C6-1B41C84B2C08} = {06231918-0EB3-49B0-B6CA-2A441D58B02F}
|
||||
{D4459BE4-B483-46E8-9052-523646D24B90} = {FD60D353-ABC5-4C93-92E5-069EE28B452E}
|
||||
{C0F3BD78-47FF-4320-A139-99D42648BA6B} = {4F1A8452-FAEC-4EE4-87A3-DB0AF05B780F}
|
||||
{4F1A8452-FAEC-4EE4-87A3-DB0AF05B780F} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8}
|
||||
{C3F5466A-4F6B-4DF3-B594-2B4FE943AC1E} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8}
|
||||
{42B3A931-DDB1-4648-9EFA-9812354C6982} = {C3F5466A-4F6B-4DF3-B594-2B4FE943AC1E}
|
||||
{9C44DE52-84B0-4441-9419-E810762D195D} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8}
|
||||
{D414DF56-EBE6-4972-B76C-4004F1CEA812} = {9C44DE52-84B0-4441-9419-E810762D195D}
|
||||
{FAC8E4F4-C0B2-4582-A5CE-A8BC76A135B8} = {C3F5466A-4F6B-4DF3-B594-2B4FE943AC1E}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {95DC4052-26B6-44D1-8B13-9D934628204D}
|
||||
SolutionGuid = {9CDB06DD-EB59-4309-8B48-B34F488F9D2F}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
||||
Reference in New Issue
Block a user