| Age | Commit message (Expand) | Author |
| 2026-07-23 | Zoom the action log on assets | erdgeist |
| 2026-07-23 | Record asset deltas at publish, with changed assets as participants | 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-22 | Retire nodes#recent, superseded by the action log | erdgeist |
| 2026-07-21 | Render PDF headlines as document cards, not lightbox images | erdgeist |
| 2026-07-21 | Remove unreachable image_box drag-and-drop UI | erdgeist |
| 2026-07-20 | Make headline images explicit, add asset credits | erdgeist |
| 2026-07-19 | Log CSP violations to their own file instead of relying on Rails.logger | erdgeist |
| 2026-07-19 | Add deliberate default to xml for rss and rdf | erdgeist |
| 2026-07-19 | Add the error log writer | erdgeist |
| 2026-07-19 | Add a 500er logger and a trip wire in admin/boom to test it | 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 | Teach the action log reader the Trash vocabulary | 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 | Fix grammar for unknown action and discard_autosave | erdgeist |
| 2026-07-16 | Condense the action log into a scannable table | erdgeist |
| 2026-07-16 | Don't reference your own user as 'du' in action log. It breaks grammar. | erdgeist |
| 2026-07-16 | Add a reader for the action log at admin/log | erdgeist |
| 2026-07-15 | Make the recent-changes page match the widget it links from | erdgeist |
| 2026-07-14 | Make revisions locale aware | 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 | Set config.i18n.available_locales explicitly | erdgeist |
| 2026-07-13 | Add RelatedAssetsController: search, attach, detach, reorder | erdgeist |
| 2026-07-12 | Add a locale-aware relative-time helper; drop stale locale overrides | erdgeist |
| 2026-07-12 | Add rails_icons (Tabler) for SVG iconography | 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 | Make page_translations' search trigger self-installing | erdgeist |
| 2026-07-11 | Move all admin routes under /admin | erdgeist |
| 2026-07-11 | Style admin pagination widget, add missing locale keys | erdgeist |
| 2026-07-10 | Add head/draft/autosave layer comparison at three UI entry points | erdgeist |
| 2026-07-09 | Add an events view for events without node | erdgeist |
| 2026-07-09 | Major resource view cleanup | erdgeist |
| 2026-07-08 | Add revert!/discard and rebuild nodes#edit around the new hierarchy | erdgeist |
| 2026-07-08 | Route Save and autosave through the new Node methods (addendum) | erdgeist |
| 2026-07-06 | Add public preview links for drafts | erdgeist |
| 2026-07-06 | Disable verify_foreign_keys_for_fixtures for test env | erdgeist |
| 2026-07-05 | Surface node-kind conventions in the admin UI | erdgeist |
| 2026-07-05 | Add erfa/chaostreff node-kind creation conventions | erdgeist |
| 2026-07-03 | Change open-today widget label | erdgeist |
| 2026-07-02 | Add 'open today' sidebar widget and open days in chapter lists | erdgeist |
| 2026-07-02 | Add tagging support to Event model | erdgeist |
| 2026-07-01 | Add RRULE humanizer and wire events into nodes#show | erdgeist |
| 2026-06-30 | Remove recent_changes RSS feed. It leaks unpublished drafts and the basic auth was only symbolic | erdgeist |
| 2026-06-29 | Restore and improve admin node search | erdgeist |