-
Notifications
You must be signed in to change notification settings - Fork 4
GnuCash-backed ERTP: scalable rights transfer grounded in double-entry bookkeeping #79
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
dckc
wants to merge
20
commits into
master
Choose a base branch
from
ertpdb
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- refactor helper APIs to use options objects instead of >3 positional args - update call sites to match new helper signatures - document bug-fix and argument-count guidance in CONTRIBUTING
- reject negative or non-bigint amounts - add regression test for negative withdraw
- fail makeEmptyPurse when GUID already exists - add regression test for GUID collision attack
- move attack tests into dedicated file - assert commodity GUID collisions are rejected - fix createIssuerKit to fail on existing commodity
- reject withdraw amounts with mismatched brands - reject openAccountPurse for wrong commodity - add adversarial tests for both cases
- model payments as hold txs retargeted on deposit - assert single-tx split behavior and holding guard - document hold decision in IBIS
- store check numbers in transactions and payment records - add payments facet with getCheckNumber/openPayment - test payment reification across reopen
- add chart facet for placing purse accounts - add serial community chart test with statements - document flow B and periodic minting TODOs
Add a minimal escrow layer that records a single transaction with holding splits, optional description text, and unique check number enforcement, plus a unit test that swaps two purses via the holding account. Expose escrow from the package entry point and types; extend the chart facet with placeAccount plus placeholder support so non-purse accounts can be arranged in the tree. Expose mint info (holding/recovery GUIDs), rename the holding account to “Mint Holding,” ensure mint recovery is a STOCK account, and allow account creation helpers to accept parent GUIDs. Rework the community story to use escrow awards, variable issue values and varied issue-style descriptions; expand to 7 members across 3 weeks; create Mint as a root-level placeholder with holding/recovery under it; switch the chart subtree to STOCK accounts; and exclude the holding account from statement totals. Store transaction dates as full timestamps using datetime(date(...)) so GnuCash parses them consistently. Tests: npm run check (in packages/ertp-ledgerguise)
Owner
Author
|
progress:
2026-01-18 17:14 a245f27 feat(ertp-ledgerguise): add escrow layer and mint charting |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.

With help from codex, I made progress on the off‑chain‑first, audit‑friendly approach. The prototype now maps ERTP‑style token awards into a real GnuCash ledger with named community member accounts, includes explicit authority boundaries (capability‑style access) and recovery mechanisms for in‑flight payments, and adds adversarial tests to ensure predictable, reversible behavior while keeping room for human‑in‑the‑loop governance decisions.