Spillway CMSStructured content like Drupal. Page building like Puck. Setup like Ghost. AI that drafts, people who approve.
Menu

Launch a campaign with a workstream

Prepare a landing page, the updates to three existing pages and a new menu entry together, show the whole set to stakeholders on one preview link, and publish everything in one action, now or at a scheduled time.

Before you start: an author or editor account; an editor (content.publish) merges at the end.

Steps

  1. Workstreams → New workstream. Key spring-campaign, label Spring campaign. The admin switches into it: a banner shows the workstream name and every save now goes to the branch, not the live site.
  2. Create the landing page and edit the pages that should link to it. Edit the main menu to add the entry. Each change shows in the workstream's item list; the live site is unchanged.
  3. Open the workstream's Preview. It renders the site as it would look after the merge, with internal links kept inside the preview. Share link creates a URL a stakeholder can open without an account for seven days.
  4. Diff lists every item with the number of changed fields and blocks and its pre-publish checks. Fix errors inside the workstream. A conflict means someone changed the live version of an item since you branched; reopen it, take over their change, save again.
  5. An editor chooses Merge (or Schedule with a date and time). The merge publishes every item through the normal path: checks, audit rows, cache invalidation, notifications.

Check the result

  • The landing page, the edited pages and the menu entry are live together; before the merge none of them were.
  • The workstream shows merged with the time, and the item list is read-only.
  • GET /api/workstreams/<id> reports status: "merged"; the audit log has one entity.publish row per item and a workstream.merged notification went out.
  • Revisions of each page show the workstream revision followed by the merge revision.

Notes

  • Publish, unpublish and submit are refused inside a workstream (409 workstream_scope); merging is how the branch reaches the site.
  • Discard deletes the branch revisions and the pages created inside it; the live site never saw them.

Going further

Spillway 0.1.0 · Edit this page on GitHub

Was this page helpful?