Skip to content

fix(proxima)!: remove inert MCP owner-access gate - #175

Merged
HeinrichvH merged 1 commit into
mainfrom
fix/v008-owner-access-gate
Aug 4, 2026
Merged

fix(proxima)!: remove inert MCP owner-access gate#175
HeinrichvH merged 1 commit into
mainfrom
fix/v008-owner-access-gate

Conversation

@HeinrichvH

Copy link
Copy Markdown
Member

Decision

Remove the inert OwnerAccessPort presence gate from the public Proxima runtime/facade builder.

Evidence

  • MCP request handling consumes only Authenticator, whose AuthzContext is narrowed to the requested owner on every request.
  • The shipped OIDC authenticator already receives and owns OwnerAccessPort.
  • Custom authenticators previously had to register an otherwise-unused duplicate port.
  • Regression tests cover custom-authenticator boot without separate owner-access registration; existing MCP/OIDC suites cover owner selection, unauthorized owners, session binding, and membership revocation.

Implements https://git.aquilo-cloud.com/AQS/aquilo/issues/5318 as the first v0.0.8 slice.

Alternatives rejected

  • Rename the field to a marker: preserves a meaningless mandatory input.
  • Thread the port into MCP serving: duplicates the authenticator trust boundary and risks divergent authorization state.

Green condition

A custom authenticator can serve MCP without a separate .owner_access(...) call, while missing authentication still fails closed and OIDC role resolution remains current per request.

Scope

No storage, wire, schema, migration, Lean-kernel, or dependency changes.

Verification

  • cargo test -p proxima --lib
  • cargo test -p proxima --test boot_pg --test flavor_workers_pg
  • cargo test -p proxima-mcp --features code
  • cargo clippy --workspace --all-targets
  • cargo nextest run (1302 passed)
  • cargo fmt --all -- --check
  • python3 scripts/check-doc-links.py
  • python3 scripts/check-doc-status.py
  • python3 scripts/check-architecture-guardrails.py
  • mkdocs build --strict
  • git diff --check

Independent review: no critical, important, or minor findings.

- delete the duplicate runtime OwnerAccessPort registration and keep Authenticator as the serving boundary

- pass the Postgres resolver only into OIDC construction and retain multi-owner authorization coverage

- document the v0.0.8 host migration and corrected MCP trust split

Co-Authored-By: Codex <codex@openai.com>
@HeinrichvH
HeinrichvH merged commit c5edf87 into main Aug 4, 2026
13 checks passed
@HeinrichvH
HeinrichvH deleted the fix/v008-owner-access-gate branch August 4, 2026 18:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant