Skip to content

Releases: bsv-blockchain/teranode

v0.15.2-beta-11

11 Jun 12:28
d07d268

Choose a tag to compare

v0.15.2-beta-11 Pre-release
Pre-release

What's Changed

  • fix(legacy): prevent sync stalls from backpressure-triggered peer rotation and dropped orphan continuation by @oskarszoon in #1067
  • fix(legacy): never announce block-originated transactions to legacy peers by @oskarszoon in #1073
  • fix(legacy): resolve in-block parents at candidate height during legacy subtree validation by @oskarszoon in #1065

Full Changelog: v0.15.2-beta-10...v0.15.2-beta-11

v0.15.2-beta-9

08 Jun 10:52
bf19c99

Choose a tag to compare

v0.15.2-beta-9 Pre-release
Pre-release

What's Changed

  • Add IdleTimeout to default docker.m Aerospike utxostore by @oskarszoon in #1049
  • ci: migrate native-Go + aerospike CI jobs to arm64; bump aerospike 8.0→8.1 by @oskarszoon in #1047
  • ci: cache Go build cache via reusable go-cache action by @oskarszoon in #1048
  • perf(subtreeprocessor): optimize reorg with parallel bulk operations by @freemans13 in #526
  • fix(utxo): drain in-flight batched writes on shutdown by @freemans13 in #928
  • fix: don't filter block messages from low-reputation peers by @freemans13 in #661
  • perf(subtreevalidation): check subtree existence in parallel in CheckBlockSubtrees by @freemans13 in #378
  • Feature/MvP-4632: validator parity + RPC absurd-fee guard by @ctnguyen in #1013

Full Changelog: v0.15.2-beta-8...v0.15.2-beta-9

v0.15.2-beta-10

08 Jun 16:59
2becc73

Choose a tag to compare

v0.15.2-beta-10 Pre-release
Pre-release

What's Changed

  • fix(blockchain): assign block ids idempotently per hash to prevent phantom-id sync wedge by @oskarszoon in #1043
  • test(blockchain/sql): share one Postgres test container instead of one per call by @oskarszoon in #1045
  • fix(blockchain/sql): snapshot-isolate on_main_chain rebuild to prevent startup race by @oskarszoon in #1044
  • fix: replace unsafe currentSubtree.Load().Length() with channel-synced read by @sugh01 in #641
  • ci: bump test job to 32-core/128GB runner to stop intermittent OOM by @oskarszoon in #1052
  • blockassembly: prevent Start hanging on pre-ready gRPC failures by @gokutheengineer in #940
  • blockassembly: make GetTransactionHashes context-aware and prevent hanging GetBlockAssemblyTxs by @gokutheengineer in #939
  • feat(adaptivefetch): subtreeData fetch gate, armed on FSM RUNNING by @freemans13 in #745

Full Changelog: v0.15.2-beta-9...v0.15.2-beta-10

v0.15.2-beta-8

05 Jun 12:37
88efbce

Choose a tag to compare

v0.15.2-beta-8 Pre-release
Pre-release

What's Changed

  • fix(utxo/aerospike): clear locked flag on pagination records when mining by @oskarszoon in #1039
  • perf(pruner): skip already-pruned parent updates using an in-memory cuckoo filter by @freemans13 in #875
  • Add opt-in drain mode for the outpoint batcher (off by default) by @freemans13 in #865
  • fix(blockvalidation): treat transient catchup errors as incomplete, not invalid by @oskarszoon in #1036
  • toggle to allow raw display of miner tag as per WOC by @freemans13 in #441
  • fix(legacy): clear stall deadlines across BlockPriority streams by @oskarszoon in #1030
  • fix(utxo/aerospike): stop caller-side goroutine/connection leak in batchers by @oskarszoon in #1025
  • perf(blockvalidation): prefetch the off-chain block-id set once in checkOldBlockIDs by @freemans13 in #934
  • perf(blockchain): main-chain fast-path for block locator builder by @oskarszoon in #1023
  • fix(legacy): stop flaky legacy-sync — nil-guard Server.Stop + ephemeral 942 port by @oskarszoon in #1034
  • fix(blockassembly): validate batch txid lengths by @gokutheengineer in #919
  • fix(dashboard): peer catchup row-data lookup + FSM transitions single source by @oskarszoon in #1015
  • fix(security): resolve open CodeQL code-scanning alerts by @oskarszoon in #1016
  • test: deterministic fixes for two flaky unit tests by @oskarszoon in #1026
  • fix(blockassembly): make DiskTxMap.bytesWritten access atomic by @liam in #1029
  • fix(kafka): drain the final buffered batch on async producer Stop by @liam in #1027
  • fix(blockassembly): guard subtree worker ErrChan send against shutdown deadlock by @liam in #1028
  • fix(utxopersister): bound allocations on untrusted UTXO count/script length + fuzz by @liam in #1004
  • fix(kafka): stop producer waiting up to 1s per message on busy topics (p99 7s → 22ms) by @freemans13 in #894
  • fix(legacy): remove duplicate peer registration that can wedge sync by @freemans13 in #946
  • feat(batcher): per-batcher fixed-cadence flushing (SetTickInterval) + go-batcher v2.0.3 bump by @freemans13 in #1017
  • fix(model): bound subtree-list allocation on untrusted block parse + fuzz by @liam in #1005

Full Changelog: v0.15.2-beta-7...v0.15.2-beta-8

v0.15.2-beta-7

02 Jun 14:57
16075f1

Choose a tag to compare

v0.15.2-beta-7 Pre-release
Pre-release

What's Changed

  • perf(blockchain/sql): fast-path GetBlockInChainByHeightHash on on_main_chain by @oskarszoon in #1022
  • Fix merkle proof calculation with proper coinbase replacement by @galt-tr in #993
  • fix(legacy): prevent shutdown-race panic in QueueInv (send on closed channel) by @freemans13 in #1009
  • fix(fileformat): make header readers consistent + accept chunked reads + fuzz by @liam in #1006

Full Changelog: v0.15.2-beta-6...v0.15.2-beta-7

v0.15.2-beta-6

02 Jun 09:19
b9c8cc4

Choose a tag to compare

v0.15.2-beta-6 Pre-release
Pre-release

What's Changed

  • perf(utxo): eliminate encode-side allocations in the store Create path by @oskarszoon in #1011
  • fix(blockchain/peer-registry): post-#832 follow-ups by @oskarszoon in #988
  • chore(deps): bump s3 to v1.97.3 + containerd/v2 to v2.2.4 by @oskarszoon in #984
  • refactor(dashboard): migrate to Svelte 5 runes mode by @oskarszoon in #987
  • test(e2e): replace hardcoded time.Sleep with condition-polling in gated tests by @oskarszoon in #1010
  • test(smoke): share one daemon across read-only RPC query tests by @oskarszoon in #1007

Full Changelog: v0.15.2-beta-5...v0.15.2-beta-6

v0.15.2-beta-5

01 Jun 15:06
b22659f

Choose a tag to compare

v0.15.2-beta-5 Pre-release
Pre-release

What's Changed

  • fix(aerospike): stop enabling client metrics by @oskarszoon in #1003
  • fix(test): de-flake blockassembly system tests (FSM/gRPC startup races) by @oskarszoon in #1000
  • test(multinode): un-skip scenario_04 block-assembly isolation by @liam in #995
  • chore(claude): vendor review subagents + fix agent definitions by @oskarszoon in #991
  • ci: shard the e2e gate (sequential + smoketest) into parallel matrices by @oskarszoon in #990
  • chore(utxopersister): clarify footer-read match per #985 review by @liam in #994
  • fix(utxopersister): terminate previous-set read at the 16-byte footer by @liam in #985
  • ci(deps): add dependency-review PR gate by @oskarszoon in #983
  • ci: PR-feedback quick wins — auto-cancel, drop dead job, restore module cache by @oskarszoon in #986
  • refactor(blockchain,p2p): move peer registry from p2p to blockchain by @oskarszoon in #832
  • validator: align finality with sv-node (nLockTime/BIP68/candidate-MTP) + migrate fee/consolidation to BDK [MVP-4632 pt.1] by @ctnguyen in #975
  • fix(utxovalidator): consume fileformat magic at the reader source, not twice in validate by @liam in #979
  • fix(utxopersister): drop double-read of fileformat magic in verifyLastSet by @liam in #971
  • ci: remove catchpoint/workflow-telemetry-action by @oskarszoon in #948
  • test(dashboard): playwright smoke harness + PR check by @oskarszoon in #981

Full Changelog: v0.15.2-beta-4...v0.15.2-beta-5

v0.15.2-beta-4

29 May 07:45
e125d1e

Choose a tag to compare

v0.15.2-beta-4 Pre-release
Pre-release

What's Changed

  • refactor(subtreevalidation): remove redundant orphanage; rely on sequential revalidation by @ordishs in #978
  • chore(aerospike): switch to BSV fork of aerospike-client-go v8 by @icellan in #970
  • docs(model/block): document BlockIDs[0] == GenesisBlockID invariant by @oskarszoon in #974
  • fix(utxopersister): nil-guard CreateUTXOSet against empty ConsolidateBlockRange by @liam in #969
  • test: adversarial double-spend scenarios and two bug fixes by @icellan in #703
  • chore(deps): bump svelte to v5 + kit to 2.61.x for vulnerability fixes by @oskarszoon in #968
  • fix(legacy): wire AddRebroadcastInventory + drop dev listen_mode override by @icellan in #955
  • fix(utxo/aerospike): exclude data-state errors from spend circuit breaker by @icellan in #957
  • perf(blockassembly): pool subtree leaf buffer + DoS-bound the deserializer by @icellan in #959
  • test(multinode): split-per-service chaos harness + scenario_04 (skipped pending teranode fixes) by @liam in #958
  • feat(asset/http): POST /api/v1/utxos bulk lookup + drop redundant tx fetch on GetUTXO by @icellan in #950
  • fix(asset/centrifuge): speak bidirectional Centrifuge protocol by @icellan in #944
  • fix(legacy/netsync): auto-detect v2 txmeta wire format by @icellan in #954
  • feat: add asset service rate limiting, peer authentication and request visibility by @icellan in #643

Full Changelog: v0.15.2-beta-3...v0.15.2-beta-4

v0.15.2-beta-3

27 May 12:45
e269265

Choose a tag to compare

v0.15.2-beta-3 Pre-release
Pre-release

What's Changed

  • fix(security): redact credentials in Settings and aerospike debug logs by @oskarszoon in #927
  • Properly construct coinbase BUMP for legacy blocks with 2+ subtrees by @galt-tr in #952
  • feat(compose): add -allinone=0 split-per-service topology for chaos testing by @liam in #932
  • fix(stores/utxo/aerospike): align frozen UTXO checks with SQL and bitcoin-sv by @ordishs in #949
  • perf(validator): skip BDK script validation for trusted legacy IBD blocks by @freemans13 in #951
  • perf(txmetacache): pointer-backed cache backend + interface dispatch by @icellan in #915
  • fix(subtree_data): stop cancel cascade + segregate client-gone errors by @icellan in #947
  • fix(legacy/netsync): cap orphan tx pool size to prevent memory DoS by @ordishs in #776
  • fix(txscript): allocate fresh slice in opcodeInvert to avoid aliasing by @ordishs in #777
  • feat(p2p): advertise fee policy in node_status message by @icellan in #943
  • deps: moby/buildkit v0.28+ upgrade via testcontainers-go v0.42 migration by @oskarszoon in #935
  • [Add] teranode dashboards by @teracoder in #485
  • feat(uaerospike): expose connection-semaphore multiplier as a setting by @icellan in #933

Full Changelog: v0.15.2-beta-2...v0.15.2-beta-3

v0.15.2-beta-2

26 May 08:39
ba54431

Choose a tag to compare

v0.15.2-beta-2 Pre-release
Pre-release

What's Changed

  • chore(settings): raise aerospike client pool to 128 for docker.m by @oskarszoon in #941
  • fix(legacy/netsync): chunk SetMinedMulti in createUtxos by @oskarszoon in #937

Full Changelog: v0.15.2-beta-1...v0.15.2-beta-2