The Salt Line ▾
v4 · version history Flows pack Browse flows
Round 4 · headings disposition

History, strengthened

The old history tab was a list. It survives as a proper version panel because PR #69 gives it something real to be honest about: archive is reversible and non‑destructive — it preserves drafts, versions, scenes, notes, memory and run history — while permanent delete is owner‑only and removes the whole owned project set. Those two must never look alike.

Versions
The recovered read-only state

PR #69 carries the PR #60 contract: an archived project that has a body‑bearing version but no scene rows returns an explicit recovered read‑only draft, not a blank document. So the panel must render that state as what it is — recovered, and not editable — because a recovered draft that looked live would invite edits the store will not accept.

The failure this prevents: a user opens an archived project, sees a normal-looking draft, types into it, and loses the work at save. The read-only state is not a restriction to apologise for — it is the honest rendering of what was recovered.
Archive is not delete
Archive · reversible

Preserves drafts, versions, scenes, notes, memory and run history. Restore puts it all back. Drawn in the neutral register, because nothing was lost.

Permanent delete · owner only

Removes the whole owned project set. Requires typing the exact title. Drawn in the error register and never adjacent to Archive in the same control group.

Where the old tabs went
Old tabDispositionWhere it is now
roomsuperseded The flow surfaces took the room's job — Arrival, the rail, the gate.
agentsuperseded Agents live in Keystack. An agent tab contradicts residents‑only — it would re-assert an in-app roster the model no longer has.
memorysplit Resident memory → Keystack. Project memory IS the readiness ladder, already in the Tools panel idle state.
markupsurvives, relocated Lives in the room surfaces — blocking annotations drive the revise loop, so it stays reachable where the loop happens, not in a tab.
insightssurvives, transformed Became the Evidence Pack surface. Insights without a source was the old version of a claim without evidence.
historysurvives, strengthened This panel, with the archive/restore contract rendered honestly.

The bar itself goes. It was pre‑Keystack navigation for a product where agents were in-app and the room was the centre. Both premises are gone, so the dock now carries tools · markup · history and nothing else.