| Age | Commit message (Expand) | Author |
| 2026-07-23 | Zoom the action log on assets | erdgeist |
| 2026-07-23 | Keep in-editor asset curation off the head, layering it like every edit | erdgeist |
| 2026-07-23 | Witness asset uploads and out-of-band attaches in the action log | erdgeist |
| 2026-07-23 | Witness asset destruction, naming every node it strips | erdgeist |
| 2026-07-23 | Convert the log's node zoom to participants, completing subtree histories | erdgeist |
| 2026-07-22 | Add tests for the asset<->nodes attach cycle and the flash notice survival fix | erdgeist |
| 2026-07-22 | Add attached nodes subsection in assets#show and thumbnail in nodes#create | erdgeist |
| 2026-07-22 | Retire nodes#recent, superseded by the action log | erdgeist |
| 2026-07-21 | Make PDFs eligible for headline and allow searching assets by filename | erdgeist |
| 2026-07-21 | Implement model side of PDF raster preview generation | erdgeist |
| 2026-07-21 | Add storage isolation for tests, preventing live data destruction | erdgeist |
| 2026-07-21 | Resolve preview's page-to-node lookup for every layer | erdgeist |
| 2026-07-20 | Make headline images explicit, add asset credits | erdgeist |
| 2026-07-19 | Fix render gallery rename issue. We saw 500s | erdgeist |
| 2026-07-18 | Emit a report-only Content-Security-Policy with nonced inline scripts | erdgeist |
| 2026-07-18 | Annotate the History list with each revision's lifecycle | erdgeist |
| 2026-07-18 | Add Trash affordances: cockpit, listing, dashboard entry | erdgeist |
| 2026-07-17 | Route and control trash, restore, and permanent deletion | erdgeist |
| 2026-07-17 | Allowlist aggregate order columns and template names | erdgeist |
| 2026-07-16 | Add a reader for the action log at admin/log | erdgeist |
| 2026-07-16 | Record the full lifecycle contract in NodeAction entries | erdgeist |
| 2026-07-15 | Add NodeAction: an append-only log of who did what to a node | erdgeist |
| 2026-07-14 | Add a :large FileAttachment style for full-width inline body images | erdgeist |
| 2026-07-14 | Retire wipe_draft! and find_or_create_draft from production code | erdgeist |
| 2026-07-14 | Make revisions locale aware | erdgeist |
| 2026-07-13 | Make revision diffs locale-aware, defaulting to whichever locale changed | erdgeist |
| 2026-07-13 | Fix shared preview redirecting to admin for an ordinary new draft | erdgeist |
| 2026-07-13 | Wire real autosave into translation editing | erdgeist |
| 2026-07-13 | Add per-node translation management: list, edit, destroy, compare | erdgeist |
| 2026-07-13 | Asset picker: attach/detach/reorder UI, read-only view, autosave fix | erdgeist |
| 2026-07-13 | Add loadOnFocus to initSearchPicker; asset search shows recent by default | erdgeist |
| 2026-07-13 | Add RelatedAssetsController: search, attach, detach, reorder | erdgeist |
| 2026-07-12 | Normalize action-button wording and add icons app-wide | erdgeist |
| 2026-07-12 | Rebuild the admin dashboard: icon nav, search, signposts, widgets | erdgeist |
| 2026-07-12 | Add a grouped tag+node search endpoint for the upcoming dashboard | erdgeist |
| 2026-07-12 | Give the sitemap its own view, with collapse and descendant counts | erdgeist |
| 2026-07-11 | Add drafts/recent/mine/chapters admin node views | erdgeist |
| 2026-07-11 | Do not offer to destroy the only draft of a never-published node | erdgeist |
| 2026-07-10 | Fix current_user/uniq inconsistencies in admin#index, remove dead query | erdgeist |
| 2026-07-10 | Add the missing assertions two tests were silently running without | erdgeist |
| 2026-07-10 | Add test for backlink in revisions#index | erdgeist |
| 2026-07-10 | Include assets, tags and template in diff between revisions | erdgeist |
| 2026-07-10 | Ensure that comparison view toggle is there for all diff modes | erdgeist |
| 2026-07-10 | Destroying Draft or Discarding Autosave drops you where you left | erdgeist |
| 2026-07-10 | Add head/draft/autosave layer comparison at three UI entry points | erdgeist |
| 2026-07-10 | Whitespace fixes | erdgeist |
| 2026-07-10 | Fix stale assertions and escaped body in revisions#show | erdgeist |
| 2026-07-10 | Retire vendored cacycle_diff.js for a diff-lcs-based diff view | erdgeist |
| 2026-07-08 | Fix authorship and published_at loss in autosave promotion | erdgeist |
| 2026-07-08 | Fix node_content count in show-with-published-draft test | erdgeist |