Skip to content

fix(service): Replace ValueRange filters with regex in redirect matching#400

Merged
jan-auer merged 1 commit intomainfrom
fix/empty-redirect-value-range
Mar 20, 2026
Merged

fix(service): Replace ValueRange filters with regex in redirect matching#400
jan-auer merged 1 commit intomainfrom
fix/empty-redirect-value-range

Conversation

@jan-auer
Copy link
Member

@jan-auer jan-auer commented Mar 20, 2026

ValueRange with EndValueClosed(vec![]) forms a wrong empty range that causes an an invalid ValueRangeFilter in production BigTable. The emulator does not have this issue.

  • Exact path matches use an anchored, escaped regex via new exact_value_regex helper — also fixes a latent bug where . and / in storage paths could match unintended byte values
  • Empty-redirect check uses ^$ regex instead of the broken empty range

Ref FS-309

ValueRange with `EndValueClosed(vec![])` forms a degenerate empty range
that silently mismatches. Replace all ValueRange filters in
`redirect_target_filter` with `ValueRegexFilter`: exact paths use an
anchored escaped regex, and the empty-redirect check uses `^$`. This
also fixes a latent bug where storage path characters like `.` could
match unintended values.
@jan-auer jan-auer requested a review from a team as a code owner March 20, 2026 12:17
@jan-auer jan-auer enabled auto-merge (squash) March 20, 2026 12:21
@jan-auer jan-auer merged commit b251a42 into main Mar 20, 2026
21 checks passed
@jan-auer jan-auer deleted the fix/empty-redirect-value-range branch March 20, 2026 12:21
@linear-code
Copy link

linear-code bot commented Mar 20, 2026

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.

2 participants