Files
orgchain/PROVENANCE.md
T
teahubxyzandClaude Opus 5.5 2354947d16 Orgchain v1.6: holdings share the mining, every act pays its gas, money crosses holdings
Mining is a lab setting. Split (the default) pays every active holding a
share of each beat, pro rata by a hashrate dial on each holding (0 to 9,
1 unless set), one coinbase output per holding. Last act gives the whole
beat to the holding that acts. Every act is paid by the acting node's own
keys: fees and postage come out of its gas tank (the plain coins at its
Taproot key), which tops up from its own money 0.0001 test BTC at a time.
Each act is checked before anything is signed, so an unfunded node can't
act. A graduating org pays for its own claim, and the lab wallet pays only
for foundings and for holdings that predate lab keys. Sends cross
holdings, the ledger shows gas top-ups, and chain keys are derived once
per page.

The engine's second local change: a coinbase may split its reward across
up to 64 outputs (mineTo), in src/adapters/chain.js.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01H4upF5LVwmPDDqrhdUfnXh
2026-10-14 23:16:03 -07:00

5.6 KiB

Provenance

Reviewed 2026-10-04 against the exact upstream revisions below. Upstream repositories were inspected outside this worktree; only the small adaptations identified here were imported. Original adapter/UI code is distinct from the upstream projects and is not endorsed by their authors.

Upstream Revision License Use in v0
supertestnet/testnet_generator 498be4cc775ef18e7ff17357d007918518f47b98 CC0-1.0 getVin/getVout object helpers from index.html adapted into src/upstream/primitives.js; converted to ES exports, explicit scripts, explicit final sequence. Inspiration for browser-owned UTXO chain, immediate 50-coin reward, button mining and integrated explorer. The upstream consensus/Script engine and relay system are not imported.
supertestnet/inscriptions-online 470b8bdf29ead319cff9dc119a005cbf58ee598c CC0-1.0 index.html ord envelope array adapted in src/adapters/inscription.js. Modern tapscript API, locally extended with MIME/byte payloads, explicit data-push encoding, 16 KiB cap, tag-3 parent serialization, parent-preserving child reveals and repeated tag-5 CBOR metadata fields. Single commit/reveal, same-wallet destination, no external broadcast or fee services. These extensions and the safe preview UI are original local adapter code.
supertestnet/vanilla-js-browser-wallet 19ae5097f4645bf5b1103a39abc04155a8b072fc CC0-1.0 Conceptual inspiration for minimal vanilla-JS wallet and local signing. No copied implementation.
supertestnet/node_faker 2fae6056a7e93322a00a4150468934542ddc937d CC0-1.0 Evaluated, not imported: its bitcoind-like API obtains data through Electrum connections. That introduces an unnecessary external backend for the self-contained v0. LocalRPC is a new, intentionally partial in-process read facade, not a claim of node_faker compatibility.

The upstream CC0 legal text is retained unchanged at public/licenses/supertestnet-CC0.txt. Source comments identify the exact adapted code and revisions.

Runtime dependencies are pinned in package.json and package-lock.json:

  • @cmdcode/tapscript 1.5.3, Christopher Scott, upstream, CC-BY-1.0. Used for transaction encoding, signing/verification, Taproot commitments and addresses, and the BIP-143 digests and signatures of SegWit payments. Installed package license retained unchanged at public/licenses/tapscript.txt. Library source is unmodified; Vite bundles/minifies it for the browser.
  • @noble/curves 1.9.7, Paul Miller and contributors, upstream, MIT. Used for key generation/validation and public keys, and to verify the low-S DER signatures of SegWit payments: secp256k1 for chain and nostr keys, Ed25519 and X25519 for lineage's leaves. License retained at public/licenses/noble-curves.txt.
  • @noble/hashes 1.8.0, Paul Miller and contributors, upstream, MIT. Used for synthetic block hashes, BIP-85's HMAC, the leaves' HKDF-SHA256 and the RIPEMD-160 of P2WPKH key hashes. License retained at public/licenses/noble-hashes.txt.
  • @scure/base 1.2.6, Paul Miller, upstream, MIT. Used for bech32 npubs and base64 leaf keys. License retained at public/licenses/scure-base.txt.
  • @scure/bip32 1.7.0, Patricio Palladino and Paul Miller, upstream, MIT. Used for HD derivation under the BIP-85, BIP-86, BIP-84 and NIP-06 paths. License retained at public/licenses/scure-bip32.txt.
  • @scure/bip39 1.6.0, Patricio Palladino and Paul Miller, upstream, MIT. Used for the 24-word lab roots and their seeds. License retained at public/licenses/scure-bip39.txt.

Two local changes to the engine, both original code in src/adapters/chain.js, tested in tests/money.test.js, with Super Testnet's tests (tests/adapters.test.js) passing unchanged. Orgchain v1.5: the chain also accepts native SegWit (P2WPKH) outputs and SIGHASH_ALL P2WPKH spends, verified per BIP-143, so lineage accounts can hold and send test BTC at their BIP-84 addresses; everything about inscriptions stays Taproot-only. Orgchain v1.6: a coinbase may split the block reward across up to 64 outputs (mineTo; mine still pays one script), so one beat can pay several holdings.

Vite and Playwright are build/test dependencies, not runtime network services. Their installed package notices remain in the locked dependency installation. No unlicensed upstream code was copied.

The bounded JSON/CBOR codec, byte-derived MetadataIndex, trusted event-counter reducer, local API facade and persisted auto-miner schedule are original adapter code. Metadata encoding and endpoint naming were checked against the Ordinals metadata and endpoint references; no ord source code was copied.