Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
850 commits
Select commit Hold shift + click to select a range
88fbba3
docs: fix oracle setup guide accuracy — correct consensus params, rem…
JaredTate Feb 10, 2026
bc5741d
docs: add table of contents and fix config in oracle setup guide
JaredTate Feb 10, 2026
adff52a
docs: fix mainnet nDDActivationHeight to BIP9-activated (TBD)
JaredTate Feb 10, 2026
e72e790
docs: rewrite oracle setup guide — simplify, remove duplicates, compl…
JaredTate Feb 10, 2026
35405ea
fix: Dandelion++ infinite relay loop — duplicate detection and log spam
JaredTate Feb 10, 2026
a0de19b
fix: testnet difficulty settings + reset to testnet17 (RC17)
JaredTate Feb 10, 2026
891f5a6
fix: proper BIP9 activation sequence for DigiDollar on testnet
JaredTate Feb 11, 2026
af16284
fix: gate ALL DigiDollar RPCs behind BIP9 activation check
JaredTate Feb 11, 2026
19cd1bc
ui: DigiDollar tab always visible with activation status overlay
JaredTate Feb 11, 2026
b422ebd
ui: DigiDollar tab always visible with activation status overlay
JaredTate Feb 11, 2026
89ef168
Merge branch 'feature/digidollar-v1' of github.com:DigiByte-Core/digi…
JaredTate Feb 11, 2026
f9a1013
fix: remove SHA256D initial difficulty on testnet
JaredTate Feb 11, 2026
170873c
Merge branch 'feature/digidollar-v1' of github.com:DigiByte-Core/digi…
JaredTate Feb 11, 2026
05ecf4a
fix: include trusted pending DD balance in send widget spendable amount
JaredTate Feb 11, 2026
02ca535
docs: DIGIDOLLAR_ACTIVATION_EXPLAINER.md — complete BIP9 activation g…
JaredTate Feb 11, 2026
c4344d6
qt: Add DDSendFee transaction type for DigiDollar transfer fees
JaredTate Feb 11, 2026
a36aa04
fix: ungate getdigidollardeploymentinfo RPC + fix activation test
JaredTate Feb 11, 2026
370d8cb
security: fix 3 vulnerabilities found during DD transaction audit
JaredTate Feb 11, 2026
ae1f6b9
test: fix encrypted wallet test race condition
JaredTate Feb 11, 2026
852896b
test: add comprehensive RPC gating test for all 27 DD/Oracle RPCs
JaredTate Feb 11, 2026
8a16912
security: fix __int128→uint64 overflow in TxBuilder collateral calc
JaredTate Feb 11, 2026
8de1179
security: fix __int128→uint64 overflow in RPC collateral calculations
JaredTate Feb 11, 2026
352b701
qt: re-validate amount border when DD balance updates
JaredTate Feb 11, 2026
a074b3c
consensus: set SHA256D initial difficulty to >> 31 on testnet
JaredTate Feb 11, 2026
ae87a9f
release: v9.26.0-rc17 release notes and wallet splash
JaredTate Feb 11, 2026
84e7222
fix: allow spending trusted unconfirmed DD UTXOs (consecutive sends)
JaredTate Feb 11, 2026
134c055
qt: Show collateral return and fee change separately in REDEEM display
JaredTate Feb 12, 2026
12123c9
fix: Remove hardcoded mainnet height from CBlockIndex::GetAlgo()
JaredTate Feb 12, 2026
26aa3b5
test: Add Mask Values privacy tests for DigiDollar widgets (TDD)
JaredTate Feb 12, 2026
7008db3
fix: Add Mask Values privacy support to DigiDollar widgets
JaredTate Feb 12, 2026
178a445
bump: v9.26.0-rc18 — testnet18, port 12032, mask values privacy
JaredTate Feb 12, 2026
9061298
Create RELEASE_v9.26.0-rc18.md
JaredTate Feb 12, 2026
f1ca8ff
test: Fix port collision with DigiByte default ports
JaredTate Feb 12, 2026
cdc6c1a
Update copyright year from 2025 to 2026
JaredTate Feb 12, 2026
36221d1
fix: restore mainnet Taproot BIP9 dates to match v8.26.2
JaredTate Feb 12, 2026
b0e5e6d
consensus: set DigiDollar mainnet BIP9 window to May 2026 - May 2028
JaredTate Feb 12, 2026
14bf99e
docs: add DigiDollar wallet and exchange integration guides
JaredTate Feb 12, 2026
c9c1574
docs: fix accuracy issues in integration guides
JaredTate Feb 12, 2026
b175677
audit: [T1-01] Collateral calculation overflow/underflow - defense ve…
JaredTate Feb 13, 2026
9c8abf1
security: [T1-02] fix OP_RETURN DD amount inflation attack (CVE-grade)
JaredTate Feb 13, 2026
2df0f26
audit: [T1-03] CLTV timelock bypass NOT possible - defense verified
JaredTate Feb 13, 2026
fb207f5
security: [T1-03-FIX] verify lockHeight matches lockTier in mint OP_R…
JaredTate Feb 13, 2026
a0217af
consensus: fix integer overflow in ValidateCollateralRatio()
gto90 Feb 13, 2026
f91cd93
security: [T1-06] fix division by zero in CalculateSystemHealth() (DG…
gto90 Feb 13, 2026
193e56d
security: [T1-07] reject oracle_id > 255 to prevent truncation (DGB-S…
gto90 Feb 13, 2026
af641e9
security: [T1-08] add regtest-only runtime guards to MockOracleManage…
gto90 Feb 13, 2026
96c72a0
docs: [T1-09] document deterministic IV design in wallet crypter (DGB…
gto90 Feb 13, 2026
699e29b
fix: address Copilot review comments on SEC-003
gto90 Feb 13, 2026
fcca13e
security: [T1-04f] reject mint transactions with multiple DD OP_RETUR…
JaredTate Feb 13, 2026
c857cb3
build: fix CI depends failures for macOS ARM64 and Linux
gto90 Feb 13, 2026
9f197c8
build: fix CI depends failures for macOS ARM64 and Linux
gto90 Feb 13, 2026
edf9b99
build: fix CI depends failures for macOS ARM64 and Linux
gto90 Feb 13, 2026
5725e32
build: fix CI depends failures for macOS ARM64 and Linux
gto90 Feb 13, 2026
67155fd
build: fix CI depends failures for macOS ARM64 and Linux
gto90 Feb 13, 2026
6964d42
security: address Copilot review comments on SEC-001
gto90 Feb 13, 2026
6b6acf3
docs: improve accuracy of deterministic IV security documentation
gto90 Feb 13, 2026
a85915f
audit: [T1-05] Oracle price forgery — vulnerability found + 6 adversa…
JaredTate Feb 13, 2026
0becca1
audit: [T1-06] BIP9 activation gate bypass NOT possible — defense ver…
JaredTate Feb 13, 2026
1dc2297
Initial plan
Copilot Feb 13, 2026
a72c9b9
Fix OpenSSL Configure error by routing Linux/FreeBSD flags through pr…
Copilot Feb 13, 2026
05c9be5
audit: [T1-07] DD double-spend protection verified — 9 adversarial tests
JaredTate Feb 13, 2026
73c54c9
Fix OpenSSL build: move -D_GNU_SOURCE to CFLAGS where it's actually u…
Copilot Feb 13, 2026
6237953
security: [T1-08] fix collateral release bypass via missing DD amount…
JaredTate Feb 13, 2026
96535df
security: [T2-01] fix absolute lockHeight used as relative lock perio…
JaredTate Feb 13, 2026
01aab48
security: [T2-02] fix transfer conservation bypass via non-DD source tx
JaredTate Feb 13, 2026
44b7af6
security: [T2-03] fix partial burn collateral theft via miner fees
JaredTate Feb 13, 2026
385bcf3
Add REPO_MAP_GUIDE.md - AI agent codebase navigation guide for DigiBy…
JaredTate Feb 13, 2026
8237d64
Merge branch 'feature/digidollar-v1' of https://github.com/DigiByte-C…
JaredTate Feb 13, 2026
9bff35f
security: [T2-04] fix oracle price staleness exploit — add expiry + r…
JaredTate Feb 13, 2026
979d1ca
Merge branch 'feature/digidollar-v1' of github.com:DigiByte-Core/digi…
JaredTate Feb 13, 2026
6bc5a27
docs: add REPO_MAP.md (1,781 lines) and REPO_MAP_DIGIDOLLAR.md (957 l…
JaredTate Feb 13, 2026
95d6151
audit: [T2-05] DCA/ERR health calculation gaming — 4 bugs found
JaredTate Feb 13, 2026
38b78aa
security: [T2-06b] fix collateral masquerade as fee input in redemptions
JaredTate Feb 13, 2026
202151c
audit: [T3-01] Schnorr signature forgery NOT possible - defense verified
JaredTate Feb 13, 2026
eb7ee4f
security: [T3-02] fix ORACLEBUNDLE P2P relay amplification — pubkey r…
JaredTate Feb 13, 2026
b7688a9
security: [T3-03] fix time-dependent consensus price in CalculateCons…
JaredTate Feb 13, 2026
0e3b0dd
security: [T3-04] fix P2P oracle message replay via nonce/block_heigh…
JaredTate Feb 13, 2026
b989f7d
audit: [T3-05] consensus threshold bypass — default parameter mismatc…
JaredTate Feb 13, 2026
a463b8e
audit: [T3-06] exchange price source manipulation — defense verified
JaredTate Feb 13, 2026
bf19ad4
audit: [T4-01] RPC parameter injection — defense verified
JaredTate Feb 13, 2026
9c557f0
audit: [T4-02] wallet race conditions in consecutive DD sends — 6 adv…
JaredTate Feb 13, 2026
9c798c5
audit: [T4-03] DD wallet key extraction — encryption bypass documented
JaredTate Feb 13, 2026
9ad82c1
audit: [T4-04] watch-only wallet balance manipulation — 3 findings do…
JaredTate Feb 13, 2026
dbd6d94
security: [T2-05a] implement real GetSystemCollateralRatio from UTXO …
JaredTate Feb 13, 2026
a8d21b3
security: [T2-05b] fix unit mismatch in GetCurrentSystemHealth — cent…
JaredTate Feb 13, 2026
d2300f4
security: [T2-05c] fix ShouldBlockMinting — fail-closed when metrics …
JaredTate Feb 13, 2026
6038242
security: [T3-05a] fix oracle consensus threshold — use chainparams e…
JaredTate Feb 13, 2026
656a3ba
security: [T4-02d] add mutex to DigiDollarWallet — prevent data races
JaredTate Feb 13, 2026
f995f92
security: [T1-05a] fix skipOracleValidation — only skip during IBD, n…
JaredTate Feb 13, 2026
c087f7f
security: [T4-04] fix watch-only DD balance contamination in ProcessD…
JaredTate Feb 13, 2026
2965bcb
security: [T4-03a] encrypt DD private keys when wallet is encrypted
JaredTate Feb 13, 2026
8a05b4d
bump: v9.26.0-rc19 DigiDollar
JaredTate Feb 13, 2026
134a626
Add build_env to export CFLAGS during OpenSSL build phase
Copilot Feb 13, 2026
cf959b6
build: fix deferred evaluation for OpenSSL CFLAGS in depends
gto90 Feb 13, 2026
9d129ba
build: fix deferred evaluation for OpenSSL CFLAGS in depends
gto90 Feb 13, 2026
4227256
build: fix deferred evaluation for OpenSSL CFLAGS in depends
gto90 Feb 13, 2026
3604ff6
build: fix deferred evaluation for OpenSSL CFLAGS in depends
gto90 Feb 13, 2026
4faf2bc
fix: clear seen_message_hashes in ClearPendingMessages() to prevent c…
JaredTate Feb 13, 2026
f3b96c4
fix: null-safe locking in DigiDollarWallet to prevent segfault when m…
JaredTate Feb 13, 2026
601a561
build: remove empty ARFLAGS from OpenSSL config_env
gto90 Feb 13, 2026
20d7331
build: remove empty ARFLAGS from OpenSSL config_env
gto90 Feb 13, 2026
86372e6
build: remove empty ARFLAGS from OpenSSL config_env
gto90 Feb 13, 2026
720176f
build: remove empty ARFLAGS from OpenSSL config_env
gto90 Feb 13, 2026
e42e736
fix: add in-class nullptr initializer for m_wallet to prevent ABI mis…
JaredTate Feb 13, 2026
ec38053
fix: pass oracle price from ValidationContext to ShouldBlockMinting +…
JaredTate Feb 13, 2026
7587f90
fix: pass min_required to GetConsensusPrice() in oracle benchmark — T…
JaredTate Feb 13, 2026
a62c1ee
Docs Cleanup
JaredTate Feb 13, 2026
6534362
fix: T2-06b collateral check was too aggressive — reject only vout[0]…
JaredTate Feb 13, 2026
068f8b8
test: add diagnostic messages to CI-failing mint validation tests
gto90 Feb 13, 2026
317d63d
test: fix cross-suite state pollution causing CI-only mint test failures
gto90 Feb 13, 2026
cbbfd01
test: add diagnostic messages to CI-failing mint validation tests
gto90 Feb 13, 2026
bb6a079
test: fix cross-suite state pollution causing CI-only mint test failures
gto90 Feb 13, 2026
0884c5c
test: add diagnostic messages to CI-failing mint validation tests
gto90 Feb 13, 2026
1a137ee
test: fix cross-suite state pollution causing CI-only mint test failures
gto90 Feb 13, 2026
8339c07
test: add diagnostic messages to CI-failing mint validation tests
gto90 Feb 13, 2026
09c2d43
test: fix cross-suite state pollution causing CI-only mint test failures
gto90 Feb 13, 2026
e09d288
merge: resolve conflict with feature/digidollar-v1
gto90 Feb 13, 2026
db9c9cf
merge: resolve conflict with feature/digidollar-v1
gto90 Feb 13, 2026
252ff2d
merge: resolve conflict with feature/digidollar-v1
gto90 Feb 13, 2026
a726b3e
merge: resolve conflict with feature/digidollar-v1
gto90 Feb 13, 2026
43631b3
docs: [T1-09] document deterministic IV design in wallet crypter (DGB…
JaredTate Feb 13, 2026
e57a353
fix: array bounds check in multi-algo block index tracking (DGB-BUG-011)
JaredTate Feb 13, 2026
252bc23
security: [T1-07] reject oracle_id > 255 to prevent truncation (DGB-S…
JaredTate Feb 13, 2026
c089d99
security: [T1-08] add regtest-only runtime guards to MockOracleManage…
JaredTate Feb 13, 2026
90dfdcf
security: [T1-06] fix division by zero in CalculateSystemHealth() (DG…
JaredTate Feb 13, 2026
59faad3
fix: resolve bad auto-merge that dropped DD amount consistency check
gto90 Feb 13, 2026
ee87600
fix: resolve bad auto-merge that dropped DD amount consistency check
gto90 Feb 13, 2026
07d6489
fix: resolve bad auto-merge that dropped DD amount consistency check
gto90 Feb 13, 2026
ee5a9b5
fix: resolve bad auto-merge that dropped DD amount consistency check
gto90 Feb 13, 2026
ae5cd7c
Merge PR #378: docs: document deterministic IV design in wallet crypt…
JaredTate Feb 13, 2026
61bdb29
Merge PR #369: fix: array bounds check in multi-algo block index trac…
JaredTate Feb 13, 2026
feb81c2
Merge PR #376: security: reject oracle_id > 255 to prevent truncation…
JaredTate Feb 13, 2026
310ede1
Merge PR #377: security: add regtest-only runtime guards to MockOracl…
JaredTate Feb 13, 2026
024ae6a
Merge PR #375: security: fix division by zero in CalculateSystemHealt…
JaredTate Feb 13, 2026
e7192dc
build: fix CI depends failures and test build errors
gto90 Feb 13, 2026
8234bd8
test: increase feature_coinstatsindex.py timeouts for parallel stability
JaredTate Feb 13, 2026
04601af
Merge branch 'feature/digidollar-v1' of github.com:DigiByte-Core/digi…
JaredTate Feb 13, 2026
ea8b788
consensus: add JohnnyLawDGB as oracle 8, bump to testnet19 (5-of-9 co…
JaredTate Feb 14, 2026
8c81545
audit: [T5-01] OP_RETURN encoding bypass NOT possible - defense verified
JaredTate Feb 14, 2026
24b4bc6
security: [T5-02] fix coinbase DD marker bypass — DD from nothing
JaredTate Feb 14, 2026
ae7f563
audit: [T5-03] Phase 2 on-chain signature verification fundamentally …
JaredTate Feb 14, 2026
ddfc3b1
security: [T5-04] fix missing HasDigiDollarMarker check in collateral…
JaredTate Feb 14, 2026
15f1620
test: update oracle tests for 9-oracle (5-of-9) testnet configuration
JaredTate Feb 14, 2026
10a99f6
fix: update JohnnyLawDGB oracle pubkey (regenerated fresh wallet)
JaredTate Feb 14, 2026
9fc37ee
audit: [T5-05] price expiry timestamp manipulation — defense holds
JaredTate Feb 14, 2026
9c1cf6f
audit: [T5-05] price expiry timestamp manipulation — defense holds, 2…
JaredTate Feb 14, 2026
153e30a
audit: [T5-06] health-based minting block is non-functional — cached …
JaredTate Feb 14, 2026
a288dbe
audit: [T5-06] health-based minting block is non-functional — cached …
JaredTate Feb 14, 2026
c0df550
audit: [T6-01] same-block mint/transfer/redeem ordering attack NOT ex…
JaredTate Feb 14, 2026
e2d084a
audit: [T6-01] same-block mint/transfer/redeem ordering attack NOT ex…
JaredTate Feb 14, 2026
69f6301
audit: [T6-02] double-spend via conflicting DD txs in mempool+block N…
JaredTate Feb 14, 2026
9cd1efc
audit: [T6-03] unconfirmed DD chain ancestor limit attack NOT exploit…
JaredTate Feb 14, 2026
5ed8a15
audit: [T6-04] reorg collateral theft NOT possible — consensus safe
JaredTate Feb 14, 2026
3986ced
audit: [T7-01] miner DD tx reordering attack NOT possible — defense v…
JaredTate Feb 14, 2026
86dae52
audit: [T7-02] miner oracle censorship — fail-closed defense verified
JaredTate Feb 14, 2026
73083ef
audit: [T7-03] block timestamp manipulation NOT exploitable for DD ad…
JaredTate Feb 14, 2026
0fe463f
audit: [T7-04] selfish mining BIP9 activation delay NOT exploitable —…
JaredTate Feb 14, 2026
512c9c5
audit: [T8-01] Eclipse oracle nodes — DoS-only, fail-closed defense v…
JaredTate Feb 14, 2026
f237d6d
audit: [T8-02] Sybil oracle message flooding NOT exploitable — defens…
JaredTate Feb 14, 2026
2a1eeef
audit: [T8-03] Partition attack — non-deterministic oracle price in c…
JaredTate Feb 14, 2026
0d9298f
audit: [T9-01] 4-of-9 oracle consensus — threshold holds
JaredTate Feb 14, 2026
594e32a
audit: [T9-02] 5 oracles with 2 stale
JaredTate Feb 14, 2026
a86150e
audit: [T9-03] Oracle key rotation
JaredTate Feb 14, 2026
f147d01
audit: [T9-04] Oracle ID 8 boundary checks — defenses hold
JaredTate Feb 14, 2026
6a8d0f7
audit: [T10-01] Rapid mint/redeem wallet consistency — defenses hold
JaredTate Feb 14, 2026
15d57db
audit: [T10-02] Mempool 25-ancestor limit with DD workflows — defense…
JaredTate Feb 14, 2026
f07d393
audit: [T10-03] MAX_MONEY DD mint overflow analysis
JaredTate Feb 14, 2026
88fdd9c
audit: [T10-04] Zero-amount DD operations — all defenses hold
JaredTate Feb 14, 2026
11f4775
audit: [T10-05] activation boundary (block 599/600/601) — defense ver…
JaredTate Feb 14, 2026
e128f3b
consensus: incremental DD supply/collateral tracking for ERR (T5-06)
JaredTate Feb 14, 2026
806aec1
consensus: unify oracle median/outlier formula to IQR (T9-01)
JaredTate Feb 14, 2026
d920c5d
consensus: use block-extracted oracle price for DD validation (T8-03)
JaredTate Feb 14, 2026
e0286f4
Merge branch 'feature/digidollar-v1' of github.com:DigiByte-Core/digi…
JaredTate Feb 14, 2026
1f0767d
consensus: Phase 2 multi-oracle Schnorr signatures (T5-03)
JaredTate Feb 14, 2026
7b58bb4
audit: RED HORNET Phase 2 Schnorr signature security tests (15 exploi…
JaredTate Feb 14, 2026
ea3137e
fix: mark redeemed vaults inactive during wallet recovery
JaredTate Feb 14, 2026
9153e07
fix: eliminate oracle log spam from P2P duplicate hash mismatch
JaredTate Feb 14, 2026
81a6edb
docs: update ARCHITECTURE.md + REPO_MAP.md with DigiDollar Phase 2 + …
JaredTate Feb 14, 2026
faa9061
test: upgrade testnet validation to 5-of-9 oracle consensus (V10)
JaredTate Feb 14, 2026
13dc517
fix: resolve CI test failures from FD overflow and missing log catego…
gto90 Feb 14, 2026
9f2ca09
docs: add RC19 release notes — Red Hornet security audit, Phase 2 Sch…
JaredTate Feb 14, 2026
fff5f47
ci: add push triggers for feature/fix branches and workflow_dispatch
gto90 Feb 14, 2026
8df2da6
ci: remove push triggers for feature/fix branches
gto90 Feb 14, 2026
c5b9060
style: use static_cast instead of C-style casts in RaiseFileDescripto…
gto90 Feb 14, 2026
cfa54b5
fix: resolve CI depends build failures for OpenSSL and libcurl
gto90 Feb 14, 2026
9aa2f6f
fix: move OpenSSL compiler flags from config_opts to CFLAGS/CPPFLAGS
gto90 Feb 14, 2026
5d9f5d7
ci: run functional tests with --jobs=2 for faster CI
gto90 Feb 14, 2026
a8f5787
fix: mine DD transfer on sender node to ensure block inclusion
gto90 Feb 14, 2026
d29af47
protocol: Add ORACLECONSENSUS and ORACLEATTESTATION P2P message types
JaredTate Feb 14, 2026
19e213e
oracle: Add BroadcastConsensusProposal and attestation tracking
JaredTate Feb 14, 2026
3cc9255
net_processing: Add ORACLECONSENSUS and ORACLEATTESTATION P2P handlers
JaredTate Feb 14, 2026
1995821
rpc: Add JohnnyLawDGB to oracle_names at index 8
JaredTate Feb 14, 2026
1017ff0
test: Add Round 2 consensus attestation protocol tests
JaredTate Feb 14, 2026
50d5f28
docs: Update REPO_MAP_DIGIDOLLAR with Round 2 protocol additions
JaredTate Feb 14, 2026
6362044
fix: getoracles RPC showing stale data for offline oracles
JaredTate Feb 14, 2026
8f106f6
ci: revert functional tests to --jobs=1 to avoid P2P flakes
gto90 Feb 15, 2026
f0e53b4
ci: add timeout-factor for functional tests on CI runners
gto90 Feb 15, 2026
5bb3111
ci: exclude flaky P2P tests on macOS CI runners
gto90 Feb 15, 2026
05734dc
Merge pull request #380 from DigiByte-Core/fix/ci-cd-pipeline
JaredTate Feb 16, 2026
94b7f6f
Merge remote-tracking branch 'origin/feature/digidollar-v1' into feat…
JaredTate Feb 16, 2026
951f4af
Bump version to v9.26.0-rc20, update wallet image
JaredTate Feb 16, 2026
cd4dc4f
fix: mint validation updates on balance change
JaredTate Feb 16, 2026
a4b3bd5
fix: IBD catch-up sync stuck at block 7586 with bad-oracle-price
JaredTate Feb 16, 2026
8d47d0d
Merge branch 'feature/digidollar-v1' of https://github.com/DigiByte-C…
JaredTate Feb 16, 2026
789293a
Merge branch 'feature/digidollar-v1' of https://github.com/DigiByte-C…
JaredTate Feb 16, 2026
6fd2ca9
Create RELEASE_v9.26.0-rc20.md
JaredTate Feb 16, 2026
44e4222
Create RELEASE_v9.26.0-rc20.md
JaredTate Feb 16, 2026
1cb47fa
Merge pull request #382 from DigiByte-Core/rc20-release-notes
JaredTate Feb 16, 2026
6883f03
Merge branch 'feature/digidollar-v1' of github.com:DigiByte-Core/digi…
JaredTate Feb 16, 2026
e4fbe10
fix: skip ERR minting check during IBD to prevent sync failure at blo…
JaredTate Feb 16, 2026
7f922b6
Bump version to v9.26.0-rc21, update wallet image, add release notes
JaredTate Feb 16, 2026
f4b11b1
wallet: exclude unconfirmed DD mint outputs from spendable balance
JaredTate Feb 17, 2026
f7a4b1d
oracle: fix end-to-end bundle pipeline — bundles now reach mined blocks
JaredTate Feb 17, 2026
d7c103d
version: bump to v9.26.0-rc22, update wallet image and release notes
JaredTate Feb 17, 2026
272d440
fix(rpc): resolve 4 DigiDollar RPC display bugs reported in RC22
JaredTate Feb 21, 2026
94f8392
oracle: fix consensus deadlock from stale attestation timestamps
JohnnyLawDGB Feb 26, 2026
6963ed5
Merge pull request #383 from JohnnyLawDGB/fix/oracle-consensus-deadlock
DigiSwarm Feb 27, 2026
136858b
fix(oracle): clarify consensus log messages — correct ambiguous N-of-…
JaredTate Feb 27, 2026
eecd086
fix(wallet): restore compressed flag when loading oracle keys from da…
JaredTate Feb 27, 2026
d00e683
fix(oracle): broadcast consensus proposals proactively on quorum
JaredTate Feb 27, 2026
6ff7e70
version: bump to v9.26.0-rc23, update wallet image
JaredTate Feb 27, 2026
0bce158
Add RC23 release notes
JaredTate Mar 2, 2026
c3a1793
fix(rpc): fix Clang narrowing error in getdigidollarstats for macOS b…
JaredTate Mar 2, 2026
26efa98
fix(wallet): restore redeemed DD positions after importdescriptors
JaredTate Mar 3, 2026
42ccda1
fix(test): add -dandelion=0 to p2p tests that don't test Dandelion
JaredTate Mar 3, 2026
b0639cf
fix: restore ZMQ ipc:// Unix domain socket support
JohnnyLawDGB Mar 3, 2026
a155f83
Update .gitignore
JaredTate Mar 5, 2026
bc64377
DOCS UPDATE
JaredTate Mar 5, 2026
425e91c
docs(digidollar): validate and correct DigiDollar docs against source…
JaredTate Mar 5, 2026
42cff0c
Merge pull request #387 from JohnnyLawDGB/fix/zmq-ipc-socket-validation
DigiSwarm Mar 5, 2026
201d426
fix(test): drain Dandelion++ threads before teardown in network relay…
JaredTate Mar 5, 2026
4291ce4
fix(test): drain Dandelion++ threads before teardown in network relay…
JaredTate Mar 5, 2026
0116809
version: bump to v9.26.0-rc24, update wallet image
JaredTate Mar 5, 2026
14fe6bc
Merge branch 'feature/digidollar-v1' of github.com:DigiByte-Core/digi…
JaredTate Mar 5, 2026
4421027
fix(qt): correct wallet image for v9.26.0-rc24
JaredTate Mar 5, 2026
b49b511
Merge pull request #388 from DigiByte-Core/fix/wallet-restore-redempt…
JaredTate Mar 5, 2026
6faee83
fix(wallet): populate blockheight in DDTransaction from confirmed blo…
JaredTate Mar 5, 2026
d5b0427
fix(rpc): validate mint amount against consensus limits in mintdigido…
JaredTate Mar 5, 2026
6bf86c6
fix(rpc): replace mock data in listdigidollaraddresses with real wall…
JaredTate Mar 5, 2026
084849d
revert: bug #12 fix needs network-aware address handling
JaredTate Mar 5, 2026
b98c7c8
fix(rpc): replace mock data in listdigidollaraddresses with wallet qu…
JaredTate Mar 6, 2026
42a99d9
fix(rpc): add computed fields to listdigidollarpositions (Bug #14)
JaredTate Mar 6, 2026
cc87d51
fix(rpc): reconcile getoracles and getalloracleprices data (Bug #15)
JaredTate Mar 6, 2026
9cde569
fix(wallet): proper fee estimation for DD redemption (Bug #9, Bug #17)
JaredTate Mar 6, 2026
1bbcf21
test: add regression tests for Bug #11 and Bug #13 fixes
JaredTate Mar 6, 2026
7d5a7b0
test: update existing tests for Bug #9 fee changes and Bug #12 wallet…
JaredTate Mar 6, 2026
d2e35f3
fix(rpc): move listdigidollaraddresses to wallet RPC table for proper…
JaredTate Mar 6, 2026
3f2add6
fix(rpc): replace mock data in getredemptioninfo with real wallet pos…
JaredTate Mar 6, 2026
50a62bc
fix(wallet): populate feeAmounts in RedeemDigiDollar wallet path
JaredTate Mar 6, 2026
98edaa0
docs: add v9.26.0-rc24 release notes
JaredTate Mar 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 7 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ name: CI
on:
# See: https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request.
pull_request:
# Allow manual triggering from the Actions tab.
workflow_dispatch:
# See: https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#push.
push:
branches:
Expand Down Expand Up @@ -131,7 +133,10 @@ jobs:
run: ./src/test/test_digibyte --show_progress

- name: Run Functional Tests
run: test/functional/test_runner.py --jobs=1
run: >-
test/functional/test_runner.py
--jobs=1
--timeout-factor=3

- name: Upload Test Suite Log
uses: actions/upload-artifact@v4
Expand Down Expand Up @@ -237,7 +242,7 @@ jobs:
run: ./src/test/test_digibyte --show_progress

- name: Run Functional Tests
run: test/functional/test_runner.py --jobs=1
run: test/functional/test_runner.py --jobs=1 --timeout-factor=2

- name: Upload Test Suite Log
uses: actions/upload-artifact@v4
Expand Down
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -161,3 +161,9 @@ dist/
DigiByte-Core.dmg
.wslconfig
APPLICATION_BUGS.md
testnet_miner.sh

# Audit files
audit/
CERT_FIX_ORACLE.md
Z_PROMPTS.md
129 changes: 129 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
# DIGIBYTE KNOWLEDGE BASE

**Generated:** 2026-01-02
**Commit:** 39227ce6fe
**Branch:** feature/digidollar-v1

## OVERVIEW

DigiByte Core v8.26 - Bitcoin Core v26.2 fork with multi-algorithm PoW mining, Dandelion++ privacy, and DigiDollar stablecoin. C++ codebase with Python functional tests.

## STRUCTURE

```
digibyte/
├── src/ # Core C++ source (see src/AGENTS.md)
│ ├── consensus/ # DigiByte consensus rules (see consensus/AGENTS.md)
│ ├── crypto/ # Multi-algo hashing (see crypto/AGENTS.md)
│ ├── digidollar/ # DigiDollar stablecoin module
│ ├── oracle/ # Price oracle for DigiDollar
│ ├── wallet/ # Wallet with DGB address formats
│ ├── rpc/ # RPC including getblockreward, getmininginfo
│ ├── qt/ # Qt GUI
│ └── node/ # Node management
├── test/functional/ # Python tests (see test/functional/AGENTS.md)
├── depends/ # Cross-compilation system
│ ├── bitcoin-v26.2-for-digibyte/ # Bitcoin reference
│ └── digibyte-v8.22.2/ # DigiByte v8.22 SOURCE OF TRUTH
├── doc/ # Build guides, developer notes
├── digidollar/ # DigiDollar specs and design docs
├── contrib/ # Scripts, packaging, gitian
└── ci/ # CI test infrastructure
```

## WHERE TO LOOK

| Task | Location | Notes |
|------|----------|-------|
| Multi-algo mining | `src/pow.cpp`, `src/crypto/hash*.h` | 5 algos + Odocrypt |
| Difficulty adjustment | `src/consensus/dca.cpp` | DigiShield/MultiShield |
| DigiDollar | `src/digidollar/`, `src/consensus/digidollar*.cpp` | Stablecoin |
| Dandelion++ | `src/dandelion.cpp`, `src/stempool.h` | Read doc/DANDELION_INFO.md first |
| Address encoding | `src/base58.cpp`, `src/bech32.cpp` | dgb/dgbt/dgbrt prefixes |
| Test constants | `test/functional/test_framework/blocktools.py` | COINBASE_MATURITY=8 |
| RPC commands | `src/rpc/mining.cpp`, `src/rpc/blockchain.cpp` | getblockreward custom |
| Network params | `src/kernel/chainparams.cpp` | Ports 12024/12025 |

## DIGIBYTE CONSTANTS (CRITICAL)

```python
# ALWAYS use these, NOT Bitcoin defaults
BLOCK_TIME = 15 # seconds (NOT 600)
COINBASE_MATURITY = 8 # blocks (NOT 100)
COINBASE_MATURITY_2 = 100 # For wallet tests
SUBSIDY = 72000 # DGB per block (NOT 50)
MAX_MONEY = 21_000_000_000 # 21 billion DGB

# Fees - DigiByte uses KvB, NOT vB!
MIN_RELAY_TX_FEE = 0.001 # DGB/kB (100x Bitcoin)
DEFAULT_FEE = 0.1 # DGB/kB

# Addresses
REGTEST_BECH32 = 'dgbrt' # NOT 'bcrt'
TESTNET_BECH32 = 'dgbt' # NOT 'tb'
P2P_PORT = 12024 # NOT 8333
```

## MINING ALGORITHMS

| Algo | ID | Version Bits | Activation |
|------|----|--------------|------------|
| Scrypt | 0 | 0x0000 | Genesis |
| SHA256D | 2 | 0x0200 | Block 100 |
| Groestl | 4 | 0x0400 | Block 100 |
| Skein | 6 | 0x0600 | Block 100 |
| Qubit | 8 | 0x0800 | Block 100 |
| Odocrypt | 14 | 0x0E00 | Block 600 |

Block version = `0x20000002 | algo_bits` (with BIP9)

## FORK HEIGHTS (REGTEST)

| Fork | Height | Effect |
|------|--------|--------|
| MultiAlgo | 100 | 5 algos activated |
| MultiShield | 200 | Per-algo difficulty |
| DigiShield | 334 | Real-time difficulty |
| DigiSpeed | 400 | Faster difficulty response |
| Odocrypt | 600 | 6th algorithm |

## ANTI-PATTERNS

| NEVER | Reason |
|-------|--------|
| Use Bitcoin constants (50 BTC, 600s, 100 blocks) | DigiByte has different values |
| Fees in sat/vB | DigiByte uses sat/kB (100x) |
| Hardcode `bcrt1` addresses | Use `dgbrt1` |
| Ignore Dandelion++ in tests | Add `-dandelion=0` to all nodes |
| Mock scrypt in production | Causes PoW validation issues |
| Assume single-algo mining | Multi-algo active after block 100 |

## BUILD & TEST

```bash
# Build
./autogen.sh && ./configure --with-gui=qt5 && make -j$(nproc)

# Run single test
./test/functional/[test].py --loglevel=debug

# Run all tests
./test/functional/test_runner.py

# Test with options
./test/functional/[test].py --descriptors --v2transport
```

## THREE-WAY COMPARISON

When fixing issues, always compare:
1. `./` - Current v8.26 (working copy)
2. `depends/digibyte-v8.22.2/` - Known working DigiByte
3. `depends/bitcoin-v26.2-for-digibyte/` - Bitcoin reference

## CHILD AGENTS.md FILES

- `src/AGENTS.md` - Core source organization
- `src/consensus/AGENTS.md` - Consensus rules, DCA, DigiDollar validation
- `src/crypto/AGENTS.md` - Multi-algorithm hashing
- `test/functional/AGENTS.md` - Test patterns and DigiByte-specific fixes
Loading
Loading