BitDevs Wiki

Source

Transcript

Kernel Laundry List (Bitcoin Core Dev Tech, May 2026)

Bitcoin Core Dev Tech 2026 (notes via Bitcoin Transcripts)May 7, 2026

Added to the wiki June 17, 2026 at 06:14 PM UTC · full text archived June 17, 2026 at 06:14 PM UTC

A walk through roughly ten kernel-library tasks at varying stages of completion, spread across unrelated domains. The Bitcoin Core "kernel" is the extracted, reusable consensus-validation library, and this list covers the rough edges of making its API safe and ergonomic.

Themes included removing strings and translations from the kernel (annotating user-surfaceable strings rather than translating in-kernel), returning proper fatal error codes instead of strings and ensuring errors bubble up the call stack — with a debate between a clang-tidy plugin to enforce this versus using exceptions (one view being that Core, not being real-time, is a prime candidate for exceptions). Other items: bare-metal compatibility, a CheckedBlock type to prevent a class of bugs, abstract block-file reader/writer classes to run a node fully in memory (useful for fuzzing), splitting the bidirectional chainman/chainstate relationship (a step toward making AssumeUTXO a kernel client), making cs_LastBlockFile non-recursive (a step toward parallel block writes that would notably speed up SwiftSync), and removing the mempool from the kernel library. Several branches need review or new owners.

Appears in