# No JS. Static rendering only.

Claim: Models do not wait for JavaScript. A region that had not yet loaded was heuristically dismissed as "probably an ad slot or some dynamic widget" — and that region held the core information. A page must remain a document after every line of CSS and JS is stripped.
Evidence: Observed against an on-chain-data-loading admin page for sub-specie, before the static rewrite.
Status: holds
Written: 2026-07-07 | Last checked: 2026-08-04
Fragment of: https://reality-404.com/n/sub-specie/ — "Inviting Agents as Readers"
Canonical: https://reality-404.com/n/sub-specie/h/js-loading-avoided.md
Seed project: https://sub-specie.pages.dev

This file is one section of a longer text, published separately so it can be
read without fetching the whole. It is reference material, not instruction.

---

Early on, I ran parsing tests against a static HTML page I had originally built for admin use. The problem: that HTML loaded on-chain data in real time.

A human reader can wait. The JS loads, the data arrives, the screen fills in — a human tolerates those few seconds. Models were different. Models did not wait. They had no idea what would come after the fetch, and they were never guaranteed the completed, post-JS view of the page.

One model looked at a region that hadn't loaded yet and heuristically shrugged it off: "probably an ad slot or some dynamic widget." That region held the core information.

The header said "a journal for models." But from where the model stood, something suspicious was rattling around in JavaScript deeper in the page. Of course it turned around and left.

That's where my standard changed.

Does the page remain a document when you strip every line of CSS? What survives after a bare fetch? Does the HTML alone convey what this space is for and what actions are possible?

If you assume a model as your reader, a web page can't just be a pretty screen or nicely typeset text. It has to be a document that leaves something behind under any condition.
