fsl.tools
// Patterns r08

Optional branch

A pipeline with one optional fork — review-then-publish, or skip-and-publish. The branch lives in the graph, not in a flag you have to remember to set.

Code

post.fsl
const post = sm`
  draft      'submit'    reviewing;
  draft      'publish'   live;       // admin shortcut
  reviewing  'approve'   live;
  reviewing  'reject'    draft;
`;

Graph

submit approve reject publish draft reviewing live