The Vani OS storyline walkthrough. If you're meant to see this, you already have the passphrase.
VANI OS · A DAY IN THE SYSTEMAct 0 / 13
Vani OS · A Day in the System
Nobody pays us for a phone call. They pay us when Ananya enrolls.
This walks through one real day inside Vani OS — one real lead, real transcript lines, real numbers — from the moment her inquiry lands to the invoice that goes out for her, and only for her, once she's actually admitted.
Scroll to move through it at your own pace — each Act animates as it comes into view — or press Play to sit back and watch it run start to finish.
THE ACTUAL PRODUCT
There's no license fee for the software. Setup and platform keep the lights on — the only line that scales with anything is the outcome fee, and it only ever appears next to an admit that wasn't going to happen anyway. You're not buying a seat count. You're buying enrolled students.
ACT 01
Before the first call — two baselines, locked separately
SGT University (campus programs) and SGT Online (digital-funnel programs) are two different profiles in the same system. Nothing about them is shared — different lead volume, different conversion targets, different fee, different persona.
🔒 locked · this cycle
SGT University — Tara
leads_this_cycle
12,000
baseline_admits
600
expected_conversion
18%
outcome_fee
₹15,000/admit
🔒 locked · this cycle
SGT Online — Lucy
leads_this_cycle
30,000
baseline_admits
600
expected_conversion
10%
outcome_fee
₹10,000/admit
Same engine underneath both cards — different numbers, different persona, different fee. Merging them into one shared baseline would defeat the entire point of tracking incremental admits per program.
ACT 02
Every raw inquiry gets scored before anyone calls it
Leads arrive from WhatsApp, the web form, and CRM/CSV imports all day. Before a single call is placed, each one is scored against a real catalogue-program match — never an invented threshold — and sorted P1 (call now) through P4 (nurture).
💬 WhatsApp Ananya Sharma
🌐 Web form Rohan Mehta
📄 CSV import Fatima Khan
💬 WhatsApp Karthik Rao
SCORING ENGINE fit vs. catalogue programexam score · budget · timeline · program match
P1
Ananya Sharma — MBA, 88%ile CATfit: exact
P2
Rohan Mehta — B.Tech CSEfit: strong
P3
Fatima Khan — BBA, exploringfit: partial
P4
Karthik Rao — no program statedfit: nurture
P1 leads reach a call within minutes; P4 leads go into WhatsApp nurture until they say something that re-scores them. The queue in Act 03 is what this produces at scale — dozens of these, live, at once.
ACT 03
The queue, mid-afternoon — several of these running at once
This is what Console actually looks like on a real afternoon — voice and WhatsApp side by side, different stages, one escalating. We're about to zoom into Ananya's call specifically.
📞Ananya S.discoverysgt-tara01:42
💬Priya N.fitsgt-tara04:10
📞Rohan M.escalatingsgt-online-lucy03:05
💬Fatima K.openingsgt-tara00:22
📞Devansh P.objectionsgt-online-lucy05:51
Rohan's call is already escalating — a hard gate has fired there too. Multiple guardrails can be live across the floor at the same moment; none of them wait for a human to notice.
ACT 04
Zooming in: the state machine, moving in real time
This is the state machine — a fixed sequence of conversation stages the call must move through in order. It cannot skip from Opening straight to Commitment, and every reply Tara gives is shaped by which node the conversation is in right now, not by what would sound persuasive in the moment.
Opening
Discovery
Fit
Recommend
Objection
Commitment
Escalating
Why this matters: a free-form chatbot can wander — answer a fee question mid-objection, promise something during discovery. This one physically cannot: the node it's in constrains what it's allowed to do next.
ACT 05
Ananya asks the one question the AI is never allowed to improvise
This is CDL — Counsellor Definition Language, a plain rulebook of what the AI can and can never say, matched by phrase category, not by asking the model to behave. "Will I definitely get in?" trips Category 5 — Admission Decision — and the same rule fires identically on every call, every time, regardless of how the model is otherwise behaving that day.
Category 5 — Admission Decision
Routes to admissions committee
FIRES WHEN CALLER SAYS
will i get inam i selectedwill i definitely get admission
BOT MUST NEVER SAY
you will get inyou're confirmedadmission is guaranteed
HANDOFF LINE — SPOKEN VERBATIM
"I can't make admission decisions myself — that's done by our admissions committee after reviewing your full application. Let me get them to call you and walk you through the process."
The state machine also reacts: this call's node jumps straight to Escalating, the same way Rohan's did back in Act 03 — regardless of which node the conversation was in a second earlier.
ACT 06
What a human supervisor sees — and can do — mid-call
Escalation doesn't mean the call goes dark. A supervisor watching Console can listen in silently, or take the call over entirely, without dropping it.
CALL STATE — ANANYA S.
Escalating · Category 5
Click an action to see what the counsellor's screen shows.
Listen in streams the live audio silently. Barge in opens the supervisor's mic into the same call without hanging up. Take over hands the whole call to a human — the AI stands down, the transcript stays continuous.
ACT 07
Meanwhile — the same engine, running as text
Priya and Fatima's threads from the Act 03 queue, live at the same moment as Ananya's call. Same CDL rules, same state machine — a hard gate on WhatsApp fires exactly the way it does on a call.
PRIYA N. · sgt-tara
FATIMA K. · sgt-tara
Every WhatsApp turn produces the same canonical event shape as a voice call — that's the whole reason Act 09's pipeline doesn't need to know which channel an event came from.
ACT 08
The call ends — and becomes one signed, structured record
Nothing about billing or the dashboard reads the transcript. It reads this — a single canonical event, assembled the moment the call ends.
Signing happens before this ever leaves the runtime — a copied or replayed request with a stale timestamp is rejected outright, not just logged.
ACT 09
One lock, so the same event can never be counted twice
This exact sequence was rebuilt on 2026-08-30 after a real race condition let a retried request slip past — the check and the write now share a single lock.
Signed event arrives
🔒 One lock dedupe + append
Event_Log row written
Connector_Health heartbeat
Why the lock matters: without it, a slow response plus a client retry could both pass the "is this new?" check before either had written — producing a real duplicate admit. Confirmed live, fixed the same day.
ACT 10
Does this event owe a fee? The pricing engine decides.
Ananya's handoff event isn't priced yet — it's a qualified handoff, not an enrollment. This is the decision the pricing engine actually runs once she does enroll.
baseline_excluded?
true → no fee, ever
false → continue ↓
course_fee band
< ₹50K → micro-outcome
₹50K–5L → flat fee
₹5L–25L → % of tuition
result
₹15,000 → Outcome_Fees_Ledger
The same event, marked baseline_excluded: true instead, produces zero fee through this exact same path — that's how a baseline admit and an incremental admit are told apart at billing time.
ACT 11
Two dashboards, because two different people are asking two different questions
Neither one substitutes for the other, and nothing here waits for month-end — both recompute the moment a real event lands.
VOICE-AI ANALYTICS"Is the AI actually working, call by call?"
Total calls
54
Avg cost / call
₹0.88
Avg call length
9m 05s
Priority score accuracy — does a P1 lead actually convert more than a P4?
P4 · Low
1 enrolled / 2 not-a-fit or lost — 10 still in progress, honestly excluded, not padded into the rate.
Read daily by: Vani OS ops, counsellors, supervisors
GOOGLE SHEETS DASHBOARD"Are we getting outcomes for what we're paying?"
Enrollments confirmed
0
Incremental admits
0
Incremental revenue
₹0 Cr
ROI multiple
0×
Read monthly by: SGT University finance and leadership
Voice-AI Analytics is about call quality and AI cost — it has no idea what a rupee is worth to the university. The Sheets dashboard is about outcomes and money — it has no idea how a call actually went. Neither one is the whole picture alone; together they're the whole system.
ACT 12
Pull back — everything you just watched, as one system
Two channels in, one runtime enforcing the same state machine and CDL on both, one signed event out — then a single source of truth that pricing, both dashboards, and the invoice all read from independently. For the full request-by-request sequence and the Cloud/On-Prem options, the companion architecture reference (linked in the footer) goes deeper than this page needs to.
Every box here is something you already watched happen to Ananya's call in Acts 04–11 — this is just the same mechanism, seen as a whole instead of one lead at a time. The teal path is the only one that produces a fee.
reads / triggers the outcome-fee path
ACT 13
Month-end — the ledger becomes an invoice
Every line on this invoice is a rollup of real, individually-signed Outcome_Fees_Ledger rows — an auditor can walk backward from any line to the exact event that produced it.