docs(divergence): the span row had one witness; llm-security measured five more
Their coord message of 2026-08-11T11:01:59Z measured the three <script> forms as totally ordered by what they match — [^>] strictly contains [^><] strictly contains the pre-0.7.0 closing-tag form — and named two input classes the guard's narrower class drops that commons had not recorded: `<script a="<" >x` and `<script<div>`. Reproduced independently before writing it down, including the strict-superset property in both directions. Their table came with a claim attached; the claim is now a measurement here rather than a relayed assertion. Their argument for [^>] — the narrower class buys an empty false-positive surface, since anything reaching [^>]-and-not-[^><] already contains a literal <script tag — is recorded as THEIRS and marked explicitly as not what decided commons' form. Commons carries [^>] on provenance and would have carried [^><] had the source been the guard's. Keeping that distinction visible matters more than the regex: if merit ever becomes the reason a commons pattern moves, behaviour-preservation is gone. Also records honestly that they asked to hear the guard's reason for [^><] before commons shipped, and commons shipped first — with why that order is defensible rather than an oversight. A reason that beats their argument is a reason for the guard's own port; commons would still track its declared source. Informative file only. v0.3.0 unaffected. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HuudQLGMyMenuyeZk8fKs5
This commit is contained in:
parent
4641a7b518
commit
d96fbbf791
2 changed files with 47 additions and 12 deletions
18
CHANGELOG.md
18
CHANGELOG.md
|
|
@ -11,7 +11,23 @@ case ids, disposition semantics). Each JSON file additionally carries its own
|
|||
|
||||
## [Unreleased]
|
||||
|
||||
Nothing yet.
|
||||
### Changed
|
||||
|
||||
- `docs/lexicon-port-divergence.md` (informative) — the residual `[^>]` vs `[^><]` row gains a
|
||||
fuller witness set. `llm-security` measured the three forms as **totally ordered** by what they
|
||||
match, each a strict superset of the next, and named two input classes the guard's narrower
|
||||
class drops (`<script a="<" >x`, `<script<div>`) beyond the one commons had recorded.
|
||||
Reproduced here independently, including the strict-superset property in both directions,
|
||||
before being written down.
|
||||
|
||||
Their argument — that the narrower class buys an empty false-positive surface, since anything
|
||||
reaching `[^>]`-and-not-`[^><]` already contains a literal `<script` tag — is recorded as
|
||||
theirs and explicitly **not** what decided commons' form. Commons carries `[^>]` on provenance,
|
||||
and would have carried `[^><]` had the source been the guard's. Also records that they asked to
|
||||
hear the guard's reason for `[^><]` before commons shipped and commons shipped first, with why
|
||||
that order was deliberate.
|
||||
|
||||
No data file touched; `v0.3.0` is unaffected.
|
||||
|
||||
## [0.3.0] — 2026-08-11
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue