fix(#1179): require security authority wiring #1186

Closed
Mos wants to merge 1 commits from fix/1179-required-security-di into next
Contributor

Closes #1179.

Security defect class

Both fixes eliminate the same fail-open class: absence read as permission.

  • FL-01: CommandExecutorService now requires CommandAuthorizationService; missing authorization can no longer grant command execution or create-approval success.
  • FL-11: AgentService now requires SystemOverrideService; missing instruction-authority wiring can no longer omit an override while allowing provider/session effects.

Proof

  • Real production AppModule graph compiles with each binding present.
  • Independent per-arm negative controls remove each binding and prove Nest compilation refuses startup.
  • Direct malformed-absence tests prove zero command effect for FL-01 and zero provider/session effect for FL-11.
  • Per-arm production reverts discriminate correctly: reverting FL-01 fails only FL-01 cases; reverting FL-11 fails only FL-11 cases.
  • Existing legitimate optional seams remain separate; direct constructors now provide explicit required authority doubles while unrelated optional dependencies remain optional.

Verification

  • Gateway tests: 74 files passed, 7 skipped; 831 tests passed, 17 skipped.
  • Gateway typecheck: pass.
  • Gateway lint: pass.
  • Gateway build: pass.
  • Prettier check: pass.
  • Codex code review: approve, 0 findings.
  • Codex focused security review: risk none, 0 findings.

Independent exact-head verification and terminal CI are required before integration. Author has no merge authority.

Fixes #1179

Closes #1179. ## Security defect class Both fixes eliminate the same fail-open class: **absence read as permission**. - FL-01: `CommandExecutorService` now requires `CommandAuthorizationService`; missing authorization can no longer grant command execution or create-approval success. - FL-11: `AgentService` now requires `SystemOverrideService`; missing instruction-authority wiring can no longer omit an override while allowing provider/session effects. ## Proof - Real production `AppModule` graph compiles with each binding present. - Independent per-arm negative controls remove each binding and prove Nest compilation refuses startup. - Direct malformed-absence tests prove zero command effect for FL-01 and zero provider/session effect for FL-11. - Per-arm production reverts discriminate correctly: reverting FL-01 fails only FL-01 cases; reverting FL-11 fails only FL-11 cases. - Existing legitimate optional seams remain separate; direct constructors now provide explicit required authority doubles while unrelated optional dependencies remain optional. ## Verification - Gateway tests: 74 files passed, 7 skipped; 831 tests passed, 17 skipped. - Gateway typecheck: pass. - Gateway lint: pass. - Gateway build: pass. - Prettier check: pass. - Codex code review: approve, 0 findings. - Codex focused security review: risk none, 0 findings. Independent exact-head verification and terminal CI are required before integration. Author has no merge authority. Fixes #1179
Mos added 1 commit 2026-08-13 01:02:25 +00:00
fix(#1179): require security authority wiring
ci/woodpecker/pr/ci Pipeline was successful
4c50a07ba2
Mos closed this pull request 2026-08-13 01:11:35 +00:00

Pull request closed

Please reopen this pull request to perform a merge.
Sign in to join this conversation.