Folds in the tree branch's key layer (2ea7884): lineage-keys.js and
handoff.js come over as written, with their spec vectors; the off-chain
keyring and the old UI stay behind, because v1's tree comes from the chain.
- Each holding gets its own 24-word lab root. Every node has lineage's
keys at its place in the tree: BIP-85 org seeds, agents as accounts
1..n of their org's seed, BIP-86 wallets and NIP-06 npubs.
- Every act is signed by whichever key holds the authorizing inscription;
a birth hands the child its own; the lab wallet is the faucet.
- Graduation is a claim by the org's fresh root, countersigned by its
derived key, and the derived subtree re-keys under the new root, so the
parent's line can no longer sign for it. Adopted descendants keep theirs.
- Inspect shows each node's key path, npub, address and current holder,
and which key signed each event; the act panel names the signing key.
- Labs saved before keys still load; their holdings sign with the lab
wallet.
- 49 unit tests (6 new), Playwright 6/6 with key checks.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01H4upF5LVwmPDDqrhdUfnXh
30 lines
764 B
JSON
30 lines
764 B
JSON
{
|
|
"name": "orgchain",
|
|
"version": "1.0.0",
|
|
"description": "Create and operate lineage holdings on a toy chain in the browser: lineage's app, built on Super Testnet.",
|
|
"private": true,
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "vite --host 0.0.0.0",
|
|
"build": "vite build",
|
|
"preview": "vite preview --host 0.0.0.0",
|
|
"test": "node --test tests/*.test.js",
|
|
"test:e2e": "npm run build && playwright test"
|
|
},
|
|
"dependencies": {
|
|
"@cmdcode/tapscript": "1.5.3",
|
|
"@noble/curves": "1.9.7",
|
|
"@noble/hashes": "1.8.0",
|
|
"@scure/base": "1.2.6",
|
|
"@scure/bip32": "1.7.0",
|
|
"@scure/bip39": "1.6.0"
|
|
},
|
|
"devDependencies": {
|
|
"@playwright/test": "1.56.1",
|
|
"vite": "6.4.3"
|
|
},
|
|
"engines": {
|
|
"node": ">=20.19.0"
|
|
}
|
|
}
|