Page MenuHomePhabricator

[cmake] Add a build target for the proof-manager tool
Changes PlannedPublic

Authored by Fabien on Sep 30 2025, 12:59.

Details

Reviewers
None
Group Reviewers
Restricted Project
Summary

This makes it easier to run the build and the tests. It's gated behind a flag so the build doesn't need Rust by default.

Test Plan
cmake -GNinja .. -DBUILD_PROOF_MANAGER_CLI=ON
ninja
ninja proof-manager-cli-clippy
ninja check-proof-manager-cli

./contrib/teamcity/build-configurations.py proof-manager-cli

Event Timeline

Fabien requested review of this revision.Sep 30 2025, 12:59
Fabien planned changes to this revision.Sep 30 2025, 13:21

Tail of the build log:

  File "/work/test/functional/setup_scripts/../test_framework/test_framework.py", line 152, in main
    self._run_test_internal()
  File "/work/test/functional/setup_scripts/setup_framework.py", line 57, in _run_test_internal
    next(setup_steps)
  File "/work/test/functional/setup_scripts/chronik-client_lokad_id.py", line 100, in run_test
    assert_equal(ws1.recv(), ws_msg(tx0.hash, pb.TX_ADDED_TO_MEMPOOL))
                                    ^^^^^^^^
AttributeError: 'CTransaction' object has no attribute 'hash'
2025-09-30T13:21:09.945000Z TestFramework (INFO): Stopping nodes
2025-09-30T13:21:10.049000Z TestFramework (WARNING): Not cleaning up dir /work/abc-ci-builds/chronik-client-integration-tests/test/tmp/test_runner_₿₵_🏃_20250930_132108_47940/setup_scripts/chronik-client_lokad_id_0
2025-09-30T13:21:10.049000Z TestFramework (ERROR): Test failed. Test logging available at /work/abc-ci-builds/chronik-client-integration-tests/test/tmp/test_runner_₿₵_🏃_20250930_132108_47940/setup_scripts/chronik-client_lokad_id_0/test_framework.log
2025-09-30T13:21:10.049000Z TestFramework (ERROR): 
2025-09-30T13:21:10.050000Z TestFramework (ERROR): Hint: Call /work/test/functional/combine_logs.py '/work/abc-ci-builds/chronik-client-integration-tests/test/tmp/test_runner_₿₵_🏃_20250930_132108_47940/setup_scripts/chronik-client_lokad_id_0' to consolidate all logs
2025-09-30T13:21:10.050000Z TestFramework (ERROR): 
2025-09-30T13:21:10.050000Z TestFramework (ERROR): If this failure happened unexpectedly or intermittently, please file a bug and provide a link or upload of the combined log.
2025-09-30T13:21:10.050000Z TestFramework (ERROR): https://github.com/Bitcoin-ABC/bitcoin-abc/issues
2025-09-30T13:21:10.050000Z TestFramework (ERROR): 
Running Unit Tests for Test Framework Modules
setup_scripts/chronik-client_lokad_id.py started
setup_scripts/chronik-client_lokad_id.py failed, Duration: 1 s

stdout:

stderr:


TEST                                     | STATUS    | DURATION

setup_scripts/chronik-client_lokad_id.py | ✖ Failed  | 1 s

ALL                                      | ✖ Failed  | 1 s (accumulated) 
Runtime: 1 s

Test runner for chronik-client_lokad_id completed with code 1
----------------------|---------|----------|---------|---------|------------------------------------
File                  | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s                  
----------------------|---------|----------|---------|---------|------------------------------------
All files             |   25.27 |     9.67 |   22.44 |   25.18 |                                    
 chronik-client       |     100 |      100 |     100 |     100 |                                    
  index.ts            |     100 |      100 |     100 |     100 |                                    
 chronik-client/proto |   19.38 |     7.28 |   13.96 |   19.55 |                                    
  chronik.ts          |   19.38 |     7.28 |   13.96 |   19.55 | ...3,6779-6782,6788-6830,6866-6875 
 chronik-client/src   |   50.63 |    36.72 |   47.09 |   49.83 |                                    
  ChronikClient.ts    |   41.53 |    34.37 |   42.85 |   41.82 | ...2,1494,1504,1529,1541,1552-1636 
  failoverProxy.ts    |   79.46 |    61.29 |   66.66 |   78.89 | ...282-285,288,301,308,312,316,325 
  hex.ts              |   89.47 |       50 |      75 |   87.87 | 58,66-68                           
  validation.ts       |   33.33 |     6.25 |      20 |      25 | 14-49,62-63,70-71,81-96            
----------------------|---------|----------|---------|---------|------------------------------------

##teamcity[blockOpened name='Code Coverage Summary']
##teamcity[buildStatisticValue key='CodeCoverageAbsBCovered' value='843']
##teamcity[buildStatisticValue key='CodeCoverageAbsBTotal' value='3335']
##teamcity[buildStatisticValue key='CodeCoverageAbsRCovered' value='211']
##teamcity[buildStatisticValue key='CodeCoverageAbsRTotal' value='2181']
##teamcity[buildStatisticValue key='CodeCoverageAbsMCovered' value='136']
##teamcity[buildStatisticValue key='CodeCoverageAbsMTotal' value='606']
##teamcity[buildStatisticValue key='CodeCoverageAbsLCovered' value='830']
##teamcity[buildStatisticValue key='CodeCoverageAbsLTotal' value='3296']
##teamcity[blockClosed name='Code Coverage Summary']
Build chronik-client-integration-tests failed with exit code 1

Failed tests logs:

====== Bitcoin ABC functional tests: chronik_plugin_groups.py ======

------- Stdout: -------
2025-09-30T13:26:14.872000Z TestFramework (INFO): Initializing test directory /work/abc-ci-builds/build-chronik-plugins/test/tmp/test_runner_₿₵_🏃_20250930_132427_46558/chronik_plugin_groups_122
2025-09-30T13:26:16.161000Z TestFramework (ERROR): Unexpected exception caught during testing
Traceback (most recent call last):
  File "/work/test/functional/test_framework/test_framework.py", line 152, in main
    self._run_test_internal()
  File "/work/test/functional/test_framework/test_framework.py", line 142, in _run_test_internal
    self.run_test()
  File "/work/test/functional/chronik_plugin_groups.py", line 266, in run_test
    last_txid = tx3.hash
                ^^^^^^^^
AttributeError: 'CTransaction' object has no attribute 'hash'
2025-09-30T13:26:16.212000Z TestFramework (INFO): Stopping nodes
2025-09-30T13:26:16.313000Z TestFramework (WARNING): Not cleaning up dir /work/abc-ci-builds/build-chronik-plugins/test/tmp/test_runner_₿₵_🏃_20250930_132427_46558/chronik_plugin_groups_122
2025-09-30T13:26:16.313000Z TestFramework (ERROR): Test failed. Test logging available at /work/abc-ci-builds/build-chronik-plugins/test/tmp/test_runner_₿₵_🏃_20250930_132427_46558/chronik_plugin_groups_122/test_framework.log
2025-09-30T13:26:16.313000Z TestFramework (ERROR): 
2025-09-30T13:26:16.313000Z TestFramework (ERROR): Hint: Call /work/test/functional/combine_logs.py '/work/abc-ci-builds/build-chronik-plugins/test/tmp/test_runner_₿₵_🏃_20250930_132427_46558/chronik_plugin_groups_122' to consolidate all logs
2025-09-30T13:26:16.313000Z TestFramework (ERROR): 
2025-09-30T13:26:16.313000Z TestFramework (ERROR): If this failure happened unexpectedly or intermittently, please file a bug and provide a link or upload of the combined log.
2025-09-30T13:26:16.313000Z TestFramework (ERROR): https://github.com/Bitcoin-ABC/bitcoin-abc/issues
2025-09-30T13:26:16.313000Z TestFramework (ERROR):
====== Bitcoin ABC functional tests: chronik_plugins_setup.py ======

------- Stdout: -------
2025-09-30T13:24:35.304000Z TestFramework (INFO): Initializing test directory /work/abc-ci-builds/build-chronik-plugins/test/tmp/test_runner_₿₵_🏃_20250930_132427_46558/chronik_plugins_setup_13
2025-09-30T13:24:46.771000Z TestFramework (ERROR): Unexpected exception caught during testing
Traceback (most recent call last):
  File "/work/test/functional/test_framework/test_framework.py", line 152, in main
    self._run_test_internal()
  File "/work/test/functional/test_framework/test_framework.py", line 142, in _run_test_internal
    self.run_test()
  File "/work/test/functional/chronik_plugins_setup.py", line 239, in run_test
    f"for their LOKAD IDs, the earliest is in transaction {coinbase_tx.hash} "
                                                           ^^^^^^^^^^^^^^^^
AttributeError: 'CTransaction' object has no attribute 'hash'
2025-09-30T13:24:46.822000Z TestFramework (INFO): Stopping nodes
2025-09-30T13:24:46.822000Z TestFramework (WARNING): Not cleaning up dir /work/abc-ci-builds/build-chronik-plugins/test/tmp/test_runner_₿₵_🏃_20250930_132427_46558/chronik_plugins_setup_13
2025-09-30T13:24:46.822000Z TestFramework (ERROR): Test failed. Test logging available at /work/abc-ci-builds/build-chronik-plugins/test/tmp/test_runner_₿₵_🏃_20250930_132427_46558/chronik_plugins_setup_13/test_framework.log
2025-09-30T13:24:46.822000Z TestFramework (ERROR): 
2025-09-30T13:24:46.822000Z TestFramework (ERROR): Hint: Call /work/test/functional/combine_logs.py '/work/abc-ci-builds/build-chronik-plugins/test/tmp/test_runner_₿₵_🏃_20250930_132427_46558/chronik_plugins_setup_13' to consolidate all logs
2025-09-30T13:24:46.823000Z TestFramework (ERROR): 
2025-09-30T13:24:46.823000Z TestFramework (ERROR): If this failure happened unexpectedly or intermittently, please file a bug and provide a link or upload of the combined log.
2025-09-30T13:24:46.823000Z TestFramework (ERROR): https://github.com/Bitcoin-ABC/bitcoin-abc/issues
2025-09-30T13:24:46.823000Z TestFramework (ERROR):
====== Bitcoin ABC functional tests: chronik_ws_avalanche.py ======

------- Stdout: -------
2025-09-30T13:25:03.691000Z TestFramework (INFO): Initializing test directory /work/abc-ci-builds/build-chronik-plugins/test/tmp/test_runner_₿₵_🏃_20250930_132427_46558/chronik_ws_avalanche_22
2025-09-30T13:25:17.160000Z TestFramework (ERROR): Unexpected exception caught during testing
Traceback (most recent call last):
  File "/work/test/functional/test_framework/test_framework.py", line 152, in main
    self._run_test_internal()
  File "/work/test/functional/test_framework/test_framework.py", line 142, in _run_test_internal
    self.run_test()
  File "/work/test/functional/chronik_ws_avalanche.py", line 184, in run_test
    txid0 = txs[0].hash
            ^^^^^^^^^^^
AttributeError: 'CTransaction' object has no attribute 'hash'
2025-09-30T13:25:17.211000Z TestFramework (INFO): Stopping nodes
2025-09-30T13:25:17.312000Z TestFramework (WARNING): Not cleaning up dir /work/abc-ci-builds/build-chronik-plugins/test/tmp/test_runner_₿₵_🏃_20250930_132427_46558/chronik_ws_avalanche_22
2025-09-30T13:25:17.312000Z TestFramework (ERROR): Test failed. Test logging available at /work/abc-ci-builds/build-chronik-plugins/test/tmp/test_runner_₿₵_🏃_20250930_132427_46558/chronik_ws_avalanche_22/test_framework.log
2025-09-30T13:25:17.312000Z TestFramework (ERROR): 
2025-09-30T13:25:17.312000Z TestFramework (ERROR): Hint: Call /work/test/functional/combine_logs.py '/work/abc-ci-builds/build-chronik-plugins/test/tmp/test_runner_₿₵_🏃_20250930_132427_46558/chronik_ws_avalanche_22' to consolidate all logs
2025-09-30T13:25:17.312000Z TestFramework (ERROR): 
2025-09-30T13:25:17.313000Z TestFramework (ERROR): If this failure happened unexpectedly or intermittently, please file a bug and provide a link or upload of the combined log.
2025-09-30T13:25:17.313000Z TestFramework (ERROR): https://github.com/Bitcoin-ABC/bitcoin-abc/issues
2025-09-30T13:25:17.313000Z TestFramework (ERROR):

Each failure log is accessible here:
Bitcoin ABC functional tests: chronik_plugin_groups.py
Bitcoin ABC functional tests: chronik_plugins_setup.py
Bitcoin ABC functional tests: chronik_ws_avalanche.py