# Package verification

Executed **2026-11-07**, in the task workspace. Runtime: **Python 3.12.14** and
**Node.js v24.22.1**. The package requires Python 3.10+ and Node.js 20+ for its
standard checks; opening the generated HTML needs neither runtime.

## Executed successfully

Commands below were run from the repository root. Some are also invoked by the
scripts shown; repetition is not counted as additional independent evidence.

| Command | Observed result |
|---|---|
| `python3 build.py` | Generated the four derived files: `index.html`, `reading.html`, `inventory.js`, `INVENTORY.md` |
| `python3 build.py --check` | PASS: all four generated files current |
| `node --check app.js` | Exit 0: JavaScript syntax accepted |
| `node --check inventory.js` | Exit 0: generated JavaScript syntax accepted |
| `python3 -m py_compile build.py verify.py browser_check.py` | Exit 0: Python syntax accepted; does not execute browser assertions |
| `node test.cjs` (invoked by `verify.py`) | PASS: 9 JavaScript checks |
| `python3 verify.py` | PASS: catalog, local links/anchors, static entries, image hashes, generated-file consistency and JavaScript checks |
| `python3 release.py` | PASS: generated-file check, 33 release file hashes, package verification and 34-file flat-root ZIP integrity |

The release was regenerated after this record was updated so that the delivered
archive contains this record and matching checksums. `SHA256SUMS` excludes itself.
The only nested deliverable is `.github/workflows/verify.yml`; no enclosing
project directory appears inside the ZIP.

## What the nine JavaScript checks cover

1. Blank search returns all 72 entries in the preserved order.
2. Rug/name and numeric lookup return entry 66.
3. Multiple search terms match across catalog metadata.
4. Category and reading filters intersect the query.
5. Missing terms/categories return no matches without changing source data.
6. Case and diacritics normalize; script-like query text is treated as text.
7. The generated browser catalog equals the canonical JSON.
8. Physical assertions remain unestablished and satire remains labeled.
9. Unknown claim keys fail rather than inventing a verdict.

These exercise pure JavaScript functions and catalog consistency. They do not
execute browser event handlers or inspect the rendered layout. The fixed claim
explanations are editorial text, not scientific conclusions generated by an engine.

## Attempted, blocked before page execution

```sh
python3 browser_check.py --browser /usr/bin/chromium --screenshots /workspace/scratch/6a03eaaba7fa/dude-qa
```

Result: **exit 1 during Chromium launch**. The environment rejected the browser's
socket operation with `socket() failed: Operation not permitted (1)`. No page
loaded and none of the browser assertions executed. The bundled Playwright
browser executable was also absent; the system Chromium attempt produced the
permission failure above. No browser screenshot is included in this package.

An alternative installed DOM test library was sought; `jsdom`, `happy-dom` and
`linkedom` were unavailable. No DOM test pass is claimed.

**Browser rendering, responsive layout, interactive event wiring, keyboard
behavior and full accessibility remain unverified here.** An optional harness is
included for a compatible environment. Static sources use native buttons,
labels, alternative text, focus styles, a skip link and reduced-motion CSS;
their presence is not an accessibility certification.

## Not executed and not claimed

- No external Lean build, EFMW experiment or physics measurement.
- No rerun of the results described by the linked research repositories.
- No GitHub Actions run or hosted-site deployment for Dude Physics. The workflow
  is supplied for use after a future repository upload.
- No controlled test of the rug's causal effect, conversational emergence or
  physical coherence.

The actual room images were visually inspected. The inventory remains an
editorial reading, with 47 visible, 12 grouped and 13 interpretive entries.
Hashes establish byte identity, not object-detection accuracy or scientific truth.

## Remaining obligations

Run the optional browser harness on a host that permits Chromium, inspect the
desktop and mobile rendering, and test keyboard/screen-reader navigation before
treating the interface as fully checked. Before choosing public reuse terms,
resolve the original image's rights and select appropriate licenses. Any future
scientific claims require their own stated definitions, executed validation and
evidence; this archive does not supply them.
