Case study · Documents intelligence platform
Automated Board Reporting
Automate the assembly, not the authorship.
Case study · Documents intelligence platform
Automate the assembly, not the authorship.
At a glance
An agent that assembles the board report from live audit data.The people who sign it stay the authors.
Audit / Reports
Q4 2026 Audit Progress Board Report
PreviewSaveNine audits are in scope this quarter. Travel and Expense and Vendor Master reviews closed on schedule; Credit Administration moved into fieldwork in September.
| Audit | Status | Key findings |
|---|---|---|
| Travel and Expense | Closed | 2 |
| Vendor Master | Closed | 1 |
| Credit Administration | Fieldwork | — |
The problem
5 to 20
hours per board cycleAbout 75% of it spent just gathering data.
Rebuilt by hand every quarter, even though the structure rarely changes.
Who it’s for
Spends the hours. Exports to Excel to apply logic the system can’t express, then rebuilds the same tables in PowerPoint.
Can’t verify deck numbers against the system of record, and worries they’ll change after review.
Needs figures fixed to a point in time. The PowerPoint has to stand on its own.
So the output had to be their PowerPoint, with numbers someone had signed off on.
The challenge
It’s actually a very admin heavy job. It doesn’t take a lot of insight but having an automated element of this allows us to then focus on the insights.
What we learned
| What we heard | So I… |
|---|---|
| Today’s pain was moderate, about 3 out of 5. The value was time back for insight. | Pointed the agent at the admin work: gathering, scoping, and assembling. |
| Reviewers need the numbers they reviewed to be the numbers on the slide. | Let the agent propose changes, never apply them silently. |
| The AI summary was liked, but no one called it a must-have. | Treated AI prose as a draft to review, and invested most in automating assembly. |
| Every team builds a report once and expects to reuse it. Roll-forward is table stakes. | Made next quarter the agent’s job: re-scope, regenerate, flag what’s stale. |
The reframe
We set out to generate the board deck.
The job was to assemble it from live data, and leave the authorship with the person.
Automate the assembly, not the authorship.
Where the agent sits
Every task the agent does sits on a rung. Rung 4 is empty on purpose: nothing a board will see changes without a person.
Starting prompts, content blocks, and replacements for last quarter’s dates.
The report, new sections, and AI summaries, labeled for review before sharing.
Proposes each data change as a redline. Nothing applies until someone accepts it.
Roll forward re-scopes data and regenerates blocks, then labels what it changed.
Empty by design. Anything a board sees waits for a person.
The foundation · Shipped, in beta
Configure once, reuse every cycle. Everything the agent builds lands on this model, as a configured block a person can open and edit.
System-owned: data and generated contentPerson-owned: their deck, edits, and judgement
Report details, audit scoping, and content blocks. Configure it, then leave.
Details, Editor, and Data tabs. Review, edit, and save the version you’ll stand behind.
Content blocks
Action plan statusOpen issuesAudit resultsOur add-in drops blocks at the cursor. Their template, branding, and layout stay theirs.
Step 3
Build content blocks
Optro Assistant
Scope these 9 OpsAudits and their related issues, action plans and risks
Proposed scope 9 audits
| Travel and Expense | Closed |
| Vendor Master | Closed |
| Credit Administration | Fieldwork |
| + 6 more | |
What content should be generated?
Ask Optro Assistant…
Decision 1 of 3
Nine audits are in scope this quarter. Travel and Expense and Vendor Master closed on schedule. Credit Administration Audit has not started. Credit Administration Audit moved into fieldwork on Sep 19.
Data Refresh
Credit Administration Audit · phase
Original value
Not startedUpdated value
FieldworkDecision 2 of 3
Q4 2026 Audit Committee. Covers audit activity from Oct 1 to Dec 31, prepared by Internal Audit for the Oct 22, 2026 meeting.
Static text from last period
Project Details · from reporting period
Current text
Q4 2026Suggested text
Q1 2027Decision 3 of 3
Drafting
The agent’s output is configuration, not a pile of text, so anyone can open it and check it, and it rebuilds every cycle.
Optro Assistant
A list of open issues by magnitude
Which columns should this table include?
Title, Status, MagnitudeTitle, Magnitude, Created DateHow should the table be sorted?
By Magnitude (highest first)No particular orderContent configuration
| Title of issue | Status | Magnitude |
|---|---|---|
| SOD payables | Open | High |
| Missing anti-virus signature report | Open | High |
| Policies not properly documented | Open | High |
| Vendor master changes not reviewed | Open | Medium |
| Backup restoration not tested | Open | Low |
The trust layer
Version history
Named and automatic versions. Restoring adds a new version, so nothing is overwritten.
Activity log
Optro Assistant regenerated Project SummarySep 22 · from new Q1 data
Dana Ortiz applied a data change to Project StatusesSep 21 · Credit Administration
Marcus Reid reverted a change in Open Issues“Board saw the pre-read figure”
Dana Ortiz named a versionPre-read sent to Audit Committee
What was generated, applied, reverted, or edited, by whom, beside the human edits.
← Back to content configuration
Content configuration
Section title
Open Issues
Editing a block whose data changed says, up front, that saving will regenerate it.
How I design agentic features
In audit, an agent acts under someone’s authority, so permissions are usually the ceiling, not intelligence.
| The question | Roll forward’s answer | |
|---|---|---|
| Does | What action does it take, not what does it know? | Re-scopes the data, regenerates data-backed blocks, and flags period-bound text. |
| Reads | What data does it need, and does that exist today? | Last report’s configuration, plus the new period’s audits and related records. |
| Rung | How far up the ladder does it act? | Rung 3 for data-backed blocks. Rung 0 for the person’s words. |
| Authority | Whose permissions does it act under? | The report owner’s. Nothing goes to the board until they review it. |
| Wrong | What is the named recovery when it’s wrong? | Every section is labeled Regenerated, Carried over, or Check static text, and version history restores. |
Beyond the feature
“Show the diff, let the person decide, keep a record” became a shared principle across three kinds of suggestion: user, system, and agent. I presented it alongside two teammates.
The autonomy ladder and five-question checklist now frame agentic work beyond reporting. I used them to run a cross-team brainstorm for workflows.
I rebuilt the prototype from the revised Figma in a day with a Claude-driven toolkit, so reviews happen on behavior, not static frames.
Four questions and an exit bar: most participants finish a real report unaided, with no launch blockers open at GA.
Where it landed
MVP locked Oct 1.
In beta now.
Agentic layer prototyped.
No outcome data yet, so here’s what I’d hold it to.
What I’d measure
Questions?
hello@shelby-mason.com
Discovery
Concept test
Chief audit executives, internal audit directors, and a professional practice manager, across energy, entertainment, retail, and UK financial services.