Skip to content

fix(server,catalog): canonicalize tool names at ingress; enforce lowercase in catalog (POLICY-002) - #218

Merged
imran-siddique merged 1 commit into
mainfrom
fix/security-medium-tool-name-case
Jun 6, 2026
Merged

fix(server,catalog): canonicalize tool names at ingress; enforce lowercase in catalog (POLICY-002)#218
imran-siddique merged 1 commit into
mainfrom
fix/security-medium-tool-name-case

Conversation

@imran-siddique

Copy link
Copy Markdown
Member

Summary

Test plan

  • test_uppercase_tool_name_is_rejectedConfigError raised when catalog entry has uppercase tool_name
  • test_tool_name_is_lowercased_at_ingress — proxy receives lowercased tool_name even when client sends uppercase
  • Full suite: 373 tests pass locally

🤖 Generated with Claude Code

…rcase in catalog (POLICY-002)

Tool names are now lowercased in _handle_tool_call() before reaching
the proxy, so Cedar policy, catalog, and request always use the same
case. Catalog loading now rejects any entry whose tool_name is not
already lowercase, preventing inconsistency that could allow a
case-variant to bypass deny rules.

Closes #159

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@imran-siddique
imran-siddique merged commit 863ad2e into main Jun 6, 2026
0 of 7 checks passed
@imran-siddique
imran-siddique deleted the fix/security-medium-tool-name-case branch July 29, 2026 23:20
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