GRIP · order-evident decision chain · HAPPI/1.3

The AI's decisions, in order.

Every card below is a real decision GRIP's AI shipped to its own codebase — and now carries the what, why, how and when behind it. Each one holds the hash of the decision before it, so removing or reordering any entry breaks the chain visibly. The check runs in your browser on load. You don't have to trust this page; verify it yourself.

This is the public face of GRIP's IDR decision record — the order-evident leg of a three-part cryptographic causation system: IDR decision record · signed memory chain · deterministic citation provenance. Full signing, Merkle inclusion proofs, and in-browser witness are on the happiverse proof surface (HAPPI/1.3).

CHECKING… running the chain integrity check
⛓ BITCOIN-ANCHORED The chain's Merkle root 66ae70fd…42b7c5d2 is committed to Bitcoin per the published OpenTimestamps proof. Latest confirmed attestation at the last page update: block 966381, over the first 1505 decisions; the live check fetches the current tip. Verify the attestation itself node-free — no trust in this page required — with the OpenTimestamps client: ots verify <manifest>.json.ots.

    What a card shows

    Newer decisions carry four plain-English fields derived honestly from the commit itself — what changed (the decision in one sentence), why (the rationale, from the commit message), how (the loop or method that produced it), and when (the moment it shipped). Decisions recorded before these fields existed show only their one-line subject, labelled plainly — never hidden, never faked.

    What this proves — and what it doesn't

    This is an order-evident hash chain. Each row is {sha, subject, ts, prev_sha} plus the optional what/why/how/when reasoning — only the commit hash, its subject, its timestamp, a pointer to the previous commit, and plain-language reasoning. No code, no diffs, no file paths, no client data: an allowlist by construction. Because prev_sha links every row to the one before it, deleting or reordering an entry leaves a visible gap. It proves order integrity and append-history. It is not an independent cryptographic signature, and (while GRIP's source stays private) it does not let an outsider confirm each hash against the repository — it lets you confirm the chain is internally consistent and unbroken. The chain's Merkle root, however, is independently committed to Bitcoin — in cumulative batches, with every OpenTimestamps proof published in this repo so anyone can check it node-free, a proof neither we nor anyone can forge or backdate — and the Ed25519 signature witness is on the happiverse surface.

    This page is the order-evident public face of GRIP's IDR decision record — one of three legs of its cryptographic causation system (IDR decision record / signed memory chain / cite.verify citation provenance), all conformant with the HAPPI/1.3 protocol. For signed, Merkle-rooted, in-browser-verifiable entries, see the happiverse proof surface: that surface answers "is the signature valid?"; this page answers "did the order change?"

    Verify it yourself

    The same check this page ran, as a standalone script. Save the chain and run it — no dependencies:

    # fetch the chain, the verifier and the anchor tip, then run it
    curl -sO https://codetonight-sa.github.io/grip-decision-chain/idr-public.jsonl
    curl -sO https://codetonight-sa.github.io/grip-decision-chain/verify.js
    mkdir -p anchors && curl -sO --output-dir anchors https://codetonight-sa.github.io/grip-decision-chain/anchors/latest.json
    node verify.js idr-public.jsonl
    # → links OK · root … · anchor OK — matches the published anchor root   (exit 0)   |   chain BROKEN / ANCHOR MISMATCH  (exit 1)

    Or paste verify.js into your browser console on this page — it reads the already-loaded chain and prints the same verdict.

    To verify the Bitcoin anchors too — still no dependencies, no Bitcoin node:

    # recompute every anchor root from the chain, then check a proof with the ots client
    curl -sO https://codetonight-sa.github.io/grip-decision-chain/verify-anchors.js
    mkdir -p anchors
    curl -sO --output-dir anchors https://codetonight-sa.github.io/grip-decision-chain/anchors/state.json
    node verify-anchors.js idr-public.jsonl anchors
    curl -sO --output-dir anchors https://codetonight-sa.github.io/grip-decision-chain/anchors/anchor-manifest-501-2026-07-06.json
    curl -sO --output-dir anchors https://codetonight-sa.github.io/grip-decision-chain/anchors/anchor-manifest-501-2026-07-06.json.ots
    ots verify anchors/anchor-manifest-501-2026-07-06.json.ots
    # → chain OK · anchors OK   |   ots confirms the Bitcoin block attestation