V13-FE-006: consolidate approved UI and contract hardening
deploy / deploy (push) Successful in 1m52s
deploy / notify (push) Successful in 1s

This commit is contained in:
2026-08-13 02:41:00 +09:00
parent d79edae546
commit 3f293d8aa8
1278 changed files with 14384 additions and 1664 deletions
@@ -0,0 +1,22 @@
# Backend integration notes
## FastEndpoints validation contract
Register the KBX validation response builder when configuring FastEndpoints:
```csharp
app.UseFastEndpoints(c =>
{
KbxFastEndpoints.ConfigureErrors(c);
});
```
This keeps automatic FluentValidation failures aligned with the frontend `KbxValidationProblem` contract. Row-specific validation remains inside the application handler because a stable UI `rowKey` (`ClientId`) is more useful than an array index such as `Lines[7]`.
## DbUp
Run `backend/Database/Migrations/20260808_001_oms_order_golden_screen.sql` through the application's normal DbUp pipeline. The migration is intentionally self-contained for the starter; a production modular monolith should retain schema/table ownership within each module and reference contracts rather than centralizing business tables in a shared module.
## Transaction boundary
`RegisterOrderHandler` keeps order header, order lines, audit record and outbox message in one PostgreSQL transaction. External integration dispatch is explicitly outside that transaction.