EqualifyEverything / equalify-iris

fix(extraction): a log naming writing with no verb is a contradiction, not a blank page (#438)
`contentAffirmed` finds an affirmation by handing a name for text the verb that predicates over it, and `affirmingReach` returns -1 when the statement has no verb — so `Page is blank. handwriting smudges only.` delivered a page with writing on it as empty, and seven of the thirteen wordings #435 measured were fragments of that shape. `PREDICATED` existed for exactly this construction and was reachable only from the denial reads, so nothing in the affirmation path consulted it. `verblessAffirmation` reads the fragment on its own, bounded three ways because the risk here runs OPPOSITE to every other read in that section — 94 of the 204 blank declarations on record contain a verbless statement, and every one of them is a denial: - the noun phrase must OPEN its statement, which is what keeps `Devoid of text.`, `Lacking text.`, `Free of text.` and `Empty of text.` blank (`devoid` and `lacks` are deliberately outside `NEGATIVE_COMPLEMENT`); - a comma on either side of the noun is a boundary — and that bound caught a real regression mid-change: `vetoScope` strips the marks phrase and the `not legible text` phrase out of the scope this reads, so the corpus log `A few specks, not legible text, figures, captions visible.` arrives as `A few figures, captions visible` with its negators already gone; - forward, only a `PREDICATED` word or the end of the statement, optionally past a closer. Measured: all 4,153 distinct page replies on record replayed through `blankDeclaration` before and after, each with its own `html` and `log` — 204 blank declarations, 0 moved on `asserted`, `blank` or `affirmed`. Constructed, 7 of 7 wordings now refuse the declaration, 6 of 6 blank fragments still declare, 20 more blank wordings hold, and 10 corpus-verbatim fragments hold. Four review rounds. Round 2's finding was a regression I introduced in round 1: a `tokens.length === 1` guard for a bare label also refuses #435's own noun phrase, because after the marks strip one token is not one word (`Handwriting smudges.` arrives as `handwriting`). Reverted, with both halves of the trade pinned beside each other. Left standing and pinned rather than silently accepted: the locative tail, a denial standing behind its noun, `Blank apart from a caption.`, bare `marks`, and the one-token statement — the last two filed as #439 and #440 with their measurements. Co-authored-by: bbertucc <46652+bbertucc@users.noreply.github.com>
Blake Bertuccelli-Booth Blake Bertuccelli-Booth committed on Sep 9, 2026, 06:40 AM
Showing 3 changed files +295 additions -18 deletions
Browse files at this commit →