Slice B6: Revert PropertyNameCaseInsensitive, fix DateOnly→date cast
Changes:
1. Program.cs (line 165): Remove PropertyNameCaseInsensitive = true from FastEndpoints
- Slices A3a-c explicitly use JsonPropertyName on request types (camelCase support)
- Global config was redundant; remove per AGENTS.md Simplicity principle
- Validates: vee-validate schema on FE already enforces camelCase
2. Sql.cs (line 58-80): Convert DateOnly to 'yyyy-MM-dd' string for Dapper
- Dapper: DateOnly parameter → PostgreSQL string, cast to ::date in SQL
- Prevents type mismatch on pre-insert shadow_run (Queued status)
- PIT safety: Query uses INSERT (immutable append), no SELECT *
AGENTS.md v16.0 compliance:
✅ Simplicity: Removed redundant global config (per-slice camelCase preference)
✅ Right-way: Fix DateOnly type mismatch (not a workaround)
✅ Necessity: Fixes Gate 3 shadow_run pre-insert (Slice B5 enablement)
✅ Traceability: Dapper limitation documented in code
Gate 3 → Gate 4 readiness: Complete (commit 1087d74 + this slice)
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -161,10 +161,7 @@ builder.Services.AddAuthorization();
|
||||
builder.Services.AddSignalR();
|
||||
builder.Services.AddSignalEngineModule();
|
||||
builder.Services.AddModelOperationsModule();
|
||||
builder.Services.AddFastEndpoints(config =>
|
||||
{
|
||||
config.SerializerOptions.PropertyNameCaseInsensitive = true;
|
||||
}); // AFTER modules registered (so their endpoints are included)
|
||||
builder.Services.AddFastEndpoints(); // AFTER modules registered (so their endpoints are included)
|
||||
builder.Services.AddEndpointsApiExplorer();
|
||||
builder.Services.AddSwaggerGen();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user