Skip to content

Add bookkeeper reconciliation skill - #321

Open
happykawayigt wants to merge 9 commits into
runxhq:mainfrom
happykawayigt:codex/frantic-bookkeeper
Open

Add bookkeeper reconciliation skill#321
happykawayigt wants to merge 9 commits into
runxhq:mainfrom
happykawayigt:codex/frantic-bookkeeper

Conversation

@happykawayigt

@happykawayigt happykawayigt commented Jul 14, 2026

Copy link
Copy Markdown

Summary

Adds a deterministic bookkeeper runx skill that categorizes transaction lines against a supplied chart of accounts, flags anomalies, and emits a read-only reconciliation report.

The default runner remains fully offline and refuses batches with missing account evidence or ambiguous category matches instead of mutating ledger state. An opt-in frantic-public-receipts runner now reads public posting.funded machine receipts at execution time and derives transactions directly from their cents-denominated effects.

What changed

  • Added the offline default runner with deterministic categorization, anomaly detection, and reconciliation.
  • Added an opt-in public-receipt runner isolated behind an exact https://gofrantic.com/v1/receipts/<id> allowlist.
  • Added same-origin redirect checks, a 15-second timeout, a 100 KB response cap, receipt validation, and SHA-256 source provenance.
  • Added clean and ambiguous fixtures plus receipt-transformation and URL-boundary regression tests.
  • Added documentation, harness cases, and reproducible evidence artifacts under skills/bookkeeper/.

Validation

  • node --check skills/bookkeeper/frantic-receipts.mjs
  • node --check skills/bookkeeper/run.mjs
  • node skills/bookkeeper/test.mjs
  • runx skill inspect skills/bookkeeper --json
  • Live runtime read of two public Frantic receipts: 4 transactions categorized, 0 anomalies, reconciliation matched 4/4, source digests recorded.
  • git diff --check HEAD^

All checks passed locally. The default runner remains backward compatible; network access is isolated to the explicitly selected public-receipt runner.

happykawayigt and others added 9 commits July 14, 2026 21:00
Add a deterministic bookkeeper skill for categorizing bank transactions against a provided chart of accounts, reconciling expected entries, and refusing ambiguous batches.

Include fixtures, local tests, and pre-publish dogfood artifacts for the Frantic runx skill bounty.

Signed-off-by: Guan Tong <255313991+happykawayigt@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant