Skip to content

Rewrite README as contract usage guide#21

Merged
charlescrain merged 2 commits into
mainfrom
charlescrain/contract-docs
May 4, 2026
Merged

Rewrite README as contract usage guide#21
charlescrain merged 2 commits into
mainfrom
charlescrain/contract-docs

Conversation

@charlescrain
Copy link
Copy Markdown

Summary

Replaces the brief, staking-led README with a structured contract usage guide so a new dev (or auditor) can land here and quickly figure out what each contract is for, what it pairs with, and what's deprecated.

The new README is organized into four top-level sections:

  • MarketplaceSuperRareBazaar (with the SuperRareMarketplace / SuperRareAuctionHouse delegate-split explained), RareBatchListingMarketplace, RareBatchAuctionHouse, BatchOffer, and RareMinter.
  • Token ContractsLazySovereignNFT, SovereignBatchMint, LazySovereignBatchMint, factories, royalty extensions, and a comparison subsection clarifying that SovereignBatchMint emits EIP-2309 (so external indexers see the batch immediately) while LazySovereignBatchMint emits only a custom event (visible only to indexers that watch our contracts specifically).
  • Infra ContractsMarketplaceSettings (incl. why V1/V2/V3 all exist), ApprovedTokenRegistry, Payments (DoS-resistant pull-payment fallback), MarketConfig / MarketUtils.
  • Deprecated — staking, superseded token contracts, superseded factories, never-deployed (RareCollectionMarket), and the registries that are still wired into active contracts but no longer functionally consulted (royalty registry replaced by the royalty engine, space operator registry zeroed out, etc.).

Also includes a quick-reference table (use case → contract) and a TOC. Every claim was cross-checked against contract source via per-contract verification passes; corrections were applied where the initial draft had wrong function signatures (prepareMint parameter order, batchMint semantics) or stale claims (e.g., convertOfferToAuction is deprecated; the marketplace contracts only see MarketplaceSettingsV3, which itself chains backward).

Test plan

  • Render the README on GitHub and confirm TOC anchors resolve
  • Spot-check 2–3 internal cross-links (e.g., LazySovereignBatchMint flow → batch contracts) to confirm anchors aren't broken
  • Verify deprecated section accurately reflects current functional state (any contract listed there is in fact not driving live behavior)

🤖 Generated with Claude Code

charlescrain and others added 2 commits April 30, 2026 12:47
Replaces the brief staking-first README with a structured usage guide
organized around four top-level sections: Marketplace, Token Contracts,
Infra Contracts, and Deprecated. Adds a quick-reference table and TOC,
documents what each contract is for, how the Bazaar delegate-splits
across SuperRareMarketplace / SuperRareAuctionHouse, the BatchOffer
flow, the SovereignBatchMint vs LazySovereignBatchMint distinction
(EIP-2309 visibility), and the deprecated-but-wired contracts whose
addresses remain as init params on active contracts.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
… claim

Audit revealed the README's "wired but inert" framing was wrong for
staking and space operators — the active payout/minting paths still
call into them. The deprecation is at the data layer (zeroed staking
amounts, empty space-operator registry), not at the call-graph layer.
Rewrote those entries to list the specific functions that still fire
and explain why they're no-ops.

Also dropped the per-contract primary-sale-fee claim on
MarketplaceSettings — V3's `getERC721ContractPrimarySaleFeePercentage`
ignores the address argument and always returns the protocol-wide
default. Per-contract overrides were a V1 feature that was removed.

Tightened the LazySovereignBatchMint comparison table cell on
third-party marketplace listability per reviewer feedback.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@charlescrain charlescrain merged commit f715b8a into main May 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant