Files
triangles_v5/src/clientversion.h
T
Krystie f2978ca389 [grade=B] checkpoints: anchor canonical rebase snapshot at 2201018 + retire stale SHA entries
DownloadUtxoSnapshot enforces two compile-time gates (checkpoint pin at the
snapshot tip + file SHA in mapSnapshotHashes), and the local-file autoload
path consults the same SHA map. This release makes new wallets accept the
published rebase snapshot automatically:

- mapCheckpoints: pin 2201018 -> 2a1894007595acaa5d303554253b3c328ebc870f2
  48ffebf83e09a4c8156a78f. Verified live via sami-pc getblockhash RPC and
  byte-reversed against the published snapshot's internal header blockhash.
- mapSnapshotHashes: canonical entry 2201018 ->
  ed3fe84ee2388a7083873462af298bd4ba345ceb84e5ac65e3d2906419c0efab
  (sha256sum -c verified). Retired entries REMOVED, not retained: the
  (height, sha) gate trusts the manifest's advertised height, so any
  retained entry would let a stale/replayed manifest serve an unloadable
  file. 2172037 (fc3b2035) superseded 2026-09-02; 2200899 (5374ea23) was a
  writer/reader-mismatched dump (CDataStream end-of-data on deployed
  binaries), retired 2026-09-06.
- Snapshot load-verified end-to-end on DNS2: 2,201,019 headers + 17,720
  UTXOs + txindex rebuild, node synced to 2201018 with 7 peers.
- Tests: positive+negative CheckHardened(2201018) assertions;
  total_blocks_estimate and nCompiled -> 2201018; new
  best_snapshot_is_canonical_rebase_snapshot locks GetBestSnapshotHeight(),
  the exact SHA pair, rejection of both retired heights, and the cross-map
  invariant (best snapshot height sits on its hardened checkpoint).
- clientversion: 6.2.6.5 -> 6.2.6.6

Judge: codex exec 3 rounds (B/B/B). Final B is for missing
DownloadUtxoSnapshot integration harness only; finding 3 of round 3: 'No
functional trust-anchor defect is evident in the shown diff.'
2026-09-06 14:31:50 -07:00

20 lines
548 B
C

#ifndef CLIENTVERSION_H
#define CLIENTVERSION_H
//
// client versioning
//
// 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 2
#define CLIENT_VERSION_REVISION 6
#define CLIENT_VERSION_BUILD 6
// Converts the parameter X to a string after macro replacement on X has been performed.
// Don't merge these into one macro!
#define STRINGIZE(X) DO_STRINGIZE(X)
#define DO_STRINGIZE(X) #X
#endif // CLIENTVERSION_H