New React Backend Repository
Find a file
Alexandre Brandizzi 2327097d5e fix(work-orders): symmetric NTE release, terminal guard, serialized cancel (SH-196)
Three contract gaps found reviewing the frontend consumer:

- Revoking an auto-approved uplift never restored the dispatch NTE. Create
  raises NTE for both auto-approved and approved requests, but revoke restored
  it only for Approved, so the allowance was freed while the NTE stayed raised
  and every create -> auto-approve -> revoke cycle compounded the inflation.
  Revoke now compensates for NoApprovalRequired symmetrically.
- Revoke and cancel had no work-order lifecycle check, so a direct API call
  could still mutate uplifts on a Completed or Canceled work order; the board
  dialog's read-only state is UX only. Both now reject terminal work orders in
  the service.
- WorkOrderBoardCancelService read the pending-uplift list outside any gate, so
  an in-flight create could commit after that read and leave a pending uplift on
  a Canceled work order. The cancel flow now runs inside the same per-work-order
  gate as create, so the pending read, withdrawal and status audit serialize
  against it.
2026-08-18 17:41:14 -03:00
.ebextensions fix(eb): configure work-order webhook HMAC secret source (#41) 2026-07-30 11:44:43 -03:00
.github chore(deps): bump aws-actions/aws-elasticbeanstalk-deploy 2026-08-11 02:44:28 +00:00
.security-review ci: document CDK advisory exception 2026-07-27 19:29:37 -03:00
Api.SeaHavenIndustries feat(work-orders): WO-scoped uplift endpoints and board summary (SH-196) 2026-08-13 14:49:56 -03:00
Api.SeaHavenIndustries.Tests feat(work-orders): WO-scoped uplift endpoints and board summary (SH-196) 2026-08-13 14:49:56 -03:00
Data.SeaHavenIndustries feat(work-orders): WO-scoped uplift endpoints and board summary (SH-196) 2026-08-13 14:49:56 -03:00
docs fix(work-orders): scope legacy GET GetComments by account [SH-221] 2026-08-11 15:18:29 -03:00
infra/cdk chore(deps-dev): bump aws-cdk from 2.1134.0 to 2.1135.1 in /infra/cdk 2026-08-11 11:44:16 +00:00
scripts fix: align vendor document API with frontend (#37) 2026-07-28 13:57:45 -03:00
SeaHaven.DataServices fix(work-orders): serialize uplift create and atomic cancel (SH-196) 2026-08-18 10:20:05 -03:00
SeaHaven.Services fix(work-orders): symmetric NTE release, terminal guard, serialized cancel (SH-196) 2026-08-18 17:41:14 -03:00
SeaHaven.Services.Tests fix(work-orders): address procurement review findings 2026-07-27 14:40:17 -03:00
SeaHavenIndustries chore(config): document Phase 7 feature flags in appsettings and .env.example 2026-07-13 13:23:54 -03:00
SeaHavenIndustries.Tests fix(work-orders): symmetric NTE release, terminal guard, serialized cancel (SH-196) 2026-08-18 17:41:14 -03:00
.env.example chore(config): document Phase 7 feature flags in appsettings and .env.example 2026-07-13 13:23:54 -03:00
.gitattributes Initial commit 2024-09-28 14:58:36 -04:00
.gitignore ci: automate dev backend deployment 2026-07-27 19:26:07 -03:00
AGENTS.md chore(governance): enforce backend architecture and quality gates (#31) 2026-07-24 17:41:10 -03:00
ARCHITECTURE_AND_CODE_QUALITY.md chore(governance): enforce backend architecture and quality gates (#31) 2026-07-24 17:41:10 -03:00
BACKEND_ARCHITECTURE.md refactor: enforce backend boundaries and optimize dispatch (#30) 2026-07-24 17:35:34 -03:00
QUALITY_GATES.md chore(governance): enforce backend architecture and quality gates (#31) 2026-07-24 17:41:10 -03:00
REVIEW_AND_PR_FRAMEWORK.md chore(governance): enforce backend architecture and quality gates (#31) 2026-07-24 17:41:10 -03:00
SeaHavenIndustries.sln test(work-orders): add Phase 0 domain unit tests 2026-07-02 09:19:28 -03:00
TODO.md chore(docs): remove Phase 7 ops markdown from PR scope 2026-07-13 13:51:34 -03:00