Skip to content

minibf: account endpoints 404 for credentials seen only as proposal return addresses #1325

Description

@slowbackspace

Blockfrost returns 200 [] for account sub-endpoints (registrations, delegations, withdrawals, mirs, …) when the stake credential appears on-chain only as a governance proposal's return address. Dolos returns 404.

db-sync inserts a stake_address row for every proposal reward account, and ryo's accounts_404 check reads that table. Dolos creates no AccountState for such credentials, and the existing would-be-404 fallback (account_appears_in_pool_registrations, added for pool reward accounts and owners in #1140) does not cover proposal return accounts.

Repro on preview (live Blockfrost vs dolos at current main):

GET /accounts/stake_test1uqpk6zxqea2r70fsx45n2cufdd7qu63444t0ygm3ays778sm04k6e/registrations
blockfrost: 200 []        dolos: 404

The credential is the return address of a governance proposal and has no other on-chain activity.

Likely fix: extend the would-be-404 fallback to also scan ProposalState reward accounts — the namespace holds hundreds of rows, same cost profile as the pool fallback.

Found while live-diffing /accounts/{stake_address}/mirs (#1321) against the Blockfrost preview API: 36/37 checks matched; this was the only divergence and it reproduces on endpoints that predate that PR.

🤖 Generated with Claude Code

Effort

Low — easy mapping or reshaping of existing data, or a plain tx-body decode.

The check reuses the established pattern over existing data.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:minibfMini Blockfrost (minibf) APIbugSomething isn't working

    Type

    Fields

    Priority

    None yet

    Effort

    Low

    Workstream

    Dolos BF Coverage

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions