EqualifyEverything / equalify-iris

page.md: a page whose design is the content carries an image, not just its words (#451)
Closes #334. A page whose design IS the content — a cover, a designed divider, a title page set as a design rather than as type — now owes an <img> whose alt carries the appearance, beside the <h1> and <p> that transcribe the words printed on it and after them, with the same named placeholder src and "log" entry a logo already takes, and no <figcaption> of its own. The gap was structural. Everything the IMAGES AND ALT TEXT bullet says decides what an alt SAYS, which is reachable only once an <img> exists, and the only sentence telling the page agent to emit one was the mark example, scoped to a logo, a masthead or a wordmark — a graphic ON a page, never a page that IS one. On the shipped model the cover of a 92-page document came back as five paragraphs of text: every printed word present, so the answer reads as complete, while the colours, the banner and the shape of the type were gone with nothing in the "log" field recording that the page had a design. Both agents wrote that reading down — the page agent refused a second time ("the cover design ... is the page itself rather than a distinct image requiring <img> markup") and the checker downgraded its own finding ("this is borderline — the cover IS the page — so this note is informational"). Bounded on the other side by the case that produced it: on the same document acir-p003 is the title page, the cover's words in plain capitals on white, where all three arms emit no <img> and all three are right. A rule keyed on the page's role makes them wrong and asks a model to describe black type on white, so the rule is keyed on the design. Three review rounds, each finding what the previous push created: the enumeration named a title page flatly and contradicted its own guard; "beside" turned out to permit the shape the one compliant arm produced, the whole page inside a <figure> with the document's <h1> in the <figcaption> and a 414-character alt reading out every printed word, which the recheck passed with ok: true; and the caption clause that replaced it read as licensing a caption of invented prose, so the caption is refused outright with its reason. The mark rule's src rationale was amended in the same pass, because "the image you were given is the whole page rather than the graphic on it" stops distinguishing anything on a page that is a graphic. The checker half of this defect is NOT fixed here and is filed as #452: on the arm that did emit the appearance-only alt the contract asks for, the recheck refused it and proposed alt="", the also-carried-in-full exemption applied to the one case page.md names as outside it — wording that was already in the contract twice, so this PR's wording change is not what repairs it. Prompt text and pins only: no code, no dependency, no workflow path. Both copies of the prompt are byte-identical, npm test 1692 pass / 0 fail, and nothing here was measured against a model — spend is halted, and the evidence is the agents' own text. Co-authored-by: bbertucc <46652+bbertucc@users.noreply.github.com> Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com> Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
claude[bot] claude[bot] committed on Sep 10, 2026, 03:14 AM
Showing 3 changed files +120 additions -2 deletions
Browse files at this commit →