Test and go live

A Blueprint's lifecycle

Draft, deploying, pause and suspension, the version history and the activity log.

A Blueprint always has two versions: the draft, which you edit, and the deployed version, the one the bot runs. Editing the draft changes nothing about what runs until you deploy.

Statuses

StatusWhat runs
DraftNothing: the Blueprint has never been deployed
OnlineIts deployed version, for the whole server
PausedNothing: someone stopped it, its commands are removed from Discord
SuspendedNothing: the bot stopped it because Discord kept refusing its requests

The Not deployed badge, next to the status, says the draft changed since the last deploy.

Editing: the draft

The editor saves the draft on its own, 3 seconds after your last change. The draft never runs for members; to try it on Discord, start a test.

One person edits a Blueprint at a time: they hold the lock. Others see it read-only, live, and can ask for the lock.

Deploying

Deploy puts the draft online, in place of the deployed version. First, the Blueprint is checked:

  • errors block the deploy (an empty required field, a wrong expression…); warnings don't. While some remain, a click on Deploy tells you so, with a button that opens Problems (also in the status bar at the bottom): they're listed there, with a link to each;
  • credits: the Blueprint must fit in what the server's other online Blueprints leave (Limits and credits);
  • commands are registered on Discord.

If nothing changed since the last deploy, Deploy tells you the Blueprint is already up to date: no new version, but its commands are sent to Discord again. A command deleted on Discord, by another tool for instance, comes back that way.

Deploying takes the Deploy Blueprints permission, but not the lock: a member who can deploy can do it read-only too, and then deploys the saved draft.

Redeploying cuts nothing off: waits in progress resume on the version that started them.

Pausing, resuming

Pause, in the Deploy button's menu (greyed out until the Blueprint has been deployed once: nothing runs yet), stops the Blueprint: its commands are removed from Discord, its scheduled Events stop firing, and its waits in progress are cancelled (the confirmation says how many). A paused Blueprint costs no credits.

Resume checks credits, registers the commands again and puts it back online, in one go. Both take the Deploy Blueprints permission.

Suspended

If Discord refuses too many of a Blueprint's requests (a permission the bot lacks, a deleted channel…), the bot suspends it to protect the server and the others (Limits and credits). The editor shows the last refusal, and the server's home page flags it. Its waits are kept. Fix the cause, then Resume.

Version history

The editor's History section, and the Versions tab of a Blueprint's window (a click on its card, on the Blueprints page), list its versions, each with its author and date:

  • Current draft: what you're editing;
  • End of a session: the draft as it was at the end of an editing session (10 minutes without a change, the editor leaving or handing over the lock), and at least every 30 minutes;
  • Deployed version: each version put online, with the Live badge on the one that runs;
  • Restored version: an older version taken back as the draft.

Intermediate saves within one session aren't kept. Naming a version ("Before the tickets rework") keeps it for good; "Name this version", in the Deploy button's menu, names the draft.

In the editor, click a version to see what it changed; Compare and Name are beside it, the rest in its ⋯ menu. In the Blueprint's window, everything is in the version's ⋯ menu:

  • Compare with the draft: the canvas shows what was added, changed or removed (The editor);
  • Restore: the version becomes the draft, without deleting anything or touching what runs;
  • Deploy this version: it goes online, and your draft doesn't change. Handy to roll back fast.

The Blueprints page

Each Blueprint has its card there: its status, what triggers it, what's wrong (a suspension, a permission the bot lacks), its week, its cost and who edited it last. A button switches to a table, one line per Blueprint; your choice is kept. Statuses, tags, search and sorting filter the list.

A click opens the Blueprint's window, as does a Blueprint named elsewhere (the activity log, the home page, Variables, the Bot page, Analytics), over the page you're on: Pause or Resume, Deploy, Open the editor, and the ⋯ menu (Edit the details, Duplicate, Copy link, Delete). Its tabs: Overview (what the draft changes since the version online, the last 7 days, what triggers it, the details, the latest executions), Versions, Activity and Analytics. The pencil next to the name, like "Edit the details", edits the name (60 characters at most), the description (300) and the tags (10, of 24 characters). The window, its tab, and each page's filters are in the address: a refresh keeps them, and Copy link shares the window open.

In the editor, clicking the Blueprint's name, at the top, opens the same window, without what the editor already shows (Deploy, pausing, the versions, the latest executions): Overview, Activity and Analytics, Edit and the same ⋯ menu.

Duplicate creates a draft from the current draft. Its commands keep their names: rename them before deploying it, two commands can't share a name on a server.

Deleting

Deleting a Blueprint removes its commands from Discord and cancels its waits. It can't be done during a test session. Its activity stays readable in the server's log.

The activity log

Who did what, and when. A Blueprint's log opens from the editor's logo menu, Blueprint ▸ Activity. It keeps:

  • creation, renaming, description and tags, deletion;
  • each editing session, when it ends, and each time someone takes the lock;
  • named, restored and deployed versions, pauses, resumes and suspensions;
  • cancelled waits, and each test session, with a link to its history while it exists.

The owner and the managers also have the server's log, on its Activity page: every Blueprint, plus the team's lines changed or removed, Variables corrected on the Variables page (with the member and the old and new value), and changes to the bot's Discord permissions. Tabs sort it by topic (Blueprints, Team, Variables, Bot), and filters by Blueprint, member and period. The log is kept one year. Executions aren't in it: they have their own.