Commit 1adaa66
feat(token): on-chain token transfers, canonical burn, sharded logs_root proofs
Success-gated QRC-20/721 transfer events are folded into the 2f+1 QC-certified
Checkpoint.logs_root (active from genesis), giving trustless light-client receipts.
- logs_root is SHARDED: the window root is a merkle over per-block sub-roots (stored
at apply), so the macroblock seal folds ~90 roots and /logs/proof is a 2-level proof
that touches ONE block, not O(window). Mobile QcLightClient verifies both levels.
- Canonical burn address 0000000000000000000eon00000000000000036877022 (provably
unspendable): QRC-20/721 transfer-to-it is a real burn (supply reduced / token
destroyed + exact deposit refund); native QNC becomes non-circulating; mint-to-burn
rejected. /public/stats reports burn_address + qnc_burned.
- VM: deterministic tree-wide MAX_LOGS_PER_TX cap (traps -> reverts tx, shared CallState
counter) + higher LOG_FUEL_BASE bound the per-window merkle against emit_log spam.
- Node: reorg-consistent token-transfer index (cursor-paged, resume-watermark prune),
decoded RPC feeds with oldest_available retention honesty, and a light
contract-metadata read (no O(holders) account clone).
- Mobile: trustless 2-level inclusion verify (a QC-root mismatch -> rejected, never
confirmed), a QC-verified trust badge gated on wallet-trusted decimals, no
node-supplied logo loaded as <Image>.
- Explorer: token-transfer tab/pages, anchor-corroborated backward-height reconcile
(no spurious DB wipe on node restart), composite SQL indexes, shared amount/logo utils.
- External qnet-loadtest harness: confirmed-TPS + finality latency + 2-level proof sampling.
Validated: qnet-consensus 91, qnet-state 131, qnet-vm 22, qnet-integration check clean,
qnet-loadtest 5; mobile babel + explorer tsc clean. Consensus-structure change -> fresh
genesis (logs_root_required gate=0, no mixed-binary).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>1 parent 013761f commit 1adaa66
46 files changed
Lines changed: 4353 additions & 441 deletions
File tree
- applications
- qnet-explorer/frontend
- lib
- migrations
- scripts
- src
- app
- api
- address/[address]
- search/suggest
- token/[contract]
- explorer
- address/[address]
- token/[contract]
- components
- lib
- qnet-mobile/src
- components
- crypto
- screens
- core
- qnet-consensus/src
- qnet-state/src
- qnet-vm/src
- development
- qnet-integration/src
- qnet-loadtest
- src
- documentation
- technical
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
687 | 687 | | |
688 | 688 | | |
689 | 689 | | |
| 690 | + | |
| 691 | + | |
| 692 | + | |
| 693 | + | |
| 694 | + | |
| 695 | + | |
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| 10 | + | |
10 | 11 | | |
11 | 12 | | |
12 | 13 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1307 | 1307 | | |
1308 | 1308 | | |
1309 | 1309 | | |
| 1310 | + | |
| 1311 | + | |
| 1312 | + | |
| 1313 | + | |
| 1314 | + | |
| 1315 | + | |
| 1316 | + | |
| 1317 | + | |
| 1318 | + | |
| 1319 | + | |
| 1320 | + | |
1310 | 1321 | | |
1311 | 1322 | | |
1312 | 1323 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1905 | 1905 | | |
1906 | 1906 | | |
1907 | 1907 | | |
| 1908 | + | |
| 1909 | + | |
| 1910 | + | |
| 1911 | + | |
| 1912 | + | |
| 1913 | + | |
| 1914 | + | |
| 1915 | + | |
| 1916 | + | |
| 1917 | + | |
| 1918 | + | |
1908 | 1919 | | |
1909 | 1920 | | |
1910 | 1921 | | |
| |||
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
612 | 612 | | |
613 | 613 | | |
614 | 614 | | |
| 615 | + | |
| 616 | + | |
| 617 | + | |
| 618 | + | |
| 619 | + | |
| 620 | + | |
| 621 | + | |
| 622 | + | |
| 623 | + | |
| 624 | + | |
| 625 | + | |
| 626 | + | |
| 627 | + | |
| 628 | + | |
| 629 | + | |
| 630 | + | |
| 631 | + | |
| 632 | + | |
| 633 | + | |
| 634 | + | |
| 635 | + | |
| 636 | + | |
| 637 | + | |
| 638 | + | |
| 639 | + | |
| 640 | + | |
| 641 | + | |
| 642 | + | |
| 643 | + | |
| 644 | + | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
| 648 | + | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
| 653 | + | |
| 654 | + | |
| 655 | + | |
| 656 | + | |
| 657 | + | |
| 658 | + | |
| 659 | + | |
| 660 | + | |
| 661 | + | |
| 662 | + | |
| 663 | + | |
| 664 | + | |
| 665 | + | |
| 666 | + | |
| 667 | + | |
| 668 | + | |
| 669 | + | |
615 | 670 | | |
616 | 671 | | |
617 | 672 | | |
| |||
0 commit comments