Oracle3
Open-source trading engine and MCP server for prediction markets. Fee-aware no-arbitrage trading across related contracts, live on Kalshi, Polymarket and Solana or on paper.
A web-native tax workpaper: every number traced to its source, checks that do not trust the engine, roles and an audit trail.
FinanceTypeScript · HTMLGitHub @AarvinGeorgeOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗A web-native tax workpaper where every number carries its receipt.
Tax software reads documents and grades its own confidence, and a number read with high confidence can still be wrong. Taxmark doesn't take that confidence on trust: it traces every figure on a return back to its source and tests it against independent records before anyone signs.
Try the live app → · Watch the walkthrough →
Built as a case study: redesign the tax workpaper for one invented household's 2025 return, from a packet of documents, extracted values and three computed versions of the return. The packet hides confident mistakes, and finding them was part of the job.
Click any number and Taxmark answers four questions:
Each row is a line on the return. Pills show who raised it: our rule checks, the AI reader, the engine's own warning, and Confident mistake when a check caught a value the reading software was sure about.
One click opens the side panel: the source page with the exact values highlighted, how the number was built, and the actions you can take on it.
The reviewer corrects California's estimated payments to match the state's own record. The totals recompute, the refund updates, and every changed line shows what it was before.
The return form by form, with the status of every line and a comparison against earlier versions and last year.
The partner approves only when nothing blocks, then each client signs the e-file authorization for the finalized version.
Clients see what their tax team needs from them in plain words, with no internal jargon and sensitive IDs masked.
One packet, read three ways
| Reader | Where | Job |
|---|---|---|
| Deterministic checks | In the app | Compare values against independent sources: agency payment records, the printed page, the prior year, the client's answers, legal limits. They decide what blocks filing. |
| AI reader (Claude) | In the app, as a background job | Reads free text that rules can't, such as notes and client answers. Code verifies every quote word for word, and a person accepts or dismisses each suggestion. It never blocks filing. |
| Answer key | Outside the app | A ledger of the mistakes found by an independent investigation. It tests the checks and grades the AI, and never creates a finding. |
Read-only underneath, everything on top
What it catches, and what it doesn't
A role switcher shows the same return as each person sees it. The server enforces what each role may do.
| Role | Can |
|---|---|
| Preparer | Propose adjustments, verify, leave notes |
| Reviewer | Apply adjustments, sign off (never on their own change) |
| Partner | Approve the return once nothing blocks |
| Clients | Answer questions, send documents, sign the e-file authorization |
| Examiner | Read-only access to the items under examination |
A story clock moves the whole workspace through the return's timeline: past points are view-only, and the as-filed return locks once the agency accepts it.
| Decision | What it cost |
|---|---|
| Rules decide; the AI only suggests | The AI misses things, so the rules carry the load |
| Checks written against the schema, not a document | Checks that depend on free-text wording can miss phrasing they haven't seen |
| Replay the whole event log | Simple and fine for one return; a firm would need snapshots |
| Fixes flow through plain sums only | Lines needing tax computation wait for an engine re-run |
| A role switcher instead of sign-in | Identity is self-declared; real sign-in comes first before production |
cd project-build
npm install
npm run dev # http://localhost:3000
Locally the event log is written to files under project-build/.data/, so no database is needed.
npm test # unit tests
npm run e2e # browser tests (builds and starts the app)
npm run typecheck
case-study-project-package/ the brief and the client packet, as delivered (read-only)
project-build/ the app: src/domain (checks, events, policy), src/components, tests/
docs/
handin/ the brief, errors found, data model, AI scorecard, architecture graphs
ground-truth/ the ledger of confident mistakes found in the packet
decisions.md every decision, with its trade-off, logged as it was made
ai-usage.md what each AI tool or model did
Further reading: errors found · core idea and data model · how AI was used · AI scorecard
Built by Aarvin George with AI pair-programming. Claude Opus wrote code test-first, and a different model (Claude Fable) reviewed each major round by probing the live app. Every decision, including the corrections, is in docs/decisions.md, and every tool's role is in docs/ai-usage.md.