Dev Diary

October 2026 5 merged · 10 reviews · 4 opened · 6 issue comments

Wed, Oct 7

Mon, Oct 5

  • Went to SF, most day in flight.

Fri, Oct 2

  • pr (open) rust-bitcoin#6974 Reject plus sign in U256 and hex integer strings
  • review (commented) rust-bitcoin#6716 Release tracking PR: `units 0.6.0`
  • review (approved) rust-bitcoin#6967 Automated weekly update to rustc stable (to 1.99.0) on master
  • review (approved) rust-bitcoin#6968 Automated weekly update to rustc stable (to 1.99.0) on 0.32.xxx
  • review (approved) rust-bitcoin#6966 Automated weekly update to rustc stable (to 1.99.0) on 0.32.xx
  • review (commented) rust-bitcoin#6934 Release tracking PR: `internals 0.8.0`
  • issue (commented) rust-bitcoin#1686 pow.rs overflow tests should be gated with #[cfg(debug_assertions)]
  • issue (commented) rust-bitcoin#3775 Rustdocs on units types are a mess
  • issue (commented) rust-bitcoin#1143 Consider hiding error internals
  • issue (commented) rust-bitcoin#708 Should 32 byte `Copy` types be pass by reference or value?
  • issue (commented) rust-bitcoin#5518 Audit stabalising crates and ensure usage of `track_caller`
  • issue (commented) rust-bitcoin#1478 Formatting `Amount` with "satcomma standard"

Thu, Oct 1

September 2026 33 merged · 47 reviews · 37 opened · 1 issues · 12 issue comments

Wed, Sep 30

  • Triaging every units LLM fuzzer/Loupe finding to find any other public interface issues we may still have.

Tue, Sep 29

Mon, Sep 28

  • pr (merged) rust-bitcoin#6953 ci: cache cargo-rbmt binary
  • pr (merged) rust-bitcoin#6952 units: move policy fee rates to `bitcoin::policy`
  • review (approved) rust-bitcoin#6948 build(deps): bump taiki-e/install-action from 2.83.2 to 2.85.4
  • review (approved) rust-bitcoin#6947 build(deps): bump cargo-bins/cargo-binstall from 1.21.0 to 1.21.1
  • review (approved) rust-bitcoin#6938 Automated weekly update to rustc (to nightly-2026-09-26) on master
  • review (commented) rust-bitcoin#6949 Manual nightly rustfmt (2026-09-27)
  • review (approved) rust-bitcoin#6939 Automated weekly update to rustc (to nightly-2026-09-26) on 0.32.xx
  • review (approved) rust-bitcoin#6940 Automated weekly update to rustc (to nightly-2026-09-26) on 0.32.xxx
  • review (approved) rust-miniscript#1053 Automated weekly update to rustc (to nightly-2026-09-26)
  • review (approved) rust-bech32#303 Automated daily update to rustc (to nightly-2026-09-25)
  • issue (commented) rust-bitcoin#6951 Ensure RBMT is caching artifacts
  • Complete focus on getting units 1.0 done

Sat, Sep 26

  • Read chapter 1 of ‘An Introduction to Mathematical Cryptography’ by Hoffstein, Pipher, Silverman
  • Wrapping up units 1.0 api trait decisions for PR.

Fri, Sep 25

  • Creating a trait boundary checker for rust-bitcoin

Thu, Sep 24

  • review (approved) rust-bitcoin#6915 primitives: Fix `Witness` handling of oversized items
  • Reviwing years of units api decisions in Github discussions, to see if we have any failure on intent or problem on our trait bounds
  • Fuzzing units crate

Wed, Sep 23

  • Scoping out the remaining units 1.0 work.
  • Offloaded a bunch of Loupe PRs I had in my local env
  • LLM fuzzing units, some findings to be reviewed.

Tue, Sep 22

  • review (approved) rust-bitcoin#6902 Automated weekly update to rustc (to nightly-2026-09-19) on master
  • review (approved) rust-bech32#303 Automated daily update to rustc (to nightly-2026-09-25)
  • review (approved) rust-miniscript#1051 Automated weekly update to rustc (to nightly-2026-09-19)
  • review (approved) rust-bitcoin#6909 build(deps): bump actions/labeler from 6.2.0 to 7.0.0
  • review (approved) rust-bitcoin#6910 build(deps): bump actions/checkout from 7.0.0 to 7.0.1
  • Reading Computer Networks - Andrew S. Tanenbaum

Mon, Sep 21

Sat, Sep 19

Fri, Sep 18

  • pr (merged) rust-bitcoin#6899 ci: regenerate Cargo-minimal.lock with rbmt
  • pr (merged) corepc#713 bitreq: floor rustls dep at 0.23.45
  • review (commented) rust-bitcoin#6898 Release tracking PR: `consensus-encoding 1.3.0`
  • review (commented) corepc#712 Prepare stack of releases

Thu, Sep 17

Wed, Sep 16

  • review (approved) rust-bech32#264 CI: Set and update weekly the stable toolchain version
  • review (approved) rust-miniscript#1047 Automated weekly update to rustc (to nightly-2026-09-12)
  • review (approved) rust-bech32#303 Automated daily update to rustc (to nightly-2026-09-25)
  • issue (commented) corepc#707 bitreq: floor `rustls` at v0.23.45 to patch RUSTSEC-2026-0285
  • issue (commented) rust-bitcoin#6887 base58: `internals::array_vec::Error` should not be in the public API

Tue, Sep 15

  • pr (merged) rust-bitcoin#6886 units: preserve original err summing `NumOpResult`
  • pr (merged) rust-bitcoin#6885 p2p: use `write_err` in CommandStringDecoderError
  • review (commented) rust-bitcoin#6876 Automated weekly update to rustc (to nightly-2026-09-12) on 0.32.xxx
  • review (commented) rust-bitcoin#6875 Automated weekly update to rustc (to nightly-2026-09-12) on 0.32.xx
  • review (commented) rust-bitcoin#6877 Automated weekly update to rustc (to nightly-2026-09-12) on master
  • review (approved) rust-bitcoin#6879 primitives: Fix Witness::get index overflow
  • Error source was being dropped in CommandStringDecoderError, found a second case while at it.
  • Summing NumOpResult threw away the original error.

Mon, Sep 14

  • review (approved) rust-bitcoin#6881 build(deps): bump cargo-bins/cargo-binstall from 1.20.1 to 1.21.0
  • review (approved) rust-bitcoin#6882 build(deps): bump taiki-e/install-action from 2.82.11 to 2.83.2
  • review (approved) rust-bitcoin#6878 Automated nightly rustfmt (2026-09-13)

Sat, Sep 12

    Fri, Sep 11

    • A zero target should convert to zero work.

    Thu, Sep 10

    Wed, Sep 9

    Tue, Sep 8

      Mon, Sep 7

      • pr (merged) rust-bitcoin#6850 Use stacked attributes for feature conjunctions
      • pr (merged) rust-bitcoin#6849 docs: update policy version gating attribute
      • pr (merged) rust-bitcoin#6848 Manual weekly update to rustc (to nightly-2026-09-05) on 0.32.xx
      • pr (merged) rust-bitcoin#6847 Manual weekly update to rustc (to nightly-2026-09-05) on master
      • pr (merged) rust-bitcoin#6846 Manual weekly update to rustc (to nightly-2026-09-05) on 0.32.xxx
      • pr (merged) rust-bitcoin#6845 ci: install rbmt from crates.io in replay job
      • review (commented) rust-bitcoin#6832 Automated weekly update to rustc (to nightly-2026-09-05) on 0.32.xx
      • review (commented) rust-bitcoin#6833 Automated weekly update to rustc (to nightly-2026-09-05) on master
      • review (commented) rust-bitcoin#6834 Automated weekly update to rustc (to nightly-2026-09-05) on 0.32.xxx
      • issue (commented) rust-bitcoin#6838 The Fuzz (corpus) workflow is failing
      • Crash replay was installing rbmt from git, now from crates.io.
      • Stacked attributes for feature conjunctions, the nested cfg spelling was unreadable.

      Sat, Sep 5

      • pr (merged) rust-bitcoin#6836 bitcoin: move tests reading `tests/data` out of `src`
      • review (approved) rust-miniscript#1047 Automated weekly update to rustc (to nightly-2026-09-12)
      • review (approved) rust-bech32#301 Automated daily update to rustc (to nightly-2026-09-04)
      • review (approved) rust-bitcoin#6820 Automated weekly update to rustc stable (to 1.98.1) on 0.32.xx
      • review (approved) rust-bitcoin#6822 Automated weekly update to rustc stable (to 1.98.1) on 0.32.xxx
      • review (approved) rust-bitcoin#6821 Automated weekly update to rustc stable (to 1.98.1) on master
      • Moves the tests that read tests/data out of src, so published test code stops reading files that are not published. Closes 6509.

      Wed, Sep 2

      • review (commented) corepc#672 WIP: Demonstrate usage of the bitcoin-units compat layer
      • issue (commented) rust-bitcoin#6813 The Fuzz (corpus) workflow is failing

      Tue, Sep 1

      • Deleted a stale fuzz target that no longer matches any code.
      • Tests each TLS backend in CI. Recreated because after the forge migration I no longer own the old branch.
      August 2026 17 merged · 43 reviews · 23 opened · 1 issues · 6 issue comments

      Mon, Aug 31

      • pr (merged) rust-bech32#299 Manual daily update to rustc (to nightly-2026-08-28)
      • pr (merged) rust-bitcoin#6811 ci: add corpus fuzzing crash store
      • review (commented) rust-bech32#298 Automated daily update to rustc (to nightly-2026-08-28)
      • review (approved) .github#14 readme: point secp256k1 repository link at Forgejo
      • Stores fuzz crashes so a failing run can be replayed instead of lost.

      Sat, Aug 29

        Fri, Aug 28

        Thu, Aug 27

        • First real catch from corpus fuzzing, the p2p commands target had diverged between master and 0.32.

        Wed, Aug 26

        • review (approved) rust-bitcoin#6773 build(deps): bump actions/cache from 5.0.5 to 6.1.0
        • review (approved) rust-bitcoin#6776 build(deps): bump actions/checkout from 6.0.2 to 7.0.0
        • review (commented) rust-bitcoin#6762 primitives: Flatten error constructors
        • review (commented) rust-bitcoin#6782 ci: cache cargo install metadata in daily fuzz job
        • review (approved) rust-bitcoin#6775 build(deps): bump cargo-bins/cargo-binstall from 1.20.0 to 1.20.1

        Tue, Aug 25

        • review (approved) rust-bitcoin#6777 build(deps): bump taiki-e/install-action from 2.82.0 to 2.82.4
        • review (approved) rust-bitcoin#6780 base58: Remove `is_empty` from `Base58CkString`
        • review (approved) rust-bitcoin#6781 base58: Use `div_ceil` for reserve length calculation
        • Dependabot had no schedule so bumps landed whenever, now Sunday 16:00.

        Mon, Aug 24

        Sun, Aug 23

          • Fuzz corpus storage in qa-assets
            • Corpus fuzzing now runs in rust-bitcoin CI and writes back to qa-assets.

          Wed, Aug 19

          • pr (merged) rust-bitcoin#6761 Manual bump of dtolnay/rust-toolchain specifying toolchain
          • review (commented) corepc#691 Added integration tests for four untested RPCs (#633)
          • review (changes requested) rust-bitcoin#6751 build(deps): update dtolnay/rust-toolchain requirement to 6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772
          • review (approved) rust-bitcoin#6759 primitives: Add `Arbitrary` for `PushBytes` & `PushBytesBuf`
          • review (commented) rust-bitcoin#6741 units: Add and standardise doc and comment links
          • Pins the toolchain action by version instead of the commit hash dependabot proposed.

          Tue, Aug 18

          Mon, Aug 17

          • Dropped the nightly update cron job, it was opening update PRs nobody handles.

          Fri, Aug 14

          • review (commented) rust-bitcoin#6731 primitives: Add Arbitrary impl for Opcode
          • review (changes requested) rust-bitcoin#6741 units: Add and standardise doc and comment links

          Thu, Aug 13

          • Daily fuzz was reinstalling tooling every run, plus a stale cache key.
          • Renamed the old job to ‘Fuzz (from scratch)’ so it reads apart from the corpus one.

          Wed, Aug 12

          • Fuzz corpus storage in qa-assets
            • The job pulls the saved corpus, fuzzes with it, and pushes new coverage back to qa-assets.

          Tue, Aug 11

          • Renamed 6689 as proposed and regenerated the api files.

          Mon, Aug 10

          • review (approved) rust-miniscript#1017 Automated weekly update to cargo-rbmt (to 0.5.2)
          • review (approved) rust-bech32#294 Automated daily update to rustc (to nightly-2026-08-07)

          Sat, Aug 8

          • review (approved) rust-bitcoin#6698 bitcoin: fix changelog and forward port 0.32.xx and 0.32.xxx entries
          • review (approved) rust-bitcoin#6697 ci: use lockfiles for embedded and cross tests

          Fri, Aug 7

          Thu, Aug 6

          • Follow up to the docs fix, renaming the locktime accessors and query methods for units 1.0.

          Wed, Aug 5

          • Relative locktime docs called the value a height when it is really a count of blocks.

          Tue, Aug 4

          Mon, Aug 3

          • review (approved) rust-bitcoin#6662 build(deps): bump actions/checkout from 6.0.2 to 6.0.3
          • review (approved) rust-miniscript#1012 Automated weekly update to rustc (to nightly-2026-08-08)
          • review (commented) rust-bitcoin#6656 ci: fix check-semver exit code capture and consolidate labellers
          • issue (created) corepc#676 ci: auto-create bitcoin core version support issues from release feed

          Sat, Aug 1

          July 2026 10 merged · 35 reviews · 17 opened · 5 issues · 5 issue comments

          Fri, Jul 31

          • Fuzz corpus storage: tested on my forks, corpus loads and saves each run, induced failures get caught

          Thu, Jul 30

          Wed, Jul 29

          Tue, Jul 28

          • Fuzz corpus storage: rust-bitcoin CI job that fuzzes with the saved corpus

          Mon, Jul 27

          • pr (closed) rust-bitcoin#6627 Manual weekly update to rustc (to nightly-2026-07-17) on master
          • pr (merged) rust-bitcoin#6626 Manual weekly update to rustc (to nightly-2026-07-17) on 0.32.xx
          • review (commented) rust-miniscript#1007 Link ANTLR4 Miniscript grammar
          • review (approved) rust-bitcoin#6624 build(deps): bump taiki-e/install-action from 2.79.3 to 2.79.12
          • review (approved) rust-bitcoin#6615 ci: update cargo-rbmt every month instead of week

          Sun, Jul 26

          • Fixed branch refs (rust-bitcoin#6616)

          Sat, Jul 25

          Wed, Jul 22

          Tue, Jul 21

          Fri, Jul 17

          Thu, Jul 16

          Wed, Jul 15

          Tue, Jul 14

          Mon, Jul 13

          Fri, Jul 10

          Thu, Jul 9

          • issue (commented) rust-bitcoin#6511 Seed fuzz targets with a shared corpus and run them on PR CI

          Tue, Jul 7

          • pr (merged) rust-miniscript#1001 Drop obsolete unused-import workaround
          • review (approved) corepc#644 Run `verify --tests` in CI
          • review (approved) corepc#647 pin memmap2 version above RUSTSEC-2026-0186 fix

          Mon, Jul 6

          • pr (closed) rust-bitcoin#6493 Manual weekly update to rustc (to nightly-2026-07-02) on 0.32.x
          • pr (merged) rust-bitcoin#6492 Manual weekly update to rustc (to nightly-2026-07-02) on master
          • review (approved) corepc#642 bitreq: use `Duration` for `Request::with_timeout`
          • review (approved) rust-bitcoin#6459 Automated weekly update to rustc stable (to 1.96.1)
          • review (approved) rust-miniscript#999 Automated weekly update to rustc (to nightly-2026-07-02)
          • review (approved) rust-bech32#281 Automated daily update to rustc (to nightly-2026-07-02)
          • issue (commented) corepc#654 Migrate this repo to forgejo

          Thu, Jul 2

          • review (approved) corepc#652 Fix duplicate rustsec issue creation

          Wed, Jul 1

          • review (approved) corepc#651 Bump anyhow dep version to 1.0.103 to fix RUSTSEC-2026-0190
          June 2026 6 merged · 21 reviews · 10 opened · 1 issues · 2 issue comments

          Mon, Jun 29

          • review (approved) rust-bech32#280 Automated daily update to rustc (to nightly-2026-06-26)
          • review (approved) rust-miniscript#989 Automated weekly update to rustc (to nightly-2026-06-26)

          Sat, Jun 27

          • review (approved) corepc#648 pr-labeler: remove stale labels

          Fri, Jun 26

          Wed, Jun 24

          • review (approved) corepc#642 bitreq: use `Duration` for `Request::with_timeout`
          • review (approved) corepc#647 pin memmap2 version above RUSTSEC-2026-0186 fix
          • review (approved) rust-bech32#271 Automated daily update to rustc (to nightly-2026-06-19)
          • review (approved) corepc#644 Run `verify --tests` in CI

          Tue, Jun 23

          • review (approved) corepc#640 verify: fix help text

          Mon, Jun 22

          Sat, Jun 20

          • pr (closed) corepc#643 Client 20 06 26
          • review (commented) bitcoin#34683 rpc: support a formal description of our JSON-RPC interface

          Wed, Jun 17

          • pr (merged) corepc#635 Follow-ups for Bitcoin Core v31.0 support

          Mon, Jun 15

          • review (approved) rust-bech32#271 Automated daily update to rustc (to nightly-2026-06-19)

          Sat, Jun 13

            • Addressed reviews on the Core PR (bitcoin#34764)

            Thu, Jun 11

            • review (commented) bitcoin#34683 rpc: support a formal description of our JSON-RPC interface
            • issue (created) corepc#621 Naming schema is inconsistent

            Wed, Jun 10

              • Upgraded Floresta and BDK to rust-bitcoin master to find the incompatibilities

              Tue, Jun 9

                Mon, Jun 8

                • pr (merged) rust-bitcoin#6334 Manual update to rustc nightly-2026-06-12
                • pr (merged) rust-miniscript#984 Manual weekly update to rustc (to nightly-2026-06-14)
                • review (approved) rust-bitcoin#6328 Automated nightly rustfmt (2026-06-07)
                • review (approved) rust-bitcoin#6324 Automated weekly update to cargo-semver-checks (to 0.48.0)
                • review (approved) rust-bech32#270 Automated daily update to rustc (to nightly-2026-06-05)
                • review (commented) bitcoin#34683 rpc: support a formal description of our JSON-RPC interface
                • First rust-miniscript PR

                Fri, Jun 5

                  Thu, Jun 4

                  • review (commented) bitcoin#34683 rpc: support a formal description of our JSON-RPC interface
                  • Addressed reviews on the Core PR (bitcoin#34764)
                  • Optional arguments in the codegen client

                  Wed, Jun 3

                  Tue, Jun 2

                  • review (commented) corepc#618 Update repo and electrsd readme
                  • review (approved) rust-bitcoin#6275 Automated weekly update to rustc stable (to 1.96.0)
                  • review (approved) rust-miniscript#971 Automated weekly update to rustc (to nightly-2026-06-05)
                  • rust-bitcoin 0.31.x CI

                  Mon, Jun 1

                    • Started a codegen async production client for corepc
                    • Addressed reviews on corepc#615
                    May 2026 14 merged · 18 reviews · 14 opened · 1 issues · 4 issue comments

                    Fri, May 29

                    • pr (merged) corepc#615 Finish off support for Bitcoin Core v31.0
                    • issue (commented) corepc#599 Finish off support for Core v31

                    Thu, May 28

                    Wed, May 27

                    • pr (merged) rust-bech32#268 Manual update to rustc to nightly-2026-05-22
                    • review (approved) corepc#607 Add bitreq to pr-labeller job

                    Tue, May 26

                    • review (commented) rust-bitcoin#6244 Fix fuzz cache key to use fuzz target
                    • review (approved) rust-bitcoin#6224 backport: Fix bug in `LeafVerison::Future`'s `Display` output
                    • review (approved) corepc#610 Gate out core tests from v31
                    • Addressed reviews on rust-bitcoin#6212

                    Mon, May 25

                    • pr (merged) corepc#606 tests: add curated list of client test invariants from Bitcoin Core
                    • review (approved) corepc#598 Add initial support for Bitcoin Core v31
                    • Addressed reviews on rust-bitcoin#6212

                    Sat, May 23

                      • Addressed reviews on the Core PR (bitcoin#34764)

                      Fri, May 22

                        • Addressed reviews on the electrsd PR (corepc#570)

                        Thu, May 21

                        • pr (merged) rust-bech32#266 Update to rustc nightly-2026-05-15 with lint fix
                        • review (approved) rust-bitcoin#6218 Remove `act` references
                        • review (changes requested) corepc#598 Add initial support for Bitcoin Core v31
                        • Addressed reviews on rust-bitcoin#6212

                        Wed, May 20

                        Mon, May 18

                        • review (approved) corepc#578 jsonrpc(fix): set host header to URL hostname instead of resolved IP
                        • v31 fixes (corepc#586)
                        • Drafted corepc v31 support

                        Fri, May 15

                        • pr (closed) corepc#592 types: fix getblockstats doc for v21 and later
                        • review (approved) corepc#591 Fix `getnetworkhashps` return type in docs
                        • review (commented) corepc#586 Add support for Bitcoin Core 31.0
                        • Read about software design and architecture
                        • Reorganized the commits of corepc#570
                        • Converting Core tests to corepc tests

                        Thu, May 14

                          • Read Unit Testing Principles, Practices, and Patterns
                          • Converting Core tests to corepc tests, settling what a corepc test should check
                          • Addressed reviews on corepc#570

                          Wed, May 13

                          • pr (merged) corepc#589 ci: enable debug logging on electrsd jobs
                          • review (commented) rust-bech32#264 CI: Set and update weekly the stable toolchain version
                          • review (approved) rust-bech32#262 ci: fix nightly cronjob to set environment variables properly
                          • The production client design depends on the Core test import

                          Tue, May 12

                          Mon, May 11

                            Sat, May 9

                              Fri, May 8

                              • Addressed reviews on the electrsd PR

                              Thu, May 7

                                • Addressed reviews on the electrsd PR (corepc#570)

                                Wed, May 6

                                • review (commented) rust-psbt#120 Add a cargo-fuzz fuzzing harness

                                Tue, May 5

                                • pr (merged) rust-psbt#123 v2: fix global map defect causing input count fragility

                                Mon, May 4

                                • pr (merged) corepc#582 ci: add electrsd to labeler job and rename node label to bitcoind
                                • Addressed corepc reviews
                                • Read the Rust API Guidelines
                                • rust-psbt: narrowed the first batch of prerelease fixes, plus one unrelated bug

                                Sat, May 2

                                  • Structured the codegen repo

                                  Fri, May 1

                                  • pr (merged) corepc#575 contrib: remove obsolete scripts and document lock file updates
                                  • review (approved) corepc#571 Release tracking PR: `electrsd 0.38.1`
                                  • Close reading of rust-bitcoin
                                  • Addressed reviewer suggestions on corepc#574
                                  • Addressed reviews on corepc#570
                                  • Addressed reviews on rust-psbt#116
                                  • Designed v1 of the corepc production client, with an implementation and codegen plan: https://github.com/satsfy/rust-btc-codegen
                                  April 2026 6 merged · 7 reviews · 11 opened · 4 issue comments

                                  Thu, Apr 30

                                  • pr (merged) corepc#574 docs: fix stale corepc-node references
                                  • pr (merged) corepc#573 electrsd: fix bitcoind 23_2 feature version
                                  • Answered a concern on corepc#570
                                  • Built and tested the Core PR changes, pushed (bitcoin#34764)
                                  • rust-psbt prerelease problems: all the small TODOs fixed in 40 commits, to be split into 2 to 5 PRs

                                  Wed, Apr 29

                                  • pr (merged) rust-psbt#116 fix: re-enable v2 to v0 conversion
                                  • review (commented) rust-psbt#33 [WIP] Impl conversion from v2::Psbt to v0::Psbt
                                  • issue (commented) rust-psbt#31 Convert the inner PSBT v2 to a PSBT v0 (lossy)
                                  • Reworked corepc#570 after feedback, looked into flaky CI
                                  • rust-psbt 31: extra test, CI fixes, notified the issue
                                  • Addressed a review on the Core PR (bitcoin#34764)

                                  Tue, Apr 28

                                    • Read about 20% of rust-bitcoin, systematically
                                    • Tested and polished the rust-psbt 31 fix

                                    Mon, Apr 27

                                    Sat, Apr 25

                                      • Picked 11 issues to tackle for rust-bitcoin 1.0

                                      Fri, Apr 24

                                      • pr (merged) corepc#570 electrsd: include in workspace and CI

                                      Wed, Apr 22

                                      • Moved the rust-bech32 nightly update to rbmt and unified the nightly version (rust-bech32#254)
                                      • corepc 552: tested electrsd, cut the change down, CI passing

                                      Tue, Apr 21

                                      • corepc Core test import: widened the test surface, split the changes into PRs
                                      • Fixed CI and trimmed the corepc 552 change
                                      • rust-psbt prerelease problems
                                      • Presented the codegen proposal to a maintainer, approved
                                      • Patched up the codegen repo: https://github.com/satsfy/rust-btc-codegen

                                      Mon, Apr 20

                                        Sat, Apr 18

                                        • review (commented) corepc#558 jsonrpc: Add async support
                                        • Addressed reviews on the rust-bech32 mutation tests

                                        Fri, Apr 17

                                        • pr (merged) rust-bech32#255 test: address all mutation test misses and timeouts
                                        • review (commented) corepc#557 CI: Add `cargo-audit` workflow
                                        • review (approved) corepc#558 jsonrpc: Add async support
                                        • review (approved) corepc#551 Remove rust-version from workspace manifest

                                        Thu, Apr 16

                                          • rust-bech32 mutation tests
                                            • 75 new tests and 1 modified, then cut down
                                            • Verified every mutant exclusion
                                          • Addressed reviews on the rust-bech32 CI migration

                                          Wed, Apr 15

                                          Tue, Apr 14

                                            Mon, Apr 13

                                              Fri, Apr 10

                                                Thu, Apr 9

                                                • review (commented) rust-bitcoin#5975 Extend `bitcoin` re-export script to check against `units` and fix re-exports
                                                • Addressed reviews on the corepc CI migration
                                                • Rebased the Core ELISION removal PR (bitcoin#34764)
                                                • Reviewed rust-bitcoin#5975 to get to know rust-bitcoin

                                                Wed, Apr 8

                                                  • Slow blocks workshop: synced signet, received live slow blocks, inspected why they were slow
                                                  • Set up my own testnet full node
                                                  • corepc production client research
                                                    • Found uses of corepc in real projects
                                                    • Collected the RPC clients of BDK, Alpen, LDK, Floresta, hashi, mempool-radar, peer-observer and the sunset rust-bitcoincore-rpc
                                                    • Listed the features a client really needs
                                                    • Codegen proposal split into its own issue for later
                                                  • Addressed reviews on the corepc CI migration

                                                  Tue, Apr 7

                                                  • pr (merged) corepc#540 ci: migrate GitHub Actions to cargo rbmt
                                                  • corepc CI migration to cargo-rbmt
                                                    • Maintainers receptive to the idea
                                                    • Painful PR, constant CI errors
                                                  • Gathered material for a corepc production client proposal

                                                  Mon, Apr 6

                                                  • review (approved) corepc#539 Test walletdisplayaddress
                                                  • corepc CI migration to cargo-rbmt
                                                    • Fixed the failing tests on my branch, CI passing
                                                    • Cut the change down for review
                                                  • Researched the open problems and tradeoffs of a corepc client
                                                  • Read every open corepc issue and wrote a report

                                                  Sat, Apr 4

                                                    Thu, Apr 2

                                                      Wed, Apr 1

                                                        • Explored corepc to find what it needs most
                                                        March 2026 1 merged · 3 reviews · 2 opened · 1 issue comments

                                                        Wed, Mar 25

                                                          • Fixing the stealth PRs

                                                          Tue, Mar 24

                                                            • Stealth: testnet transactions, deploy to testnet then mainnet

                                                            Mon, Mar 23

                                                              • Ported the stealth backend to Rust

                                                              Fri, Mar 20

                                                                • Fixing the broken test in the ELISION removal PR
                                                                • Read Optech and BitDevs logs

                                                                Thu, Mar 19

                                                                • pr (merged) bitcoin#34867 wallet: document importdescriptors error object fields

                                                                Tue, Mar 17

                                                                  • Core PR: ELISION removal
                                                                  • Reviewed 2 Core PRs

                                                                  Mon, Mar 16

                                                                  • review (commented) bitcoin#34799 rpc: Run type check on decodepsbt result
                                                                  • Core PR: ELISION removal

                                                                  Sun, Mar 15

                                                                    • Started the stealth design doc

                                                                    Thu, Mar 12

                                                                    • review (commented) bitcoin#34799 rpc: Run type check on decodepsbt result

                                                                    Wed, Mar 11

                                                                    • review (commented) bitcoin#34799 rpc: Run type check on decodepsbt result

                                                                    Tue, Mar 10

                                                                      Fri, Mar 6

                                                                      • pr (merged) bitcoin#34764 rpc: replace ELISION references with explicit result fields
                                                                      • issue (commented) bitcoin#29912 RFC: Formal description of the RPC API
                                                                      • Opened the Core PR and the issue

                                                                      Thu, Mar 5

                                                                        • Reviewed the Core PR and fixed CI
                                                                        • Read about coinswap, payjoin and rust-bitcoin

                                                                        Wed, Mar 4

                                                                          • Polished the Core PR, wrote the issue and PR comments
                                                                          February 2026 4 merged · 1 issue comments

                                                                          Sat, Feb 21

                                                                            • Working on the Core help text fix PR

                                                                            Fri, Feb 20

                                                                              Thu, Feb 19

                                                                                • Regenerated specs v24 to v30, the earlier ones were not valid OpenRPC
                                                                                • Cut the corepc draft down to v30 plus a small v29

                                                                                Tue, Feb 17

                                                                                  • Backported the patch down to v24

                                                                                  Mon, Feb 16

                                                                                    • Fixed the Core patch so the output is valid OpenRPC

                                                                                    Sun, Feb 15

                                                                                      Sat, Feb 14

                                                                                        • Core help text references other RPCs (“this is getrawtransaction vin”) instead of the actual object. Fixing that in Core helps docs and spec generation

                                                                                        Thu, Feb 12

                                                                                          • Ported the codegen to Python

                                                                                          Wed, Feb 11

                                                                                            • Built Core v24 to v30 and generated a spec for each
                                                                                            • Compare tool works per version
                                                                                            • The value is three things together: codegen, spec generation from Core, and the compare tool

                                                                                            Tue, Feb 10

                                                                                              • Reduce false positives and negatives in the compare tool
                                                                                              • Start shaping it into a corepc PR

                                                                                              Mon, Feb 9

                                                                                                • getnewaddress was missing because Core was built without the wallet
                                                                                                • What exists now
                                                                                                  • Core patch that emits a full OpenRPC spec from the shared RPC help type
                                                                                                  • Codegen from the spec into generated.rs
                                                                                                  • flatten_mods.py flattens a version’s modules into one file
                                                                                                  • compare_types.py reports unmatched structs, ignored ones and field differences
                                                                                                  • New Core versions only need a new spec

                                                                                                Fri, Feb 6

                                                                                                  • Every generated struct mapped to a corepc type
                                                                                                  • getnewaddress missing from the generated spec

                                                                                                  Thu, Feb 5

                                                                                                    • Core help text sometimes says “same as the output of decoderawtransaction” instead of describing the object, the generator needs to resolve those
                                                                                                    • Flattening script misses some structs
                                                                                                    • 107 matched pairs

                                                                                                    Tue, Feb 3

                                                                                                      • Codegen plan
                                                                                                        1. Flatten one version’s types into a single file
                                                                                                        2. Generate the same version from Core’s OpenRPC
                                                                                                        3. Diff the two
                                                                                                        4. Ship the diff as a tool, possibly in CI
                                                                                                      • First comparison
                                                                                                        • 201 corepc structs vs 169 generated, only 53 pair up by name
                                                                                                        • corepc renames fields (estimated_feerate becomes estimated_fee_rate)
                                                                                                        • Naming is inconsistent. GetRpcInfo has ActiveDirectory instead of GetRpcInfoActiveCommands
                                                                                                        • GetRawAddrManEntry: mapped_as u32 vs i64, port i16 vs i64

                                                                                                      Mon, Feb 2

                                                                                                        • Codegen
                                                                                                          • The hard part is corepc layout, not codegen. Each version only redefines what changed
                                                                                                        January 2026 4 merged · 9 opened · 1 issues · 1 issue comments

                                                                                                        Fri, Jan 30

                                                                                                          • Addressed all review comments

                                                                                                          Thu, Jan 29

                                                                                                            • Codegen
                                                                                                              • Researched Rust codegen tools
                                                                                                              • Emitted OpenRPC for the client and JSON Schema for the types
                                                                                                              • Generated a client from the OpenRPC document
                                                                                                              • Output looks close to corepc, types included

                                                                                                            Tue, Jan 27

                                                                                                            • pr (merged) corepc#485 Add `getblock` verbosity 2/3 support for v29 onward
                                                                                                            • getblock verbosity levels. Took a few design decisions
                                                                                                            • All 6 PRs approved, 5 with changes requested
                                                                                                            • Read Mastering Bitcoin

                                                                                                            Mon, Jan 26

                                                                                                              • Maintainer reviewed all 6 PRs, one change requested on each
                                                                                                                • Fixed each PR keeping history clean
                                                                                                                • Fixing getblock too, as noted in the issue
                                                                                                              • getblock changes since v17
                                                                                                                • v19 to v20: verbosity 0 field renamed from data to hex
                                                                                                                • v21 to v22: previousblockhash and nextblockhash optional, fee added to verbosity 2 transactions
                                                                                                                • v22 to v23: verbosity 3 added, with prevouts
                                                                                                                • v23 to v24: desc added to scriptPubKey
                                                                                                                • v27 to v28: anchor script type
                                                                                                                • v28 to v29: target field added
                                                                                                                • Fixing v29 and v30 only
                                                                                                              • Schema generator works on v30

                                                                                                              Fri, Jan 23

                                                                                                              • pr (merged) corepc#480 [client] Add chain tip query method to `getdeploymentinfo` RPC
                                                                                                              • pr (merged) corepc#479 [client] Fix: require arguments for v30 `getdescriptoractivity` RPC
                                                                                                              • pr (merged) corepc#478 Implement `GetRawMempoolSequence` return type for `getrawmempool` RPC
                                                                                                              • pr (merged) corepc#477 [types] Add `completed` field to `ScanBlocksStart` return type
                                                                                                              • pr (merged) corepc#476 [client] Validate `conf_target` argument value range in `estimaterawfee` RPC
                                                                                                              • pr (merged) corepc#475 [types] Add missing return fields for `gettxoutsetinfo` RPC
                                                                                                              • issue (created) corepc#474 Type discrepancies between corepc and v30 blockchain module.
                                                                                                              • Automatic type generation
                                                                                                                • Merged 3 branches of the schema generator into one Core branch
                                                                                                                • Built and ran it

                                                                                                              Thu, Jan 22

                                                                                                                • Prepare the blockchain fix PRs for Vinteum review
                                                                                                                  • All 6 CIs passing
                                                                                                                • 30.1 and 30.2 released, no breaking RPC changes

                                                                                                                Wed, Jan 21

                                                                                                                  • Research automatic type generation
                                                                                                                  • Plan
                                                                                                                    • Take the existing schema generator, check it on v30
                                                                                                                    • Hook it up to a codegen tool
                                                                                                                    • Bridge the output to corepc naming and types
                                                                                                                    • Bring an actionable PR, not an idea

                                                                                                                  Tue, Jan 20

                                                                                                                    • 5 PRs ready locally, next is Vinteum review then corepc
                                                                                                                    • Possible fix: network__get_network_info__modelled integration test fails locally
                                                                                                                    • Possible refactor: types like GetRawMempoolVerbose are redefined unchanged across versions, removing them cuts hundreds of lines
                                                                                                                    • New task: research automatic RPC type generation

                                                                                                                    Fri, Jan 16

                                                                                                                      • Continue the blockchain RPC review

                                                                                                                      Thu, Jan 15

                                                                                                                        • Review every v30 blockchain RPC
                                                                                                                          • Scope v30 only, note older mismatches
                                                                                                                          • Checklist: bitcoin-cli help vs implementation, release notes, argument names, required vs optional, verbosity, return model
                                                                                                                          • Docker image per Core version to settle release note doubts
                                                                                                                          • Correct: dumptxoutset, getbestblockhash, getblockchaininfo, getblockcount, getblockfilter, getblockfrompeer, getblockhash, getblockstats, getchainstates, getchaintips, getchaintxstats, getdifficulty, getmempoolancestors, getmempooldescendants, getmempoolentry, getmempoolinfo, gettxoutproof, gettxspendingprevout, importmempool, preciousblock, pruneblockchain, savemempool, verifychain, verifytxoutproof, waitforblock, waitforblockheight, waitfornewblock
                                                                                                                          • getblockheader verbose=0 false alarm, a conversion layer handles it
                                                                                                                          • gettxout correct
                                                                                                                          • getblock: wrong for verbosity 0, missing 2 and 3
                                                                                                                          • getdeploymentinfo: blockhash is optional (defaults to tip), API had no way to omit it
                                                                                                                          • getdescriptoractivity: arguments required in v30
                                                                                                                          • getrawmempool: 3 return types, not 2. Added GetRawMempoolSequence (v21+)
                                                                                                                          • gettxoutsetinfo: missing fields since v22 (muhash and others). Fix v30 and open an issue for older versions
                                                                                                                          • scanblocks: start action should return completed
                                                                                                                          • estimaterawfee: conf_target must be 1 to 1008

                                                                                                                        Wed, Jan 14

                                                                                                                        • pr (merged) corepc#456 Add hidden RPCs `syncwithvalidationinterfacequeue`, `mockscheduler` and `reconsiderblock`

                                                                                                                        Tue, Jan 13

                                                                                                                        • pr (closed) corepc#455 Add hidden RPC `syncwithvalidationinterfacequeue`
                                                                                                                        • issue (commented) corepc#333 Implement hidden (test-only) RPC calls
                                                                                                                        • PoC scope
                                                                                                                          • Optional RPC arguments are a good longer term goal
                                                                                                                          • Tests are a fine PoC target
                                                                                                                          • Floresta needs corepc types
                                                                                                                          • Only the last 3 Core versions need changes, older ones are not really supported
                                                                                                                        • Floresta type needs
                                                                                                                          • Done: getblockchaininfo, getblockcount, getbestblockhash, getblockhash, getblockheader, getblock, getrawtransaction, gettxout, getpeerinfo
                                                                                                                          • Open: getnetworkinfo, generatetoaddress, getmempoolentry, importdescriptors, createwallet, loadwallet, scantxoutset, utxoupdatepsbt, getindexinfo, getblockfrompeer
                                                                                                                          • getblock has 4 verbosity levels with a different type each, the one Floresta uses is not implemented

                                                                                                                        Mon, Jan 12

                                                                                                                          • Recap of candidates
                                                                                                                            • Hex-only string type. Invasive, could break users
                                                                                                                            • Wrong version comment in types/src/v30/mining/mod.rs
                                                                                                                            • settxfee deprecation. corepc does not emit deprecation warnings, dropped
                                                                                                                            • Missing optional arguments. Too large and API breaking for the PoC, longer term goal
                                                                                                                            • getdescriptoractivity requires blockhashes and scanobjects in v30. On hold, might be a duplicate
                                                                                                                            • UNTESTED methods in v30: loadtxoutset, migratewallet, walletdisplayaddress. Reference: https://github.com/rust-bitcoin/corepc/pull/347
                                                                                                                          • Hidden RPCs in Core but not in corepc, tracked in https://github.com/rust-bitcoin/corepc/issues/333
                                                                                                                            • echo, echojson, setmocktime
                                                                                                                            • mockscheduler, reconsiderblock, syncwithvalidationinterfacequeue (picked these)

                                                                                                                          Sat, Jan 10

                                                                                                                            • Find more type improvements, collect them in one branch, pick the best for a PR
                                                                                                                              • Wrong version comment in types/src/v30/mining/mod.rs, says v29
                                                                                                                              • settxfee is deprecated in v30 and removed in v31, no deprecation warning
                                                                                                                              • v30 added a version argument to createrawtransaction, createpsbt, send, sendall and walletcreatefundedpsbt, corepc lacks it
                                                                                                                              • Optional arguments are missing across most RPCs. Maintainer says optional args are not really tested
                                                                                                                              • Read open issues and old PRs for missing type requests
                                                                                                                            • Set up dev environment and run corepc tests

                                                                                                                            Sat, Jan 3

                                                                                                                              • Find RPCs targeting v30 missing from corepc
                                                                                                                              • Look for loosely defined types instead
                                                                                                                                • MempoolAcceptanceFees.effective_feerate is optional in corepc, required in Core
                                                                                                                                • MempoolAcceptanceFees.effective_includes is a plain string, Core only accepts hex
                                                                                                                                • GetMiningInfo.bits is a plain string, Core returns a hex string
                                                                                                                                • Candidate: a hex-only string type
                                                                                                                              December 2025

                                                                                                                              Tue, Dec 23