[{"data":1,"prerenderedAt":226},["ShallowReactive",2],{"/en/workflows/branch-signal-decision-sharpener":3},{"id":4,"slug":5,"locale":6,"translationGroupId":7,"localeSwitchApproved":8,"title":9,"description":10,"documentationMarkdown":11,"workflowJson":12,"category":205,"tags":206,"integrations":210,"difficulty":213,"author":214,"verified":33,"featured":33,"date":215,"modified":215,"icon":7,"imageSrc":7,"path":216,"alternates":217,"seo":218},"44fbd3ac-040f-458f-83b8-7ddfc7bacc2b","branch-signal-decision-sharpener","en",null,true,"Branch Signal Decision Sharpener","An interactive guide that helps teams pressure-test branch numbers, spot dirty signals, and choose when to trust automation vs. human judgment—before a confident meeting goes off the rails.","## How it works\nThis workflow turns “we’ve got the numbers” into decision-ready judgment. It first tries to answer questions from your Calypso Knowledge Base (so repeat questions don’t steal time), then offers a short menu of practical checks that help operators and leaders separate trustworthy branch signals from polished noise.\n\nUse it when conversations start sounding confident but the evidence is messy: branch-level events that don’t reconcile, attribution that flatters the last touch, or dashboards that look clean because the dirt got filtered out—not fixed.\n\n## Key features\n- Knowledge Base first: answers common signal/measurement questions automatically, then routes to guided decision checks.\n- Button-based triage: operators can choose the exact decision they’re trying to make (trust a number, compare branches, automation vs. judgment, etc.).\n- Built-in “dirty signal” detection prompts to catch the usual failure modes early (before the meeting slides harden).\n- Clear escalation path to a human via a dedicated handoff option.\n- Loop-back behavior for misclicks or unclear inputs so operators can quickly re-select an option.\n\n## Step-by-step\n1. **Start (Input):** A user opens the chat and asks a question or requests help.\n2. **Knowledge Base Policy:** Calypso attempts an immediate answer from your Knowledge Base. If it can’t confidently answer, it falls back to routing.\n3. **Decision menu (Interactive Message):** The user picks what they’re trying to decide:\n   - Which branch numbers deserve trust\n   - How to spot dirty signals\n   - When to trust automation vs. human judgment\n   - How to compare branches and attribution without fooling yourself\n   - How to build a signal culture that produces decisions (not slides)\n   - Talk to a human\n4. **Routing (IF nodes):** The workflow checks which button was clicked and sends the matching guidance.\n5. **Outcome:**\n   - For guidance options, the user receives a concise, decision-shaped checklist.\n   - For “Talk to a human,” the workflow hands off to your chosen department.\n   - For unrecognized selections, it prompts the user to try again and returns to the menu.\n\n## Setup requirements\n- **Calypso Knowledge Base** connected and populated with your internal measurement definitions (events, branches, attribution rules, and exceptions).\n- **A Calypso department** to receive handoffs (set the department ID/name in the Fallback node).\n- No additional credentials are required beyond standard Calypso access for editing workflows and managing the Knowledge Base.",{"id":13,"teamId":14,"name":9,"version":15,"workflowVersion":16,"nodes":17,"connections":171,"routingEnabled":8,"active":33},"wf_branch_signal_decision_sharpener_v1","calypso-public-library","1.0.0",1,[18,34,40,52,83,93,101,107,112,118,124,130,136,142,148,154,164],{"id":19,"name":20,"type":21,"typeVersion":16,"position":22,"parameters":25,"category":32,"deletable":33,"connectable":33},"node_flow_configs","Workflow settings","flow-configs",[23,24],-240,40,{"name":9,"description":26,"tags":27,"triggerType":31},"KB-first decision coaching for branch metrics, dirty signals, automation vs judgment, and fair comparisons.",[28,29,30],"branch-metrics","signal-quality","decision-making","input","policy",false,{"id":35,"name":36,"type":31,"typeVersion":16,"position":37,"parameters":39,"category":31,"deletable":33,"connectable":8},"node_input","Start",[38,24],-40,{},{"id":41,"name":42,"type":43,"typeVersion":16,"position":44,"parameters":46,"category":51,"deletable":8,"connectable":8},"node_kb_policy","Knowledge Base answer (with routing fallback)","knowledge-base-policy",[45,24],180,{"enabled":8,"fallbackToRouting":8,"sticky":8,"stickyMode":47,"activationOpener":48,"personalization":50},"default",{"enabled":8,"instruction":49},"Ask your question about branch numbers, attribution, event definitions, or decision signals. If I can’t answer from our knowledge base, I’ll offer a quick decision menu.",{"useContactName":33},"response",{"id":53,"name":54,"type":55,"typeVersion":16,"position":56,"parameters":58,"category":51,"deletable":8,"connectable":8},"node_menu","Decision menu","interactive-message",[57,24],420,{"messageType":59,"headerText":60,"bodyText":61,"footerText":62,"sectionTitle":63,"buttons":64,"ctaDisplayText":63,"ctaUrl":63},"button","Make the decision, not the slide","Pick what you’re trying to decide. I’ll give you a fast checklist to separate trustworthy signals from polished noise.","Tip: If it looks too clean, run Dirty signal checks.","",[65,68,71,74,77,80],{"id":66,"title":67},"trust_numbers","Trust branch numbers",{"id":69,"title":70},"dirty_signal","Dirty signal checks",{"id":72,"title":73},"automation_vs_human","Automation vs humans",{"id":75,"title":76},"compare_attribution","Compare branches",{"id":78,"title":79},"signal_culture","Build signal culture",{"id":81,"title":82},"handoff","Talk to a human",{"id":84,"name":85,"type":86,"typeVersion":16,"position":87,"parameters":90,"category":92,"deletable":8,"connectable":8},"node_if_trust","If: Trust branch numbers","if",[88,89],660,-140,{"buttonId":66,"operator":91},"equals","routing",{"id":94,"name":95,"type":96,"typeVersion":16,"position":97,"parameters":99,"category":51,"deletable":8,"connectable":8},"node_text_trust","Trust checklist","text-message",[98,89],900,{"text":100},"Branch numbers you can trust usually share three traits: (1) they reconcile to a source of truth, (2) they’re stable under small definition changes, and (3) they have a known failure mode.\n\nQuick checks before you repeat a number in a confident meeting:\n- Definition: What *exactly* is counted? What is explicitly excluded?\n- Coverage: Which branches or channels are missing data (and is “missing” treated as zero)?\n- Timing: Are there lagging updates (backfills) that make today look better than it is?\n- Duplicates: Can a single real-world action fire multiple events?\n- Incentives: Does anyone benefit if this metric drifts up without reality improving?\n\nRule of thumb: if a metric can’t survive one tough follow-up question, it’s not ready to drive a decision.",{"id":102,"name":103,"type":86,"typeVersion":16,"position":104,"parameters":106,"category":92,"deletable":8,"connectable":8},"node_if_dirty","If: Spot dirty signals",[88,105],-20,{"buttonId":69,"operator":91},{"id":108,"name":70,"type":96,"typeVersion":16,"position":109,"parameters":110,"category":51,"deletable":8,"connectable":8},"node_text_dirty",[98,105],{"text":111},"Dirty data is polite: it shows up on time, looks consistent, and lies with a straight face.\n\nDirty-signal spotters (fast, unglamorous, effective):\n- Spike test: Did anything real-world change, or only the tracking/definition?\n- Symmetry test: Do related metrics move together (or did one “magically” improve alone)?\n- Boundary test: Do edge cases (refunds, cancellations, transfers, reopened tickets) behave sensibly?\n- Floor test: Is there suspiciously little variance across branches that should differ?\n- Funnel test: If the top went up, where did the downstream volume come from?\n\nWhat usually breaks first: event naming, dedupe logic, and ‘unknown’ buckets getting quietly dropped.",{"id":113,"name":114,"type":86,"typeVersion":16,"position":115,"parameters":117,"category":92,"deletable":8,"connectable":8},"node_if_auto","If: Automation vs judgment",[88,116],100,{"buttonId":72,"operator":91},{"id":119,"name":120,"type":96,"typeVersion":16,"position":121,"parameters":122,"category":51,"deletable":8,"connectable":8},"node_text_auto","Automation vs judgment guidance",[98,116],{"text":123},"Trust automation when the decision is frequent, reversible, and the signal is well-instrumented.\n\nLet automation lead when:\n- The action is low-risk (you can roll it back quickly).\n- The metric is directly observed (not heavily modeled).\n- You have monitoring for drift and missing data.\n\nInsist on human judgment when:\n- The decision is one-way (reputation, staffing, closures, compliance).\n- The signal is a proxy stacked on proxies (attribution, sentiment scoring, blended indexes).\n- You’re comparing branches with different contexts (footfall, staffing, market mix).\n\nPractical compromise: automate the *recommendation*, require humans to confirm when a ‘tripwire’ is hit (data freshness gaps, unusual variance, definition changes).",{"id":125,"name":126,"type":86,"typeVersion":16,"position":127,"parameters":129,"category":92,"deletable":8,"connectable":8},"node_if_compare","If: Compare branches & attribution",[88,128],220,{"buttonId":75,"operator":91},{"id":131,"name":132,"type":96,"typeVersion":16,"position":133,"parameters":134,"category":51,"deletable":8,"connectable":8},"node_text_compare","Comparison checklist",[98,128],{"text":135},"Branch comparisons fail when teams compare outputs without comparing constraints.\n\nBefore you rank branches or declare a channel ‘works’:\n- Normalize: Compare rates (per visit, per staffed hour) before totals.\n- Context: Check mix shifts (seasonality, staffing, promotions, local events).\n- Eligibility: Are all branches equally able to generate the event you’re counting?\n- Attribution: Last-touch flatters the last thing that happened, not the thing that mattered.\n- Survivorship: Are you only looking at branches/customers that stayed in the funnel?\n\nSimple honesty test: if switching attribution rules changes the ‘winner,’ you don’t have a winner—you have a measurement argument.",{"id":137,"name":138,"type":86,"typeVersion":16,"position":139,"parameters":141,"category":92,"deletable":8,"connectable":8},"node_if_culture","If: Build signal culture",[88,140],340,{"buttonId":78,"operator":91},{"id":143,"name":144,"type":96,"typeVersion":16,"position":145,"parameters":146,"category":51,"deletable":8,"connectable":8},"node_text_culture","Signal culture playbook",[98,140],{"text":147},"A good signal culture makes decisions easier—because the truth is cheaper to access than the story.\n\nBehaviors that work (and don’t require a committee):\n- One metric, one owner, one written definition.\n- ‘Show your work’ norms: every chart includes source, time window, and known gaps.\n- Change logs for tracking/definitions (so spikes aren’t mysteries).\n- Red-team a number before leadership sees it: “How could this be wrong?”\n- Reward corrections: catching a bad signal early is a win, not an embarrassment.\n\nWit-worthy rule: if your dashboard needs a narrator, it’s not a dashboard yet.",{"id":149,"name":150,"type":86,"typeVersion":16,"position":151,"parameters":153,"category":92,"deletable":8,"connectable":8},"node_if_handoff","If: Talk to a human",[88,152],460,{"buttonId":81,"operator":91},{"id":155,"name":156,"type":157,"typeVersion":16,"position":158,"parameters":159,"category":163,"deletable":8,"connectable":8},"node_fallback","Handoff to team","fallback",[98,152],{"handoffMessage":160,"departmentId":161,"departmentName":162},"Got it. I’m handing this to a teammate who can help you validate the signal and the decision behind it.","ops-analytics","Operations Analytics","terminal",{"id":165,"name":166,"type":96,"typeVersion":16,"position":167,"parameters":169,"category":51,"deletable":8,"connectable":8},"node_text_unknown","Unknown selection",[98,168],580,{"text":170},"I didn’t catch that selection. Please choose one of the buttons so I can route you to the right checklist.",[172,175,177,179,182,185,187,189,191,193,195,197,199,201,203],{"id":173,"source":35,"target":41,"sourceHandle":174,"targetHandle":174,"type":47},"conn_input_to_kb","main",{"id":176,"source":41,"target":53,"sourceHandle":174,"targetHandle":174,"type":47},"conn_kb_to_menu",{"id":178,"source":53,"target":84,"sourceHandle":174,"targetHandle":174,"type":47},"conn_menu_to_if_trust",{"id":180,"source":84,"target":94,"sourceHandle":181,"targetHandle":174,"type":47},"conn_if_trust_true_to_text","true",{"id":183,"source":84,"target":102,"sourceHandle":184,"targetHandle":174,"type":47},"conn_if_trust_false_to_if_dirty","false",{"id":186,"source":102,"target":108,"sourceHandle":181,"targetHandle":174,"type":47},"conn_if_dirty_true_to_text",{"id":188,"source":102,"target":113,"sourceHandle":184,"targetHandle":174,"type":47},"conn_if_dirty_false_to_if_auto",{"id":190,"source":113,"target":119,"sourceHandle":181,"targetHandle":174,"type":47},"conn_if_auto_true_to_text",{"id":192,"source":113,"target":125,"sourceHandle":184,"targetHandle":174,"type":47},"conn_if_auto_false_to_if_compare",{"id":194,"source":125,"target":131,"sourceHandle":181,"targetHandle":174,"type":47},"conn_if_compare_true_to_text",{"id":196,"source":125,"target":137,"sourceHandle":184,"targetHandle":174,"type":47},"conn_if_compare_false_to_if_culture",{"id":198,"source":137,"target":143,"sourceHandle":181,"targetHandle":174,"type":47},"conn_if_culture_true_to_text",{"id":200,"source":137,"target":149,"sourceHandle":184,"targetHandle":174,"type":47},"conn_if_culture_false_to_if_handoff",{"id":202,"source":149,"target":155,"sourceHandle":181,"targetHandle":174,"type":47},"conn_if_handoff_true_to_fallback",{"id":204,"source":149,"target":165,"sourceHandle":184,"targetHandle":174,"type":47},"conn_if_handoff_false_to_unknown","automation",[28,29,30,207,208,209],"data-hygiene","attribution","operations",[211,212],"Calypso Knowledge Base","Web chat","intermediate","Calypso","2026-08-01T11:03:51.647Z","/en/workflows/branch-signal-decision-sharpener",{"en":216},{"title":9,"description":219,"ogDescription":220,"twitterDescription":221,"canonicalPath":216,"robots":222,"schemaType":223,"alternates":224},"Pressure test branch metrics, spot dirty signals, and decide when to trust automation vs human judgment with a guided chat workflow.","Turn messy branch signals into decision ready checks: trust the right numbers, catch dirty data early, and know when humans should override automation.","A practical chat workflow to vet branch numbers, catch dirty signals, and choose when automation is enough—or when judgment must lead.","index,follow","HowTo",[225],{"hreflang":6,"href":216},1785947666110]