WTWilly Tai
Use case · AI governance & assuranceLive demoSynthetic data

A workflow that shows its risks before, during, and after.

Every AI-workflow tool can show you boxes and arrows. Almost none can answer the three questions an auditor actually asks. What was the risk before you did anything? What controls did you put in place? And what risk remains? The Living RCM is an invoice-to-pay process run by AI agents where every step carries that full lifecycle, on documented methodology cited line by line. An internal audit then runs over the top and finds a control that a dashboard would have called green.

8 → 8
risks rated inherent, then residual
5-point COSO scales, heat-mapped
15
controls · 4 IIA types
preventive · detective · directive · corrective
2/8
exceptions the audit finds
design adequate, operation ineffective
1 SD
finding raised · then closed
five elements, re-tested per Std 15.2

Synthetic process · illustrative ratings · methodology cited to COSO/Deloitte, IIA GIAS 2024, KPMG publications

01 · The gap

AI workflows have plumbing diagrams. They don't have risk language.

The standard criticism of AI workflow adoption is that teams lack the support and knowledge to define a proper, complete, governable workflow. The tools don't help. Orchestrators like n8n, Alteryx, KNIME and Airflow give you nodes, edges and run logs, which is useful plumbing. But ask the questions a risk committee or an examiner asks (what could go wrong at this step, how badly, what stops it, and what's left over?) and the canvas has no vocabulary for the answer.

That vocabulary exists, and it has existed for decades. It is the risk-and-control matrix. The IIA's 2024 Global Internal Audit Standards describe it as the engagement's working artifact: the risk event, the control and its type, cause, effect, and the assessment of residual risk. KPMG's 2025 agentic-AI whitepaper says the first control for AI agents is an impact assessment that sets the risk level, which then calibrates everything else, including how much human oversight each step gets. The methodology is documented. It just has never been wired into the workflow itself.

02 · Why the obvious approach fails

A canvas of green checkmarks is not a controlled process.

The naive move is to bolt a status column onto the workflow, so each node shows ✓ when it ran. That fails for a reason auditors learned long before AI. A control that exists is not a control that operates. In this demo, the dual-approval control on high-value payments is well designed: the workflow requires two named approvers above S$10k, and every dashboard shows green. But the out-of-office fallback path quietly releases approvals with a single signature. No error is thrown, and nothing is red. The process appears to work while the control does not.

That distinction between design adequacy and operating effectiveness is the load-bearing idea in control testing (IIA Std 14.3), and no amount of workflow observability gives it to you. You only find it by doing what an auditor does: sample the evidence and re-perform the control. That is exactly what this demo's audit mode does, which is why its finding lands on a step every monitoring view called healthy.

The audit then re-performs the controls against the ledger, because until it is tested the middle box is only an assertion.

03 · The mechanism

The decision is made in code, the methodology is cited, and the audit trail acts as a control.

The demo is an invoice-to-pay process run by four AI agents: capture and extract, validate and match, approve, post and pay. The trust boundary is drawn the way every system on this site draws it. Deterministic code computes every decision (ratings, bands, match results, routing, hashes), the models only extract and phrase, and any consequential decision is a named human's. What is new here is the governance grammar wired into each step:

THE LIVING RCM · ONE STEP, INSTRUMENTED Workflow step agent (TACO class) · oversight mode DETERMINISTIC · THE RCM inherent L×I → band controls: type · design · OE residual L×I → appetite COSO 5-pt scales · IIA control types Hash-chained ledger agent ID + human ID on every action THE AUDIT, OVER THE TOP · IIA GIAS 2024, DOMAIN V plan (13.2) → walkthrough → test design + operating effectiveness (14.3) → finding → report (15.1) → follow up (15.2) controls are re-performed against the ledger evidence · not the diagram
One step, instrumented: the RCM lives in code, the evidence sits in a chain, and the audit re-performs against it.

The conventions are deliberate and named in-app. Inherent means the controls fail; residual means the controls are operating (the COSO/Deloitte controls-effectiveness convention). We use the IIA's four control types rather than KPMG-ICFR's two, five-point scales with impact-weighted appetite bands, and agents classed by KPMG's TACO taxonomy with oversight graduated HITL / HOTL / MITL by the step's risk tier. We label that last mapping honestly as our extension of KPMG's prose, because no firm publishes a hard table. The workflow also ships as an importable n8n JSON, with the governance annotations riding along as sticky notes. The orchestrator carries the skeleton, and the RCM carries the accountability.

Here is the deterministic core from the shipped file: the band lookup and the chain verification the whole page rests on.

// the appetite band is a lookup, not a vibe , matrix indexed [likelihood][impact]
function band(l, i) { return SC.bands.matrix[l - 1][i - 1]; }

// verify: recompute every hash from genesis; a tampered record breaks the chain
// at exactly its own sequence number , the ledger locates its own corruption
let prev = "genesis", brokenAt = -1;
for (const e of RUN.ledger) {
  const h = fnv(prev + "|" + e.seq + e.txn + e.action + e.agent + e.human + e.amt);
  if (h !== e.hash) { brokenAt = e.seq; break; }
  prev = e.hash;
}
04 · Worked example

The audit arc: a green dashboard, a failing control, and a closed finding.

Run the workflow: 47 transactions in, 41 paid, 6 routed to human review by the gates, 13 high-value. Every action lands in the ledger with an agent ID and a human ID. Then switch to audit mode and follow Domain V.

Why the failure is seeded here: controls die on the exception path, not the happy path. A workflow tool watches the happy path, while an audit samples the evidence. That difference is the whole demo.
05 · What this proves, and what it doesn't

The numbers, where they come from, and where the limits are.

The process is synthetic and the ratings are illustrative. The 2/8 exceptions exist because I seeded a realistic failure mode into a deterministic engine. The demo proves the control architecture and the audit discipline, not that any real process has these numbers. The run is seeded, so you get identical transactions, hashes and findings on every click, which is the same reproducibility promise the methodology demands of evidence.

The methodology is what is real. The inherent-to-residual convention, the five-point scales and the impact-weighted heat map are COSO/Deloitte's documented practice. The engagement phases, RCM fields, four control types, design-vs-OE distinction and five-element finding are the IIA's 2024 Standards, with the templates sitting in the Standards' non-mandatory considerations as preferred practice, and the app says so. The walkthrough, RMM/PRP framing and two-axis severity grid are KPMG's ICFR handbook. The TACO classes, graduated oversight and identity-carrying immutable logs are KPMG's 2025 agentic-AI publication. Every element is footnoted in the app's methodology panel, and the one thing no firm publishes, a hard risk-tier-to-oversight-mode table, is labelled as our extension rather than a citation.

The honest boundary is this. A live RCM does not make risk ratings correct, because rating is judgement and a synthetic process cannot prove mine. What it does make them is explicit, consistent, and testable, and that is what separates a risk assessment from a decoration.

06 · See it run

Run the workflow. Then audit it.

Click a step for its risk lifecycle, run the 47 transactions, tamper with the ledger and watch the chain locate the corruption, then walk the full engagement through to the closed finding. Download the RCM as CSV, or the workflow as importable n8n JSON.

▶ Open the live demo Runs entirely in your browser · synthetic data · seeded, reproducible run

Where this sits.

Every other use-case on this site shows a governed system. This one shows the governed method, the audit-native grammar of risk-before, control, residual-after, evidence, finding and follow-up, running live over an AI workflow. It is the piece that connects two careers: the CA/CIA who spent years testing controls the hard way, and the engineer who can now make the RCM a running object instead of a spreadsheet attached to an email. If your organisation is putting agents into regulated processes, this is the artefact your second line and your auditors will eventually demand, and here it is working.