release(0.3.4): three quadratic patterns outside the lexicon, two on the input path
0.3.3 swept 83 lexicon patterns arm by arm and left the other ten regex-bearing modules on 0.3.2's hand-written rows. Generalising the sweep found three more, and the two on the input path matter more than the count suggests: `sanitize` is step 1 of `prepare_input`, and `MAX_SCAN_CHARS` is applied in `scan_lexicon` and `scan_output` only, so there was no cap to extrapolate to. That missing input cap is now a documented residual of its own -- extending it changes the contract for existing callers and is not something to smuggle into a ReDoS patch. Version synced in all four places + CHANGELOG. LIMITATIONS 30 -> 31 items; the 0.3.3 entry claiming the lexicon sweep's scope is corrected in place, since "the output path" was never the whole surface either. 676 tests, coverage 128/128 + 6/6 gaps, sweep clean across 150 patterns.
This commit is contained in:
parent
73fa1b99ae
commit
adf93e47fb
5 changed files with 111 additions and 18 deletions
|
|
@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|||
|
||||
[project]
|
||||
name = "llm-ingestion-guard"
|
||||
version = "0.3.3"
|
||||
version = "0.3.4"
|
||||
description = "A minimal, dependency-light defensive layer for LLM ingestion pipelines — the write-time siblings of query-time chatbot guardrails."
|
||||
readme = "README.md"
|
||||
requires-python = ">=3.10"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue