Skip to content

key transformation cache on the argument value - #12

Open
blotus wants to merge 1 commit into
mainfrom
transform-cache-key
Open

blotus wants to merge 1 commit into
mainfrom
transform-cache-key

Conversation

@blotus

@blotus blotus commented Oct 2, 2026

Copy link
Copy Markdown
Member

No description provided.

The per-phase transformation cache was keyed on the argument key's string
pointer and its index in the GetField result. Repeated keys share one key
string, and map-backed collections iterate in random order, so a rule could
get the cached transformation of a different value with the same key.

Key the cache on the value's data pointer and length instead: a
transformation is a pure function of the value.

Same approach as upstream corazawaf#1682.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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