Child support sandbox — demo script Northwoods Traverse · fake data, simulated integrations
Click-by-click demo script

Child support sandbox

Eleven scenarios, each written as an exact click path with the line to say and the thing to point at. Run any scenario cold: every one opens from the demo panel and resets in one click.

Before you start

  1. Open Child Support Sandbox and press Reset demo in the panel, bottom right.
  2. Full-screen the browser. The design target is 1440px wide.
  3. Say once, at the top: the data is fake, the integrations are simulated, and refresh is a reset.
  4. Leave the panel open if you plan to switch persona or clock; collapse it with Hide for clean screenshots.

Every scenario below also runs inside the prototype. Click a scenario in the demo panel or in How to demo and a walkthrough panel steps you through the same path, one step at a time. It follows you if you navigate on your own. This sheet is the paper copy — use whichever suits the room.

The five cases

Case ALA-2026-0148372 Boudreaux — new case, order just established
Case BLA-2026-0151204 Landry — paternity contested, confidential party
Case CLA-2024-0098431 Comeaux — $8,412.16 arrears, enforcement
Case DLA-2023-0074119 Rivers — incarcerated 240 days
Case ELA-2021-0043907 Hebert — two orders, three children

Demo panel reference

Scenario launcher
Jumps straight to the opening screen of any of the eleven.
Persona
Intake, Enforcement, QA, Supervisor. Changes queues, limits and approvals.
State configuration
Louisiana or State B. Swaps clocks, thresholds, terminology, templates.
Clock
+1d, +7d, +30d, +31d. Expires windows and fires calendar flags.
State toggles
Empty, Loading, Error, Blocked, SLA breach, Feed stale, Interface failure.
Rule tracer / Annotations
Shows the rules acting on the current screen, and the fidelity note.
SC-01

Creating a new case

Intake specialist · 6 min

Opens at the intake dashboard. The path is referral to activated case, and it deliberately hits a block and a failed verification on the way. Rules seen: RUL-011, RUL-012, RUL-013, RUL-014, RUL-015.

01  Panel → SC-01. Lands on the intake dashboard. Point at the four referral channels and the 20-day setup clock in the stat row.
02  Click “Referral inbox”. Set the channel filter to EAP referral, then clear it. Say: the same inbox handles applications, interstate and court referrals; the channel is data, not a separate screen.
03  Click row R-1042. The referral payload, the parties, and the child date of birth showing red because it was not supplied.
04  Click “Continue to member clearance”. Claiming fires RUL-011 and creates the setup task on the state clock — the toast names it.
05  Read the three clearance cards. 96% links directly, 78% needs a comparison, 41% creates a new record. Say: the worker never guesses the threshold — RUL-012 routes each party.
06  On the 78% card click “Open comparison”, read the two differences, then “Same person — link”.
07  Clear the other two: “Link to P-2401” on the 96%, “Create new person record” on the 41%. Then “Continue to case setup”.
08  Click “Activate case” with the date of birth still empty. The red block appears, names RUL-013 and says who can unblock it. This is the moment to pause on: the system refuses and explains, rather than failing silently later.
09  Fill the date of birth, click “Activate case”. Lands on the verification panel.
10  Verify identity. Then on the address row click “Mark undeliverable” — RUL-014 creates the locate task and the banner offers the next step.
11  Click “Open locate request” → “Submit locate request” → “Advance scripted response”. Three sources return. Click “Verify returned address”. Flag it: the locate return is scripted, and the screen says so.
12  “Continue to order status” → “Choose this path” under No order found. (Path B registers an existing order — worth showing only if asked.)
13  Click “Complete setup”. The green banner names the task RUL-015 just created and its due date. Close on “Open my tasks” so the new task is visible in the queue.
SC-02

Monitoring financial activities

Intake or enforcement · 5 min

Case A for the clean ledger, Case E for the hard one — two orders and three children off a single payment. Rules seen: RUL-022, RUL-025, RUL-112.

01  Panel → SC-02. Case A financial summary. Every figure in the stat row is a link, not a label.
02  Click “Generate statement”. Choose a period, click “Generate statement”. The dated statement renders with the office, both parties and the applied-to column. “Print or save as PDF” if the room wants the paper artefact.
03  Case tab → Ledger. Filter by source, sort by amount. Say: source travels with the payment all the way through to disbursement.
04  Search “LA-2021” in the header, open Case E, go to Ledger, click payment P-88410. The allocation trace indents receipt → debt → child, and the $905 splits across two orders and three children.
05  Point at the allocation hierarchy version in the receipt panel. Say: when a parent asks why they got that amount, this is the answer, and it is versioned.
06  Back to Case A → Disbursements. DIS-5455 came back undeliverable. Click “Queue reissue”.
07  Panel → toggle “Feed stale”. The freshness banner appears on the summary, ledger and disbursements, and balances stop claiming to be current. Toggle it back off. Say: the system never presents stale money as live money.
SC-03

Updating debt information

Enforcement, then supervisor · 5 min

A disputed arrears adjustment large enough to leave the worker's hands. Needs a persona switch — say so before you make it. Rules seen: RUL-030, RUL-031, RUL-081.

01  Panel → SC-03. Case C debts: current support, arrears, interest, each with its origin.
02  Click “Add debt”, pick a type, accept the defaults, “Add debt”. It lands in the table with an origin and an audit line.
03  Click the DBT-102 support arrears row. The adjustment dialog opens pre-filled with a disputed −$1,500 and the receipts as evidence. Read the limit line at the top.
04  Click “Submit adjustment”. RUL-030 routes it instead of posting it. The toast names the limit, and the debt row shows the pending adjustment. Say: nothing moved yet, and the parent's balance is untouched.
05  Click “Open approval queue” → the pending journal row.
06  Point at the red block. RUL-081: the person who submitted it cannot approve it. There is no approve button to press.
07  Panel → Persona → Supervisor. The same screen now offers Approve and Reject. Click “Approve”.
08  Click “Advance: processor confirms”. Approved is not posted — RUL-031 holds it until the processor confirms, then the balance moves. Optional: run “Advance: processor rejects” instead to show the exception landing in reconciliation.
09  Back to Case C → Debts. The adjustment history now carries date, amount, reason and approver. Switch the persona back to Enforcement officer.
SC-04

Incorporating court details

Intake specialist · 6 min

Case B, paternity contested. Referral lifecycle, failed service, a contempt outcome, an order that disagrees with the record, and a warrant. Rules seen: RUL-040, RUL-041, RUL-042, RUL-043, RUL-044.

01  Panel → SC-04. The legal timeline: filings, hearings, outcomes and received orders on one spine, colour-coded by event type.
02  Click “Service tracker”. Two failed attempts already on file. Click “Record attempt” for a third — RUL-043 fires and the alternate service task appears.
03  Click “Refer to court for alternate service”. Fill nothing, click “Create referral”. RUL-044 creates the referral event and the filing task.
04  Click the referral row twice. Prepared → filed → set for hearing. The second click also creates the hearing and pauses the enforcement clock under RUL-040. Say: a referral is a lifecycle, not a checkbox.
05  Case tab → Legal → find the hearing → “Record outcome”. Leave the structured result on Contempt found and click “Record outcome”. RUL-041 creates the remedy re-evaluation task.
06  Click “Order intake” → “Attach and compare”. The received document disagrees with the case record on two terms, shown side by side.
07  Click each discrepancy row to accept the document, then “Open order version history”. The prior version is retained and marked superseded. Say: the record never silently overwrites itself.
08  Case tab → Legal → “Warrants” → “Record warrant”. RUL-042 puts a red banner in the case header. Navigate to two other tabs to show it follows you, then click the warrant row to recall it.
SC-05

Managing case modifications

Enforcement officer · 7 min

The longest path, and the one policy people care about most. Incarceration suspension end to end, then the objection branch. Rules seen: RUL-050, RUL-051, RUL-052, RUL-053, RUL-054.

01  Panel → SC-05. Opens on Alerts. Say: the work found the worker — the corrections feed raised this, nobody went looking. Click “Act on it” on the incarceration alert.
02  Click “Verify against feed” → “Run qualifying test”. The toast does the arithmetic out loud: 240 days against the 180-day Louisiana period.
03  Click “Initiate suspension” — RUL-050 creates the affidavit task — then “Affidavit and notice”.
04  “Generate affidavit” → “Send notice to custodial parent”. The countdown appears: 30 days for the custodial parent to object.
05  Panel → Clock → +31d. The window expires with no objection, so the suspension takes effect. Go back to the incarceration screen: the case is suspended.
06  Case tab → Enforcement. Every remedy is suppressed and the ladder says why, under RUL-051. This is the payoff: a policy decision on one screen disables actions on another, automatically.
07  Case tab → Incarceration → “Reinstatement” → “Record release”. The grace period is applied and the resumption date is computed, not typed.
08  The objection branch. Press Reset demo, re-run steps 1–4, then go to “Objection handling” and click “Record objection”. RUL-052 stops the administrative suspension dead and demands a contradictory motion. Worth the reset — this is the question every policy reviewer asks.
09  Case tab → Modification → “Open comparison” → “Recalculate”. The threshold test is explicit: percentage change against the state threshold, with the schedule version named. Point out that the arithmetic is simulated and the screen says so.
SC-06

Journals

Enforcement, then supervisor · 5 min

An unidentified $340 cheque, researched into the right case. Ends with the suspense list actually clearing. Rules seen: RUL-021, RUL-031, RUL-080, RUL-081.

01  Panel → SC-06. Two items in suspense. The $340 is 12 days old against a 10-day window, so it is already escalated under RUL-021.
02  Click “Research” on SUS-3301. The candidate table appears with a reason and a confidence for each case, not a bare list.
03  Click “Journal to LA-2021-0043907”. The journal form is pre-filled from the research, evidence attached.
04  Read the routing banner before submitting. It states the limit and who this will go to. Say: the worker knows the consequence before they act, not after. Click “Submit journal”.
05  Open the journal from the approval queue. Self-approval is blocked again under RUL-081. Panel → Persona → Supervisor, then “Approve”.
06  Click “Advance: processor confirms”. Posted and dated.
07  Click “Open receiving case ledger”. The $340 is on Case E as a journalled receipt. Then Suspense: the item is gone and the list is clear, and Reconciliation: the matching exception has resolved. Close on this — the money is accounted for in three places at once.
SC-07

Managing case notifications

Any persona, ends as supervisor · 5 min

Why a task exists, and who decided it should. The calendar flag is the part workers ask for by name. Rules seen: RUL-070, RUL-071, RUL-072.

01  Panel → SC-07. Take one task card apart out loud: title, plain-language reason, the rule that created it, the due date, the origin badge, the clock chip. Say: RUL-070 means no task can exist without a reason and a source.
02  Click the rule link on the card. The rule page shows its plain-language statement, its configuration key, the Louisiana value, and every task it has created.
03  Back to My tasks. Filter by origin and by clock. Overdue items are red-edged and already escalated under RUL-072.
04  Click “Work queues” → “Bulk assign to me”. Queues are shared; tasks are personal.
05  Click “Calendar flags”. Click “Simulate” first. It reports how many cases the flag would have fired on, and creates nothing. Say: you can test a rule before you inflict it on your unit.
06  Click “Save flag”. The banner says the flag is armed and names the date it will fire.
07  Panel → Clock → +30d, then My tasks. The new task is there, carrying a flag badge instead of a rule badge. A worker built that, not a developer.
08  Panel → Persona → Supervisor → Calendar flags. Usage counts become governance data; the unused flag is the obvious candidate. Click its row to retire it.
SC-08

Driver's licence suspensions

Enforcement officer · 7 min

The strongest scenario in the set. A remedy that is refused, then time-gated, then fails at the interface, then partially released. Rules seen: RUL-060, RUL-064, RUL-065, RUL-066.

01  Panel → SC-08 → “Remedy ladder”. Read the ladder top to bottom: eligible, eligible, active, and two blocked — one because no property was located, one because a rule to show cause was continued. Say: the blocked ones give a reason, not a grey button.
02  Click “Select” on the licence suspension. RUL-064 immediately creates the notice task and warns that transmission is blocked.
03  On the notice screen, read the address gate first. A verified address exists, so certified mail is allowed. Say: on a case without one, this button is off and the screen sends you to locate. Click “Send notice”.
04  Click “Go to transmission”. Transmit is blocked and the block names the exact date it lifts. Thirty days in Louisiana, and the system knows it.
05  Panel → Clock → +31d. Return to the transmission screen. The pre-flight checklist re-runs at execution: arrears, suppression, notice, interface.
06  Click “Transmit to Office of Motor Vehicles”. It fails. RUL-065 stopped rather than assuming success, and created a retry task. Say: this is the failure mode that ruins a real programme — a suspension the agency thinks it sent.
07  Click “Retry transmission”. Confirmed, dated, and noted on the case.
08  Click “Monitor and release” → “Post a payment (scripted)”. Two of three compliance criteria go green and RUL-066 recommends a partial release. Click “Issue partial release”.
09  Optional contrast: open Case D's enforcement tab. Every remedy is suppressed because that parent is incarcerated. Same ladder, different answer.
SC-09

Notes about a case

Enforcement officer · 4 min

Short, and better than it sounds. The redacted note and the follow-up that becomes a task are the two beats that land. Rules seen: RUL-070.

01  Panel → SC-09. Notes are typed, attributed and dated. The pinned policy decision sits at the top; the system-generated note is visibly different from a worker's.
02  Search “employer disputed”. One note. Say: this is the difference between a note field and an institutional memory — a worker inheriting this case can find the argument from eighteen months ago.
03  Clear the search. Filter to “Worker-authored only”, then back to all.
04  Find the confidential note and click “Reveal (logged)”. It opens, and the access is recorded. Say: safety information is not hidden from the people who need it, but looking at it leaves a trace.
05  Click “Add note”, pick a type, save. Then “Edit” an existing note — the card keeps the edit history rather than replacing the text.
06  Click “Contact log” → “Log contact with follow-up”. The follow-up date becomes a real task on the dashboard. Close on that: the note and the work item are the same act.
SC-10

Wage garnishment

Intake or enforcement · 5 min

Case A to create one, Case E to show the cap actually biting across two orders. Rules seen: RUL-101, RUL-102, RUL-103.

01  Panel → SC-10. Read the cap calculation first: disposable income, the Louisiana percentage, and the resulting ceiling, all before anyone types an amount.
02  Click “Create withholding order”. The dialog repeats the cap in words and pre-fills the amount at or under it. Click “Send to employer”.
03  Point at the employer response window on the resulting card — a state-configured number, not a hardcoded ten days.
04  Click “Simulate new employer match”. RUL-102 drafts an amendment on its own and puts the review task on the dashboard. Click “Amend” to see the draft.
05  Click “Employer record” → “Edit employer information”. Change the payroll contact and save. The linked orders keep the new details — the employer is an entity, not a text field on an order.
06  Back on the withholding screen, show the other two lifecycle actions: “Delegate” hands enforcement to a responding state under UIFSA, “Terminate” requires a reason code. Run one of them.
07  Search for Case E and open its Withholding tab. Two orders, a combined obligation, and the cap forcing proration. Say: this is where most systems quietly get it wrong.
SC-11

Notices to clients

Intake specialist · 6 min

Composition, a hard block on missing merge data, the DocuSign envelope, and the document exactly as the parent received it. Rules seen: RUL-110, RUL-111, RUL-112.

01  Panel → SC-11. The composer opens with a template already recommended from the case type and phase, under RUL-110. The worker can override it.
02  Leave the hearing date empty. RUL-111 blocks generation and lists exactly which merge field is missing. Say: no notice goes out with a blank where a date should be.
03  Fill the hearing date. The merge preview appears with the real values that will be frozen into the sent document.
04  Click “Send notice”. Because this template requires signature, it opens the DocuSign envelope rather than mailing.
05  Click “Send envelope” → “Advance: signer views” → “Advance: signer signs” twice. The lifecycle strip and the signer table move together, and the history logs every event. Flag it: the envelope states are scripted; the provider is swappable.
06  Point at the certificate of completion that appears once both signers are done, hash and all.
07  The decline branch, if asked: reset, re-send the envelope, and click “Advance: signer declines”. A follow-up task appears saying judicial establishment is now required.
08  Case tab → Notices. Filter to “Automated only”, then “Manual only”. Every notice says whether a rule or a named worker sent it.
09  Open an older delivered notice. The document renders with values frozen at the send date. Close on this: when a parent rings up holding a letter, this is the letter they are holding — not a re-render with today's numbers.
10  Undeliverable, if there is time: compose again and use “Send and simulate undeliverable”. RUL-112 creates the locate follow-up.
Closing

Three things to show at the end

One configuration, not one build per state

Open State overlay and read the Louisiana and State B columns side by side. Click Switch to State B, then walk back into SC-08: the notice window is 45 days, the threshold has moved, the agency is the Department of Licensing, and the parent is an Obligor. No new screens were built. Switch back before you continue.

The rules are visible, not buried

Open Rule catalogue. Thirty-five rules, each with a plain-language statement, a configuration key, and its current value. Open RUL-064 and use Simulate to show what changing a threshold would touch, without changing anything. Turn on Rule tracer in the panel and revisit any screen — it lists the rules acting on it.

What this is and is not

Turn on Annotations, or open How to demo in the sidebar, and read the fidelity tiers aloud. Live means it genuinely mutates the data for the session. Scripted means the response is canned. Simulated means it is visual only and labelled as such. Unconfirmed Louisiana values render as «TBD» in purple rather than an invented number — the licence reinstatement fee is the one currently outstanding.

If something goes sideways

A screen looks wrong or half-done. A state toggle is probably still on. Check the panel — Empty, Loading, Error and Blocked all change what renders.
A button you expected is missing. The persona is wrong, or the step before it has not been done. Approvals need the supervisor.
A list looks short. A filter is still set from an earlier scenario. Filters persist for the session by design.
Anything else. Press Reset demo. Everything returns to its opening state in one click, and no scenario depends on another having been run.