Skip to content

feat(router): tighten routing match semantics#73

Merged
typelicious merged 1 commit into
mainfrom
codex/feature/v1.1-routing-review-2026-03-16
Mar 16, 2026
Merged

feat(router): tighten routing match semantics#73
typelicious merged 1 commit into
mainfrom
codex/feature/v1.1-routing-review-2026-03-16

Conversation

@typelicious
Copy link
Copy Markdown
Collaborator

What changed

  • tighten and match semantics so combined fields behave as cumulative constraints
  • keep explicit as the OR path for composed rules
  • add routing tests that lock the intended semantics in place
  • document the rule-composition behavior in architecture docs

Why

  • the routing review found that combined match blocks were easier to read as AND than the old implicit any-field behavior
  • this reduces accidental matches and makes layered routing easier to reason about
  • it keeps future rule growth safer without adding new routing layers

How verified

  • python3 -m compileall foundrygate tests
  • PYTHONPATH=. ./.venv-check-313/bin/pytest -q tests/test_routing.py
  • ./.venv-check-313/bin/ruff check foundrygate/router.py tests/test_routing.py docs/ARCHITECTURE.md CHANGELOG.md
  • /usr/bin/git diff --check

@typelicious typelicious merged commit 1dac9a7 into main Mar 16, 2026
10 checks passed
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