Student builder and open-source researcher · Granite Bay High School
I build reproducible systems that test what AI verification actually checked, then turn the result into evidence a stranger can inspect.
My current work is Nobulex: billing accuracy for usage-based products. Billing code can return success and still produce the wrong amount. I find a reproducible case, check that a regression test fails on the old behavior and passes on the fix, and state what I did not examine. The Kill Bill case and two open fixes are public. This is research and a fixed-scope audit practice, not a deployed billing product or customer validation.
I also maintain a decision-integrity gateway prototype for automated financial actions. It is implemented and tested locally; it is not deployed in a customer production path. It keeps two questions separate:
- What does the available evidence establish?
PASS,FAIL, orINDETERMINATE. - What may the system do next?
PERMIT,BLOCK, orESCALATE.
That separation matters because missing or unreadable evidence should never quietly become approval.
| 5 |
|---|
| merged conformance-harness PRs |
Counted from merged pull requests #12, #15, #22, #23 and #24 in ScopeBlind's public conformance repository. These were prior agent-governance work, not billing customers.
proposed action
│
▼
evidence binding ──► PASS / FAIL / INDETERMINATE
│
▼
bounded policy ──► PERMIT / BLOCK / ESCALATE
│
▼
signed decision receipt
01 · Collect evidence
Bind the proposed action to the exact inputs, sources, timestamps, and identities it depends on.
02 · Establish status
Return PASS, FAIL, or INDETERMINATE. Missing evidence never becomes a clean result.
03 · Apply policy
A bounded deterministic policy returns PERMIT, BLOCK, or ESCALATE.
04 · Preserve the decision
Sign a receipt that binds the action, evidence references, policy version, and outcome.
| Project | What it does | What is inspectable |
|---|---|---|
| Nobulex | Reproduces billing errors that can return success while producing the wrong amount. The current work is a fixed-scope audit and mutation-based regression checks, not a deployed product. | The Kill Bill case links two open fixes and states the tested revision and limits. |
| Decision-integrity gateway | A Python prototype that separates evidence status from execution policy before a financial action can proceed. | PASS, FAIL, or INDETERMINATE evidence feeds a separate PERMIT, BLOCK, or ESCALATE decision. |
| Fail-open corpus | Minimal reproductions of evaluators and safety checks that can report success without completing the check their result appears to certify. | Each published case names its reproduction limits instead of generalizing from one defect. |
| Surka | A small app for keeping two-sided cross-promotion swaps on track, from agreed terms through delivery evidence and results. | The public app is live at surka.vercel.app. No completed real-world swaps or paying users are claimed. |
- Five conformance-harness pull requests merged - The public research distinguishes merged changes from endorsement and freshly reruns only the case it says it reruns.
- Two Kill Bill catalog-billing fixes proposed upstream - Open PR #2320 and PR #2321 have released-tag H2 invoice checks that were red before and green after. Current-master CI is unverified; these are proposals, not merged fixes or customer results.
- OWASP receipt-guidance update merged - The narrowed PR merged on 2 October 2026. A merge is not an OWASP endorsement of Nobulex.
- A verifier defect reproduced and fixed upstream - The maintainer reproduced the failure, released a corrected verifier, and confirmed all four negative checks.
Open the complete Evidence Ledger →
The ledger separates normative changes, merged code, references, listings, open or closed contributions, and self-published research. A merge or listing is never presented as an endorsement.
I publish the command, the expected result, and the limitation beside the claim. If a result cannot establish something, it should say so. If I am wrong, the correction stays visible.
Canonical profile data: data/profile.json. This README is generated from it.



