Commit 2bc081e
committed
dgb: M3 external-daemon RPC transport (coin-layer source)
Port the real boost::beast + jsonrpccxx HTTP JSON-RPC client to an
external digibyted, mirroring src/impl/btc/coin/rpc.{hpp,cpp}. This is
the external-daemon FALLBACK path V36 mandates persist alongside the
embedded daemon.
- rpc.hpp: NodeRPC promoted from Path-A stub to real client surface
(connect/reconnect/getwork/submit_block[_hex]/check + RPC methods).
- rpc.cpp: ~440L transport mirror of btc, with DGB conformance:
* getblocktemplate sends {"rules":["segwit"],"algo":"scrypt"} --
Scrypt is the mining algo (separate GBT param), NOT a BIP9 rule;
fixes the incorrect Path-A stub note rules=["scrypt"].
* check(): chain-identity probe via DigiByte genesis hash
(mainnet/testnet by IS_TESTNET) + daemon version floor
[confirm-vs-oracle on exact floor] + required-softfork gate.
- softfork_check.hpp: 1:1 helper normalising the three getblockchaininfo
softfork encodings (array-of-objects / array-of-strings / bip9 object).
CMake/OBJECT-lib registration + construction-site ctor swap deferred to
the post-#145 base (the surface #145 restructures); this commit is
additive coin-layer source, build-verified standalone (TU compile
EXIT=0).1 parent d5879c9 commit 2bc081e
3 files changed
Lines changed: 573 additions & 38 deletions
0 commit comments