Design and implement $BORO treasury claim distributor #11

Merged
backmeupplz merged 1 commit from bdt-kaneo-12-boro-distributor into main 2026-05-25 19:53:51 +00:00
backmeupplz commented 2026-05-25 19:44:08 +00:00 (Migrated from github.com)

Summary

  • add an on-chain BoroMerkleDistributor as the recommended mainnet $BORO treasury claim path
  • add Base mainnet deployment script with chain id 8453 guard and env requirements
  • document the Merkle allocation handoff from signed Solana holder bindings to Base recipient claims
  • ignore local .env secret files while keeping .env.example tracked

Design

The PR chooses an on-chain Merkle distributor over a centralized backend treasury wallet for mainnet $BORO. The Merkle root is immutable, claims are keyed to msg.sender, double claims are blocked on-chain, and owner withdrawal is allowed only after the claim deadline for unclaimed tokens.

Validation

  • forge fmt --check
  • forge test
  • bun run check
  • bun run test
  • bun run build
  • git diff --check
  • git check-ignore .env .env.production confirms secret env files are ignored; .env.example remains tracked/not ignored

Manual QA: not required for this contract/docs-only change. Review should focus on the Solidity distributor design, Merkle leaf convention, Base mainnet deployment envs, and funding/claim handoff in docs/boro-merkle-distributor.md.

Kaneo: BDT-KANEO-12

## Summary - add an on-chain `BoroMerkleDistributor` as the recommended mainnet $BORO treasury claim path - add Base mainnet deployment script with chain id 8453 guard and env requirements - document the Merkle allocation handoff from signed Solana holder bindings to Base recipient claims - ignore local `.env` secret files while keeping `.env.example` tracked ## Design The PR chooses an on-chain Merkle distributor over a centralized backend treasury wallet for mainnet $BORO. The Merkle root is immutable, claims are keyed to `msg.sender`, double claims are blocked on-chain, and owner withdrawal is allowed only after the claim deadline for unclaimed tokens. ## Validation - `forge fmt --check` - `forge test` - `bun run check` - `bun run test` - `bun run build` - `git diff --check` - `git check-ignore .env .env.production` confirms secret env files are ignored; `.env.example` remains tracked/not ignored Manual QA: not required for this contract/docs-only change. Review should focus on the Solidity distributor design, Merkle leaf convention, Base mainnet deployment envs, and funding/claim handoff in `docs/boro-merkle-distributor.md`. Kaneo: BDT-KANEO-12
Sign in to join this conversation.
No description provided.