Skip to Content
Wisteria is in beta — these docs are evolving fast.
ConceptsApproval workflows

Approval workflows

Wisteria separates authoring from approval. Trainers write courses; content managers (or other approvers) review them. Workflows are the rules that decide who reviews what, in what order.

The big idea: tags drive routing

A course is tagged when it’s created. Workflows are configured to trigger on specific tags. When a course tagged safety is submitted, the Safety workflow fires. When a course tagged customer-service is submitted, the Customer Service workflow fires.

This means workflow choice isn’t decided by the trainer at submission time — it’s decided by which tag the course already carries. The trainer can’t sidestep the appropriate review chain by picking a more lenient workflow.

A course without a tag can’t be submitted. That’s by design: if no workflow applies, there’s no approver chain to send the course down.

Templates

Wisteria ships three workflow templates. Super admins can use them as-is, customise them, or duplicate them as a starting point for new workflows.

Single Approver

A single content_manager reviews. One step, one decision.

StepRoleAction
1content_managerApprove or reject

Use for: low-stakes content, internal-facing training, courses where one set of eyes is enough.

Peer Review

Two content_managers review in sequence. Each must approve for the course to proceed.

StepRoleAction
1content_managerFirst review
2content_managerSecond review

Use for: medium-stakes content, where a second pair of eyes catches what the first misses. The two reviewers must be different people.

Compliance Triple Sign-off

Three steps with role variety — a peer review, a compliance check, and a super_admin sign-off.

StepRoleAction
1content_managerEditorial review
2auditorCompliance review
3super_adminFinal sign-off

Use for: regulated training, courses that map to legal or compliance obligations, anything where audit traceability matters.

Multi-tag courses

If a course has multiple tags and multiple workflows match, the strictest workflow wins — defined as the one with the most steps. A course tagged both safety (single approver) and compliance (triple sign-off) routes through the triple sign-off.

This is the safe default. The trainer doesn’t pick; the rule picks.

Custom workflows

At Approvals → Workflow → + Create from scratch, super admins can build any workflow. The builder is a Zapier-style step chain:

  • Trigger card — pick the tag(s) that activate the workflow. Multi-select chips.
  • Step card — one per step. Each step has:
    • Role — content_manager, trainer, auditor, super_admin
    • Department — restrict to a specific department, or any
    • Action label — pick from seven common review types (Editorial review, Compliance review, etc.) or Custom
    • Parallel with previous step — optional checkbox; both steps’ approvers act simultaneously rather than sequentially

Save the workflow and it’s live for any course tagged with one of its triggers.

The rejection-and-resubmit cycle

When a step’s approver rejects, the course goes back to the trainer as draft. The trainer addresses the feedback in the Queries tab, writes a reply, and clicks Send & Resubmit. The course re-enters the workflow at step 1 — the whole chain runs fresh.

This is intentional: a fix in step 1 might affect what step 2 needs to see. Restarting the chain ensures every reviewer reads the final version.

Content locking during review

When a module is submitted for approval its content is locked. The trainer cannot edit flashcards or quiz questions while the module is pending_approval. This prevents the module changing under the reviewer’s eyes mid-review.

The lock states, by module status:

StatusFlashcardsQuiz
draftEditableEditable
pending_approvalLockedLocked
queried (flashcards returned)EditableLocked
queried (quiz returned)LockedEditable
queried (whole module returned)EditableEditable
approvedLockedLocked
publishedLockedLocked
archivedLockedLocked

What the trainer sees: a banner on the module editor explains why each section is locked and what the path to editing is. If the reviewer queries a section, only that section unlocks — the other stays locked.

Approved sections stay locked while the queried section is being fixed. If the reviewer approved the flashcards but sent back the quiz, the trainer can edit the quiz but not the flashcards.

To edit a published or approved module: create a new revision. This creates a parallel draft that goes back through the approval workflow before replacing the live version.

Trainer can’t approve their own work

A trainer who is also listed as an approver in some workflow can’t approve a course they themselves authored. The system prevents self-approval at every step.

Notifications

Each step’s approver gets notified by email and (optionally) Slack when a course lands in their queue. The trainer gets a per-step notification when their course is approved or rejected at any step — they don’t have to wait for the whole chain to finish to know how it’s going.

Approval reminders fire on a 4-hour cadence: gentle at 4–8h, repeat at 24–28h, escalation at 48–52h. Reminders stop automatically when the step is acted on.

The “no tag = no submit” rule, again

Worth repeating: a course without any tags cannot be submitted for approval. The submit button is disabled with an inline hint pointing the trainer to add a tag first.

This is the single most common point of confusion for new trainers. We chose to enforce it (rather than route untagged courses through a default workflow) because untagged courses tend to be the ones reviewers most want to know the lineage of.

Last updated on