Bitcoin Core's functional test suite, rewritten on btclib, run against any node that speaks bitcoin's RPC and p2p. tf2 is this project's nickname and its label.
Two objectives, in this order: every Core test that tests a node runs
against btclib-node, and
Core gets a typed, covered suite it can run against bitcoind. A test
passes on bitcoind before its failure on any other node counts as a
finding, filed on that node's own tracker.
It imports btclib and bitcoin-core-rpc. It imports no node: what it needs from one, it gets over a socket -- a process, an RPC connection, a p2p connection.
TF2.md is the ledger of what Core's test/functional/test_framework/
needs and what covers it, one entry per file, each pinned to the
revision it was read at.
Nothing to install yet: this repository carries the organization's apparatus and the ledger (issue btclib-org/btclib#2220, step 2 of 5). The adapter and the test families are later steps of that same issue.
CONTRIBUTING.md has the commands each CI job runs,
verbatim. uv sync creates the environment; uv is the only tool that has
to be installed. REVIEWING.md is what a pull request is
answered against.