summaryrefslogtreecommitdiff
path: root/app/models/node.rb
AgeCommit message (Expand)Author
2026-08-09Drop nodes.external_urlerdgeist
2026-08-09Attach assets to the draft instead of to every lifecycle rowerdgeist
2026-08-08Move the external homepage onto the drafterdgeist
2026-08-07Move the pending address from the node onto the drafterdgeist
2026-08-06Let editors set a node external homepage, gated and witnessederdgeist
2026-08-04Give node lists a flag column and a shared action barerdgeist
2026-07-31Warn before the gate refuses, and check restore destinationserdgeist
2026-07-31Show the gate before it refuses, and check the destinationerdgeist
2026-07-31Gate live-content changes on restricted surfaceserdgeist
2026-07-31Retire the unused per-node permission subsystemerdgeist
2026-07-31Validate format of slug to be alphanum or _-erdgeist
2026-07-30Localise model validation messages and refusal reasonserdgeist
2026-07-27Surface held locks in the dashboard's work-in-progress widgeterdgeist
2026-07-23Keep in-editor asset curation off the head, layering it like every editerdgeist
2026-07-23Record asset deltas at publish, with changed assets as participantserdgeist
2026-07-23Witness asset uploads and out-of-band attaches in the action logerdgeist
2026-07-23Convert the log's node zoom to participants, completing subtree historieserdgeist
2026-07-23Add action_participants, recording every node a trash/destroy toucheserdgeist
2026-07-22Add Node#attach_asset! attaching across all lifecycle rowserdgeist
2026-07-22Retire nodes#recent, superseded by the action logerdgeist
2026-07-22Fix Node#title ignoring autosaveerdgeist
2026-07-18Accept blank template names in the allowlist validationserdgeist
2026-07-18Give Trash a proper title on lazy constructionerdgeist
2026-07-18Keep the Trash out of the drafts surfaceserdgeist
2026-07-18Add Trash affordances: cockpit, listing, dashboard entryerdgeist
2026-07-17Add trash!, restore_from_trash!, and destroy_from_trash! with log entrieserdgeist
2026-07-17Bootstrap the Trash node: reserved slug, identity, guardserdgeist
2026-07-17Fix the cleanup cascade for a real node destroyerdgeist
2026-07-17Refuse destroying nodes that still have childrenerdgeist
2026-07-17Allowlist aggregate order columns and template nameserdgeist
2026-07-17Fix computed_unique_name code and consumererdgeist
2026-07-16Split current_unique_name in a setter and an accessorerdgeist
2026-07-16Record the full lifecycle contract in NodeAction entrieserdgeist
2026-07-15Add NodeAction: an append-only log of who did what to a nodeerdgeist
2026-07-14Retire wipe_draft! and find_or_create_draft from production codeerdgeist
2026-07-13wipe_draft!: add a grace period to the lock-with-no-draft brancherdgeist
2026-07-13Carry over other-locale translations when creating an autosaveerdgeist
2026-07-13Asset picker: attach/detach/reorder UI, read-only view, autosave fixerdgeist
2026-07-13Add RelatedAssetsController: search, attach, detach, reordererdgeist
2026-07-12Rebuild the admin dashboard: icon nav, search, signposts, widgetserdgeist
2026-07-12Extract drafts/recent query logic from controller into Nodeerdgeist
2026-07-11Add drafts/recent/mine/chapters admin node viewserdgeist
2026-07-10Prevent a staged parent move from crashing on its own descendanterdgeist
2026-07-10Add head/draft/autosave layer comparison at three UI entry pointserdgeist
2026-07-08Fix blank-title validation and its lost form state on re-rendererdgeist
2026-07-08Fix authorship and published_at loss in autosave promotionerdgeist
2026-07-08Add head/draft/autosave hierarchy to Nodeerdgeist
2026-07-07Replace awesome_nested_set with a plain parent_id-based NestedTree concernerdgeist
2026-07-06Apply slug immediately for never-published nodeserdgeist
2026-06-30Phase 1: standalone events, external_url on nodeserdgeist