Skip to content

refactor(catalog): retire royalty splits from MuzixCatalog now that Labelton owns them #41

@Pattermesh

Description

@Pattermesh

Summary

Once LABELTON is merged and owns the cap-table, MuzixCatalog's royalty-split surface is redundant and has known footguns. Retire it.

Concrete changes

  • Remove _royaltySplits, setRoyaltySplit, royaltySplits(uint256), claimStreamingRevenue, totalStreamingRevenue, claimedBalance, depositRevenue from MuzixCatalog.
  • Fix or remove the ERC-2981 default _setTokenRoyalty(tokenId, address(this), 1000) — funds currently accumulate at the contract with no withdrawal path.
  • Decide whether to retire MuzixCatalog entirely (delete) or repurpose as lightweight artwork / release-art NFT with no royalty surface.

Footguns this closes

  • ERC-2981 default sends 10% to address(this) with no withdrawal.
  • setRoyaltySplit lets a transferred token's new owner redirect cash flows unilaterally.
  • ISRC stored as free-form string with no uniqueness.

Migration

If MuzixCatalog tokens already exist on testnet/mainnet, plan a migration step — for each existing token, register a LABELTON master with the equivalent cap-table.

Depends on

Part of #38. Depends on companion Labelton.sol PR + #C (MUSD wired to Labelton).

cc @abhicris

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions