Skip to content

fix: honor explicit local-only routes in public client - #129

Merged
RobLe3 merged 1 commit into
mainfrom
codex/pre1-loopback-client-parity
Aug 29, 2026
Merged

RobLe3 merged 1 commit into
mainfrom
codex/pre1-loopback-client-parity

Conversation

@RobLe3

@RobLe3 RobLe3 commented Aug 29, 2026

Copy link
Copy Markdown
Owner

Summary

  • keep the public client's route filter aligned with the address-pinned transport when the explicit local-only endpoint opt-in is set
  • retain the default refusal of loopback and private routes
  • add a regression test for both states

Why

The pre-1.0 exact-package HTTP smoke found that Python discarded a loopback route during discovery even though IICP_PROXY_ALLOW_LOOPBACK_NODES=1 allowed the same route in the pinned transport. TypeScript and Rust completed the same local-only path. This blocked the declared isolated/local-only qualification mode and prevented the packaged-client harness from comparing all three maintained clients.

Validation

  • uv run --isolated --python 3.12 --locked --extra dev pytest -q tests/test_client.py tests/test_endpoint_security.py
  • uv run --isolated --python 3.11 --locked --extra dev ruff check src/iicp_client/client.py tests/test_client.py
  • full python3 scripts/run_sdk_quality.py gate: Python 3.11/3.12/3.13, 1,243 tests plus subtests per runtime, Ruff, mypy baseline, 76.22% coverage, dependency audit, locked build and clean exact install

This source correction invalidates the previous non-authorizing Python artifact fragment. It does not publish a package, freeze a coordinated candidate or authorize a stable designation.

@RobLe3
RobLe3 merged commit ac3a8bf into main Aug 29, 2026
1 check passed
@RobLe3
RobLe3 deleted the codex/pre1-loopback-client-parity branch August 29, 2026 09:03
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