Deviant BCH wallet — CashTokens + covenants (Katalogos v1 · chipnet)
Two-tier registration per ADR-0055: your own list stays free (ADR-0008), inscribing into the shared Katalogos writes on-chain state and costs $1-worth of DEA, oracle-priced (ADR-0052 pattern), covenant-enforced. Entries are immutable per-entry NFTs whose commitment IS the target category id; a shared minting NFT is the state UTXO. The registry is version-aware from day one (KATALOGOS_VERSIONS in the shell config). Re-pricing or switching to the paymaster fallback = one config line; discovery reads across every known version; old entries stay valid forever. Shipped: contracts/KatalogosRegistryV1.cash — covenant (7/7 regtest) src/wallet/katalogos.ts — planner + discovery (11/11 unit) shells/app/src/core/katalogos.ts — shell publisher + version list shells/app/src/core/katalogos-oracle-dev.ts — chipnet dev oracle for signing shells/app/src/components/TokenImportModal.tsx — Publish button on success screen shells/app/src/asm-core/AsmCore.tsx — picker reads shared list scripts/chipnet-katalogos-register.mjs — deploy + register end-to-end Live on chipnet: registry at bchtest:rwm0e4rnq0htx97g3sllrgld652w7ztxlnqlx7820kd3mhklk6v8vmtth22xs, CHE + ATD inscribed. Full deploy record in ChipnetTests/.chipnet-katalogos.json. Amends ADR-0048: featured discovery is paid; unlisted assets stay swappable at the protocol layer (paste-a-category). "Never the right to swap" invariant preserved — the ASM covenant consults no registry. Not yet built: paymaster fallback (v2, designed only), Katalogos second-tab paste-address lookup, mainnet oracle wiring (dev key baked for chipnet only). Full record: wiki/decisions.md ADR-0055 amendment, snapshot 0248. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> |
||
|---|---|---|
| .claude | ||
| brand | ||
| contracts | ||
| design | ||
| docs | ||
| KnowledgeBase | ||
| Parameters | ||
| public | ||
| scripts | ||
| services | ||
| shells | ||
| site/deviant | ||
| snapshots | ||
| spike | ||
| src | ||
| telegram-orderbook | ||
| test | ||
| wiki | ||
| .calibration-sweep.json | ||
| .catalytic-sweep.json | ||
| .env.example | ||
| .gitignore | ||
| .kac-extract.txt | ||
| .sim-athenae.json | ||
| adaptive-data.json | ||
| bch-history.json | ||
| bch-market.json | ||
| BCH_Token_Economy_Concept_Paper.md | ||
| bch_wallet_architecture.svg | ||
| CLAUDE.md | ||
| deviant_technical_spec_v2.7.md | ||
| package-lock.json | ||
| package.json | ||
| project-context.md | ||
| README.md | ||
| tsconfig.json | ||
| usdm-historical.json | ||
Deviant
BCH two-tier token economy platform. Pre-implementation. See BCH_Token_Economy_Concept_Paper.md for the full design.
Status
Bootstrap snapshot — protocol swap mechanism is the validation target.
Project map
| Path | Purpose |
|---|---|
BCH_Token_Economy_Concept_Paper.md |
Architecture spec, all [PROPOSED] claims |
CLAUDE.md |
Working agreement for Claude sessions |
src/ |
TypeScript wallet + token logic |
contracts/ |
CashScript source for Architecture A contracts |
test/ |
Unit tests (regtest) + integration plan (chipnet, mainnet) |
scripts/ |
Code-scan, snapshot, compile helpers |
wiki/ |
Living docs: architecture, decisions, testing strategy, code map |
snapshots/ |
Numbered progress snapshots |
Quickstart
npm install
npm run compile:contracts # produces artifacts from contracts/*.cash
npm run test:regtest # runs regtest suite
npm run scan # regenerates wiki/code-map.md
npm run snapshot # appends a new snapshot
Build priorities (active)
- Protocol swap mechanism — most novel claim, needs validation first.
- CashScript enforcement on mainnet — not just theoretical verification.
- tokenId correlation across A/B tiers — edge cases expected.
See wiki/testing-strategy.md for the staged regtest → chipnet → mainnet plan.