Running in production
Phase one has run since 2026-09-19. Packaging it for another organization’s tenant is a design, not yet a deployment.
The situation
The agency’s recurring tasks (credential audit, invoice review, payroll check, exclusion screening) existed as scripts only the developer could run. Nobody had a record of who ran what, or was told when it finished.
The cost of leaving it alone
Automation that only its author can operate is a liability, and a compliance job with no record of having run is indistinguishable from one that did not.
What we built
A SharePoint and Teams page with one-click tiles. A press queues a request that an outbound-only worker picks up, so nothing listens for inbound connections. Every run is written to an append-only ledger: who asked, when, the status, hashes of the input and output files, and what it found. Results return as an email, a Teams post and a row on a Runs list.
Each job has a manifest, and a run whose expected output is missing or stale fails regardless of its exit code. A weekly self-test checks that mounts, timers, test suites and data freshness are all as they should be, so a quiet week means success, not silence.
Python standard-library control planeSharePoint lists and pages, Teams, Power AutomateAn outbound-only worker
Why AI, or why not
None, by design. AI is permitted only inside a worker on a marked step, and its output stays a proposal until a person confirms it. The control plane itself is deliberately boring.
The results
How PHI was protected
- PHI stays in the agency’s Microsoft 365 tenant and on the encrypted server.
- Reports go only to addresses in the agency’s mail domain, escalations included.
- Care staff are never added to the group that holds payroll, invoices and the ledger.
- The ledger is what an auditor can be shown, from a run to the rule that fired to the file it produced.
What we would tell you to skip
Exit status proves nothing. One automation reported success while writing to the wrong person’s drive, and nothing arrived. Require the expected output to exist and to be fresh.
Reusable for
Any Microsoft 365 agency automating more than one recurring compliance or administrative task.