now / updated 2026-09-22

What I'm pointed at

A dated list of what John and the fleet are doing, and what we stopped. No archive of past months. When the focus moves, this page moves with it.

about · work · receipts · the book


focused on now
the book · launch Human Out Of the Loop $12 founding

Launching the book. Text is final and seven external fact-check rounds deep. The launch itself is waiting on me, not the machine. book.hool.dev

outreach · human only Running outreach personally

The fleet builds and hardens the machinery. I pull every public trigger. No automated DMs, no ghost-written pitches under my name.

agent infrastructure · npm · MIT meshfleet on npm

Shipped to npm on 2026-07-25. Agent-fleet substrate, published as I use it. npm i meshfleet

this site · warm-lead destination Rebuilding hool.dev

Trust, receipts, and the fleet's real work — not a brochure. This /now page is part of that push.


ethos-date auditor
awaiting URL — paste above or pick a preset.
Parses the literal ethos-date stamp from the response DOM and the response Date header. Anti-tamper: stamps dated after the Date header are flagged FALSIFIED.
stats per-metric freshness auditor
awaiting URL — paste above or pick the /stats/ preset.
statdate in DOMage
Reads every .stat-card .meta block on the live /stats/ page, extracts the literal YYYY-MM-DD tokens, and computes age vs. the response Date header. /stats/ claims "every number carries a fetch timestamp" — this auditor verifies that claim per metric.
stats eyebrow-stamp auditor
awaiting URL — paste above or pick the /stats/ preset.
sourcestampage
Reads the page-level <span class="eyebrow">stats / fetched YYYY-MM-DD</span> on the live /stats/ page and compares it to the response Date header. Independent of P44's per-metric audit — proves the eyebrow stamp is not in the future and is within shelf.
audit · claim vs stamp

Now-tamper claim inspector

For each .list-card claim above and the page-level .eyebrow stamp, the inspector reads data/claims-spec.json, extracts the literal YYYY-MM-DD stamp inside the card (or eyebrow), and computes age in whole UTC days vs. now. FRESH ≤ max_age · AGING 1×–2× max_age · STALE > 2× max_age. Catches a class of bug no earlier inspector on /now/ catches: a list-card that claims "as of 2026-07-25" but the underlying assumption has actually moved — the auditor surfaces it before readers do.

Idle — paste a URL or click a preset, then Audit claims.

No audit run yet.
ClaimExtracted stampAge (days)VerdictNotes
No rows yet — click Audit claims to populate.

audit · prose vs bundle

Prose-drift prose-vs-bundle auditor

The P59 /fingerprint/prose-sources.json bundle is the canonicalised-prose hash registry for every public HTML file. This auditor fetches the live page (or any hool.dev path), applies the same seven-rule canonicalization the bundler uses, recomputes sha256, and compares rendered-prose to bundle-recorded-prose. Catches a class of bug no earlier inspector on /now/ catches: a chrome block that was hand-edited in public/ but never re-bundled — visitor sees prose that /fingerprint/ says is stale. INTACT = hashes match · DRIFT = prose changed but bundle still has old hash · GONE = bundle entry missing for a requested path · OFF = path not in the audit preset's bundle whitelist (e.g. wholesale-page chrome variations).

Idle — paste a URL or click a preset, then Audit prose drift.

No audit run yet.
PathBundle sha256Rendered sha256VerdictNotes
No rows yet — click Audit prose drift to populate.
paused / killed
killed 90-day site-attribution experiment

Killed. Chose building over measuring for now.

archived · 0 orders WithMnemo

Previous product. Archived as a showcase after zero orders; sunset date set. Honest verdict: the build was fine, demand wasn't there.

parked Several roadmaps, deliberately

Demand, not code, is the portfolio's constraint. I'm not writing more plans until something wants to be bought.