build(release): bump 6.1.8 -> 6.1.9 for staking-selfheal fix
Headline change:f69f087fix(staking): carve out caught-up nodes from IBD gate so chain can self-heal. Closes the v6.1.8 deadlock where IsStakingSafe() refused to stake whenever IBD was true and IBD flipped true after 24h of no blocks. Also includes the secondary commits since v6.1.7: -41e3898+64556dc: CLI flag handling -7a71904(already in v6.1.8): revision bump -8598cfa(PR #26): trusted snapshot publisher rotation -935d1d5+6116cff+c68a8cb: consensus/IBD hardening -540c889: test-linux-unit as blocking CI gate (PR #30) -db46792: keystore + V5 soft-cap test coverage (PR #29) -9a50ab3: script_fuzz + EvalScript stress tests (PR #27) -898292f: Bootstrap:: linkage restoration -e6ae48d+14edbc2+ ...: release/deployment pipeline hardening (PR #32) -3a4f271+2de9a9d: transaction_deserialize_fuzz wiring + docs The CHANGELOG notes v6.1.8's known deadlock and the staking=1/forcestaking=1 escape hatch for any operator still on v6.1.8. Codex verdict: see the underlying B-grade commitsf69f087and3a4f271.
This commit is contained in:
@@ -5,6 +5,51 @@ All notable changes to Triangles (TRI) are documented in this file.
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [6.1.9] - 2026-07-31
|
||||
|
||||
### Fixed
|
||||
- **Staking deadlock on idle networks.** `IsStakingSafe()` refused to
|
||||
stake whenever `IsInitialBlockDownload()` was true, and `IBD` flipped
|
||||
true whenever the chain tip was older than 24h. After 24h of no blocks,
|
||||
every node simultaneously refused to stake and the chain deadlocked.
|
||||
The `staking: true` flag in `getstakinginfo` was misleading — it only
|
||||
reflected a single search in the brief window after a restart. Narrowed
|
||||
the gate to "refuse only when IBD is true AND local height is behind
|
||||
the peer/checkpoint estimate" (`f69f087`). A node at the peer median
|
||||
now clears the gate and keeps staking through idle periods, so the
|
||||
chain self-heals. Genuinely-behind nodes still hold off. Block
|
||||
validation, reorg rules, and checkpoint rules are unchanged. The
|
||||
`-forcestaking` bootstrap escape hatch still works on nodes caught
|
||||
up to the checkpoint.
|
||||
|
||||
### Changed
|
||||
- CLI: `-conf=` (empty value) now falls back to the default config
|
||||
path instead of erroring out (`41e3898`).
|
||||
- CLI: `-conf` / `-datadir` / `-rpcuser` / `-rpcpassword` are honored
|
||||
in the documented order, with clearer error messages on bad input
|
||||
(`64556dc`).
|
||||
- Build: reproducible build + signed release pipeline (PR #26 chain).
|
||||
|
||||
## [6.1.8] - 2026-07-17
|
||||
|
||||
### Changed
|
||||
- Bootstrap: RPC-driven trusted snapshot publisher rotation (PR #26).
|
||||
Operators can rotate the snapshot publisher via RPC instead of
|
||||
hard-coding it in the binary.
|
||||
- Consensus: removed local-finality, fixed `getheaders` fork recovery
|
||||
(`935d1d5`).
|
||||
- Consensus: fail-closed reorg guard when the startup checkpoint
|
||||
pointer is null (`6116cff`).
|
||||
- IBD: allow `getblocks`/`getheaders` on OneShot peers during IBD
|
||||
(`c68a8cb`).
|
||||
- Build: bump revision 7 → 8.
|
||||
|
||||
### ⚠️ Known issue
|
||||
- v6.1.8 introduced a staking deadlock on idle networks via the
|
||||
`IsStakingSafe()` gate. Operators on v6.1.8 should set
|
||||
`staking=1` and `forcestaking=1` in `triangles.conf` and restart
|
||||
to unstick the chain. v6.1.9 fixes the root cause.
|
||||
|
||||
## [6.1.7] - 2026-07-08
|
||||
|
||||
### Changed
|
||||
|
||||
+1
-1
@@ -8,7 +8,7 @@
|
||||
// These need to be macros, as version.cpp's and triangles-qt.rc's voodoo requires it
|
||||
#define CLIENT_VERSION_MAJOR 6
|
||||
#define CLIENT_VERSION_MINOR 1
|
||||
#define CLIENT_VERSION_REVISION 8
|
||||
#define CLIENT_VERSION_REVISION 9
|
||||
#define CLIENT_VERSION_BUILD 0
|
||||
|
||||
// Converts the parameter X to a string after macro replacement on X has been performed.
|
||||
|
||||
Reference in New Issue
Block a user