The IPC interface is still marked as experimental and breaking changes are acceptable. However they should be intentional. This PR adds a basic check.
We're only testing backwards compatibility against v31.0, not against v30.0 - v30.2. Until we mark the interface as stable, it would be fine to swap v31.0 in this test for a newer version.
The first commit adds the v31 release hashes.
The second commit adds a simple test to requests a block template from the old node.
The test can be expanded as mining.capnp drifts from the v31 tag.
E.g. after #34644 it could demonstrate that submitBlock() is expect to fail on the older note. Similar for the new methods introduced in #34020 and #33922, although tracking new methods isn't very interesting.
I have another PR in mind that changes the default behavior of createNewBlock() which builds on top of the test here.