-
-
Upload a denial letter. AI agents build, file, mail and docket the whole appeal onto a tamper-evident ledger.
-
Fail-closed: one mutated word in a quoted clause and the verifier blocks the filing. Mail sent: zero.
-
Every transition Ed25519-signed and hash-chained. Corrupt one row and verification localises the break to that sequence number.
Overrule: what the human did, what the AI does, and what actually happened
The product
Fewer than one in a hundred health-insurance denials is ever appealed, and a large share of the appeals that do get filed succeed. The gap is not legal skill. It is unmanaged project work at the worst moment of someone's year: a deadline buried on page four of the denial letter, and the clause that would win the case sitting on page eighty-seven of a plan document nobody reads. A $400-an-hour advocate solves it. Almost nobody can hire one.
Overrule runs the whole appeal as a case rather than generating a letter. Upload a denial and a triage stage estimates win probability and declines weak cases with an automatic refund. Extraction reads the letter and the member's plan. A strategy stage picks the appeal level under the member's state rules. Drafting rebuts the payer's own published clinical policy clause by clause. A verifier proves every quoted clause actually exists in the source before anything ships. Case ops sends certified mail, sets its own follow-up clocks, and escalates to the state regulator when warranted.
What the AI does, and what it is forbidden to do
The design decision that matters is a restriction. Nothing ships on a model's say-so. The CitationVerifier matches every quoted clause byte for byte against the plan document, and it fails closed: if the quote does not appear in the source, the case parks in draft, mail sent is zero, and the refusal itself becomes a signed ledger row. A fixture case in the test suite exists specifically so that failure is visible rather than theoretical — the same winning clause with one word mutated, "under age twelve" to "under age fourteen", is caught and blocked.
Deadline math is the other place discretion is removed. The letter-stated deadline and the state rulepack window disagree constantly, and the system binds to the earlier of the two. PHI is scrubbed before persistence rather than before display, and the pipeline asserts the redaction held before anything is written.
Every decision is appended to a hash-chained ledger, each row signed with Ed25519 and rolled into a daily Merkle root. Mutate any byte of the export, re-run the verifier, and it fails and localises the tampered row. Money and certified mail move only through an explicit mandate gate.
Human work versus AI work
I am one person and wrote very little of this code by hand. The implementation, tests and tooling were produced by Claude in a coding harness under my direction. That is the point of the category, so I will not dress it up as pair programming.
What was human: deciding that a citation must be proven rather than trusted, and that the system must fail closed when it cannot prove one. Choosing to make refusal a first-class outcome with a published rate rather than an error path. Writing the invariants the tests enforce. Insisting the verification path ship as a command a judge can run rather than a claim they have to accept.
What was AI: essentially all of the code, the 121 tests behind it, the ledger tooling and the
documentation. npm run ci runs the typecheck, the tests, the 22-invariant self-test and the ledger
verifier with its tamper demo.
Jobs and economic opportunity
Actual: none. No jobs created, no team beyond me, no contractor, no payroll, no customer.
Potential, as a claim rather than a result: the people this would serve are not employees but claimants who currently absorb a denial because contesting it is unaffordable project work. If it works, the opportunity is measured in appeals filed that would otherwise have been abandoned, not in headcount here. Today that number is zero.
Category impact — Professional Services Access
The category asks who can afford professional help. Appeals are an unusually clean case: the entitlement already exists in the plan document, the claimant already qualifies, and the only thing standing between them and the money is a process they cannot navigate and cannot pay someone to navigate for them. The service is not scarce because expertise is scarce; it is scarce because expertise is billed hourly.
The redefinition attempted here is narrower and more testable than "AI for legal work": an appeal whose every citation is provably present in the source, filed on a deadline reconciled from two conflicting authorities, on a record that can be re-verified offline afterwards. A human advocate produces none of that audit trail.
Where this actually stands
Revenue: $0.00 — May, June, July and August 2026 each $0. Arms-length customers: zero. Related-party revenue: zero. Marketing and customer acquisition spend: $0.00, disclosed as required even though nil. Live Gemini calls in a deployed application: zero. The pipeline runs a deterministic offline adapter; the model integration exists in the code and has not executed in production. Nothing is deployed as a product — the live URL at overrule.edycu.dev is a static evidence dashboard, and all fixture data is synthetic, with fictitious persons, payers and determinations. This is self-help document tooling, not legal or medical advice, and it makes no outcome promises.
The core is built and verified. The business is not. I would rather submit that sentence than a number I cannot produce a receipt for.
Built With
- bigquery
- cloud-kms
- cloud-scheduler
- codeql
- ed25519
- firestore
- github-actions
- google-cloud-run
- google-gemini
- google/genai
- lob
- merkle-tree
- node.js
- stripe
- tsx
- typescript
- vitest
Log in or sign up for Devpost to join the conversation.