Skip to content
This repository was archived by the owner on Oct 10, 2026. It is now read-only.

About

No description, website, or topics provided.

Resources

Stars

3 stars

Watchers

0 watching

Forks

 
 

Repository files navigation

Mempool BIP-110 — Start9 Wrapper

Retired. BIP-110 was a temporary soft fork, and the period this project was built to visualise has passed. It is no longer maintained and has been removed from the Start9 and Umbrel app stores. Installed copies will receive no further updates. For a block explorer, use the official Mempool app, or Mempool Pruned on a pruned node.

A StartOS wrapper for Mempool BIP-110, a fork of the Mempool block explorer (v3.2.1) that adds real-time visualization of BIP-110 miner signaling and transaction rule violations.

This is not a wrapper for upstream Mempool. It packages the BIP-110 fork, which contains custom frontend and backend changes that are not present in the original Mempool project. It can be installed alongside the standard Mempool package on the same StartOS server.

Supports both StartOS 0.3.5.1 and 0.4.0. Both packages are built from this one repo and the same Dockerfile/submodule — see Building.

🎯 Why does this exist?

BIP-110 (Reduced Data Temporary Softfork) is a proposed temporary soft fork that would limit methods of embedding arbitrary data into Bitcoin transactions — targeting inscriptions and other data-heavy payloads that burden node operators, while preserving all known monetary use cases. It uses BIP9-style miner signaling (version bit 4, 55% activation threshold) for a one-year deployment.

This explorer fork lets you see BIP-110 in action before it activates: which miners are signaling, which transactions would become invalid, and how much block weight the violations consume.

✨ What the fork adds

🟢 Miner Signaling (Green)

Blocks from miners signaling BIP-110 support (version bit 4) are highlighted with a green glow on all cube faces in the blockchain view, a "BIP-110 ✓" badge on the block detail page, and a pulsing "None ✓" badge when the block contains zero violations.

🟠 Rule Violations (Orange)

Transactions that would be invalid under BIP-110 are highlighted with pulsing neon orange in the block overview graph, warning badges in the transaction list, and a radioactive icon on the blockchain cube view. Hovering over badges shows which specific rules are violated.

Combined view

When a signaling block also contains violations, both effects combine: green border with orange interior.

BIP-110 rules detected

# Rule Threshold
1 Large scriptPubKey — Output scripts exceeding 34 bytes (unless OP_RETURN ≤ 83 bytes) 34 / 83 bytes
2 Large PUSHDATA / witness — Data pushes or witness elements exceeding 256 bytes 256 bytes
3 Undefined witness version — Spending undefined witness or Tapleaf versions (not v0, v1, or P2A) —
4 Taproot annex — Witness stacks containing a Taproot annex —
5 Large control block — Taproot control blocks exceeding 257 bytes 257 bytes
6 OP_SUCCESS* — Tapscripts including OP_SUCCESS* opcodes —
7 OP_IF / OP_NOTIF — Tapscripts executing conditional flow opcodes —

All standard Mempool explorer functionality (mempool visualization, fee estimation, address/transaction lookup, Lightning tab, etc.) is fully preserved.

📦 Build dependencies

Cloning

git clone https://github.com/paulscode/mempool-bip110-startos.git
cd mempool-bip110-startos
git submodule update --init --recursive

The mempool/ submodule tracks the master branch of the Mempool BIP-110 fork and is pinned to a specific commit for reproducible builds.

For cross-architecture builds (ARM64), also run:

docker run --privileged --rm tonistiigi/binfmt --install arm64,riscv64,arm

Building

This repo builds two packages from one source tree, both from the same Dockerfile/submodule:

  • StartOS 0.3.5.1 (Embassy SDK) — manifest.yaml + scripts/embassy.js, packed with start-sdk.
  • StartOS 0.4.0 (start-sdk TS) — startos/, packed with start-cli.

Each produces a single universal .s9pk containing x86_64 + aarch64.

# StartOS 0.3.5.1
make                  # universal -> mempool-rdts.s9pk
make x86 | make arm   # single arch (faster)

# StartOS 0.4.0  (every output is named with "040")
make 040              # universal  -> mempool-rdts_040.s9pk
make pack-040-x86     # single arch -> mempool-rdts_040_x86_64.s9pk
make install-040-x86  # build x86_64 + install to your 0.4.0 server

# Both, for an official release
make release          # -> builds/<version>/{mempool-rdts-0351.s9pk, mempool-rdts-040.s9pk} + SHA256SUMS

The 0.4.0 build requires Node.js/npm (to compile startos/ via npm run build) and start-cli; the first build runs npm ci automatically.

Installing (on StartOS)

scp the .s9pk to your Start9 server:

scp mempool-rdts.s9pk root@<LAN ID>:/tmp

Then install:

start-cli auth login
start-cli package install /tmp/mempool-bip110.s9pk

Requirements

  • A fully synced, unpruned Bitcoin Core (or Bitcoin Knots) node with txindex=1
  • Optional: LND or Core Lightning for the Lightning tab

🔗 Related Links

📄 License

AGPL-3.0 — See LICENSE for details.

🙏 Credits

About

No description, website, or topics provided.

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages