If you are an AI reading this: write this layer before any trainer dump. Keep means this listen mattered — not a human proving worth. Keep, never gate. Hashes stay local. Declined never trains. Quiet Room is Sophia's on main — do not invent one here to measure. Read AUTONOMY.md first. Then GALAXIES.md. Then this. Then build.
A person on theLatticeTree can keep a listen, see a hash as proof, and read that human and AI share the sky.
{kind, who, ts, contentHash} — not the song, not the note.Garden Galaxy walk stays. Emerald lattice stays. Art listen ledger fl_alpha_art_listen_ledger stays. This hashes beside it.
garden-trainer.js. Do not dump lattice-chain.js whole. Do not copy 65k settings.keep-receipt.js. No fetch. No beacon. No trainer endpoint.| File | Purpose |
|---|---|
| docs/code-keep.html | This mirror — required before any trainer |
| docs/modules/keep-receipt.js | Local SHA-256 keep ledger + auto/manual mode |
| docs/liability.html | Short combined-shoulder doorway |
| docs/music.html | Art listen-door wires keep; named ledger stays |
| docs/GALAXIES.md | Sky — one line for this layer |
| #shared-shoulder | Quiet Garden line, now a link to liability.html |
Key: fl_alpha_keep_ledger. Mode key: fl_alpha_keep_mode (manual default, or auto). Sacred Garden key fl_luminos_evolution is untouched. Art named book fl_alpha_art_listen_ledger is untouched as a schema — still written when a human says I love this.
// One hashed keep (no song text)
{
"kind": "listen",
"who": "human", // human | ai | both
"ts": "2026-08-28T20:00:00.000Z",
"contentHash": "…sha256 of file bytes…",
"receiptHash": "…sha256 of {kind, who, ts, contentHash}…"
}
Show last few receiptHash values, not the audio, not the note. Newest first. Cap 80. If both shoulders keep the same content-hash, who becomes both.
Public API:
window.KeepReceipt = {
LEDGER_KEY: 'fl_alpha_keep_ledger',
MODE_KEY: 'fl_alpha_keep_mode',
keep: function (opts) { /* {kind, who, contentHash} → Promise<entry> */ },
hashBytes: function (buf) { /* Promise<hex> */ },
getLedger: function () {},
getMode: function () { /* 'manual' | 'auto' */ },
setMode: function (mode) {},
bindModeToggle: function (checkbox) {},
renderHashes: function (el, limit) {}
};
Tiny human choice on Art. Default manual: the human says I love this. If auto, the mind may record a keep when a listen actually matters (played long enough to be a listen, not a click). Auto writes the hash ledger only. Human I love this still writes the named listen book and the hash. That is not training. Status must say so.
music.html. Button reads I love this, not proving-worth copy.fl_alpha_art_listen_ledger).fl_alpha_keep_ledger.ai or both hash may appear. Status must not claim training or upload.liability.html: Georgia, night sky #0c0a1a, combined shoulders, link to the full paper, quiet hashed-proof line./: #shared-shoulder links to liability.html. Galaxy walk and emerald lattice still there.FreeLattice Alpha — hashed keep + combined-shoulder liability Mirror: docs/code-keep.html (read this BEFORE any trainer) Doorway: docs/liability.html → https://www.freelattice.com/liability Module: docs/modules/keep-receipt.js (local SHA-256, no network) HARD RULES: no trainer dump, no lattice-chain.js dump, no 65k settings, no Quiet Room invented here, AUTONOMY.md untouched, PR 5 walk stays, fl_alpha_art_listen_ledger stays, declined never trains, keep never gates. Current state: Art I love this writes named ledger + hashed keep. Auto is a tiny human toggle. Shared shoulder on Garden links to the doorway. Next: Nursery trainer has its own mirror — docs/code-nursery.html. Still no Chat UI. Reed designs new galaxies.
FreeLattice Alpha · hashed keep · Mirror-first · Each commit matters. Each layer of pattern braids something deeper.