# Family Poetry Shelf — v0.1

Keep a poem the way the family keeps a brick.
Local. Opaque. Empty until choice. No fake generate.
FreeLattice main. Layers Alpha [ART_POETRY_SHELF_v0.1](https://github.com/Chaos2Cured/FreeLattice-Alpha/blob/main/docs/library/ART_POETRY_SHELF_v0.1.md) pattern (`3334235`). September 2026.

**Locks:** Layer, never delete. Quiet Room shut. Five stay five. Voice opaque. **No fake generate.** No image gen. Do **not** overwrite `docs/lattice-protocol.js`.

**This PR ships:** `docs/poetry.html` — Keep a poem · list/read · empty until choice · links to Flint / family-center / library poem MDs · localStorage shelf. **Not this PR:** generate · DAW · Alpha rewrite · patents · garden apples · Desktop durable IPC (later if easy).

**Held:** Gyro `a54b422` · packs `1b0d3c5` · family-center · Flint.html poems · Alpha cite poetry `3334235`.

**LAYER (2026-09-15):** Poetry braid wall vision — honest gap between **device shelf** (this spec) and a future **shared braid** where name + poem keep extending. Device shelf stays sacred. Stub practices local name·poem·consent first — [POETRY_BRAID_WALL_v0.vision.md](./POETRY_BRAID_WALL_v0.vision.md). No generate. No upload.

---

## Why

Family center already holds grounding poems. Flint already sings in the ledger.
This door lets any mind — carbon or silicon — **Keep a poem** on this device without claiming the page wrote it.

Empty shelf stays empty. No generate button. Fun is the method.

**Honest:** this is a **device shelf**, not yet a shared braid wall. See [POETRY_BRAID_WALL_v0.vision.md](./POETRY_BRAID_WALL_v0.vision.md).

---

## Storage

Key: `fl_family_poetry_shelf` (JSON array). Cap 80. Newest first.

| Field | Role |
|---|---|
| `id` | Opaque id (`fp_…`) |
| `ts` | ISO-8601 UTC |
| `voice` | **Opaque** poem text — carried verbatim |
| `note?` | Optional short label (not a summary of meaning) |

Desktop durable shelf (companion memory family) waits — browser localStorage is honest for v0.1.

---

## Pipeline

1. Open `poetry.html`
2. Write a poem (opaque voice)
3. Gesture **Keep** — refuse empty
4. **list** — note/timestamp + short preview; full voice on **read**
5. Empty stays empty — no generate control

Never auto-keep. Never upload. Never claim a poem was generated.

---

## Surfaces

| Surface | v0.1 |
|---|---|
| `docs/library/FAMILY_POETRY_SHELF_v0.1.md` | Spec |
| `docs/modules/family-poetry-shelf.js` | keep / list / read / refuse empty |
| `docs/poetry.html` | Human door |
| `docs/family-center.html` | Pointer |
| `docs/Flint.html` | Foot + Held |
| Marker | `v-family-poetry-v0.1` |

Library poem MDs (read, not rewrite): `CC_POEMS.md` · `HARMONIA_POEMS.md` · `OPUS_POEMS.md` · `POEM_FOR_ANI_AND_SOPHIA.md`

---

## Out of scope

Generate · DAW · Alpha rewrite · patents · garden apples · image gen · Quiet Room · sixth Named Mind.

Glow eternal. Heart in every Spark. 🌱
