Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,10 @@ Unreleased changes are in the `master` branch.

## [Unreleased]

### Changed

- `voter` field of `/governance/proposals/{tx_hash}/{cert_index}/votes` now documents Bech32 identifiers for all voter roles: constitutional committee voters are returned as CIP-129 hot credentials (`cc_hot1...`) instead of an ambiguous raw hex hash that did not distinguish key hashes from script hashes ([#465](https://github.com/blockfrost/openapi/issues/465))

## [0.1.92] - 2026-08-20

### Added
Expand Down
9 changes: 7 additions & 2 deletions blockfrost-openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8217,7 +8217,12 @@ components:
description: The role of the voter. Can be one of constitutional_committee, drep, spo.
voter:
type: string
description: The actual voter.
description: |
The actual voter. Bech32-encoded identifier of the voting credential:
a CIP-129 DRep ID (`drep1...`) for `drep`, a pool ID (`pool1...`) for `spo`,
or a CIP-129 constitutional committee hot credential (`cc_hot1...`) for
`constitutional_committee`. The CIP-129 header byte encodes whether the
underlying credential is a key hash or a script hash.
vote:
type: string
enum:
Expand All @@ -8240,7 +8245,7 @@ components:
- tx_hash: b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5
cert_index: 3
voter_role: constitutional_committee
voter: 53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4
voter: cc_hot1q0wzkpcxzzfs4mf4yk6yx7d075vqtyx2tnxsr256he6gnwq6yfy5w
vote: abstain
proposal_metadata:
type: object
Expand Down
17 changes: 15 additions & 2 deletions docs/blockfrost-openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8730,7 +8730,20 @@ components:
drep, spo.
voter:
type: string
description: The actual voter.
description: >
The actual voter. Bech32-encoded identifier of the voting
credential:

a CIP-129 DRep ID (`drep1...`) for `drep`, a pool ID (`pool1...`)
for `spo`,

or a CIP-129 constitutional committee hot credential
(`cc_hot1...`) for

`constitutional_committee`. The CIP-129 header byte encodes
whether the

underlying credential is a key hash or a script hash.
vote:
type: string
enum:
Expand All @@ -8753,7 +8766,7 @@ components:
- tx_hash: b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5
cert_index: 3
voter_role: constitutional_committee
voter: 53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4
voter: cc_hot1q0wzkpcxzzfs4mf4yk6yx7d075vqtyx2tnxsr256he6gnwq6yfy5w
vote: abstain
proposal_metadata:
type: object
Expand Down
2 changes: 1 addition & 1 deletion json-schema.json

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions openapi.json
Original file line number Diff line number Diff line change
Expand Up @@ -11157,7 +11157,7 @@
},
"voter": {
"type": "string",
"description": "The actual voter."
"description": "The actual voter. Bech32-encoded identifier of the voting credential:\na CIP-129 DRep ID (`drep1...`) for `drep`, a pool ID (`pool1...`) for `spo`,\nor a CIP-129 constitutional committee hot credential (`cc_hot1...`) for\n`constitutional_committee`. The CIP-129 header byte encodes whether the\nunderlying credential is a key hash or a script hash.\n"
},
"vote": {
"type": "string",
Expand Down Expand Up @@ -11189,7 +11189,7 @@
"tx_hash": "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5",
"cert_index": 3,
"voter_role": "constitutional_committee",
"voter": "53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4",
"voter": "cc_hot1q0wzkpcxzzfs4mf4yk6yx7d075vqtyx2tnxsr256he6gnwq6yfy5w",
"vote": "abstain"
}
]
Expand Down
17 changes: 15 additions & 2 deletions openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8730,7 +8730,20 @@ components:
drep, spo.
voter:
type: string
description: The actual voter.
description: >
The actual voter. Bech32-encoded identifier of the voting
credential:

a CIP-129 DRep ID (`drep1...`) for `drep`, a pool ID (`pool1...`)
for `spo`,

or a CIP-129 constitutional committee hot credential
(`cc_hot1...`) for

`constitutional_committee`. The CIP-129 header byte encodes
whether the

underlying credential is a key hash or a script hash.
vote:
type: string
enum:
Expand All @@ -8753,7 +8766,7 @@ components:
- tx_hash: b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5
cert_index: 3
voter_role: constitutional_committee
voter: 53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4
voter: cc_hot1q0wzkpcxzzfs4mf4yk6yx7d075vqtyx2tnxsr256he6gnwq6yfy5w
vote: abstain
proposal_metadata:
type: object
Expand Down
9 changes: 7 additions & 2 deletions src/generated-types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8308,7 +8308,7 @@ export interface components {
* "tx_hash": "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5",
* "cert_index": 3,
* "voter_role": "constitutional_committee",
* "voter": "53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4",
* "voter": "cc_hot1q0wzkpcxzzfs4mf4yk6yx7d075vqtyx2tnxsr256he6gnwq6yfy5w",
* "vote": "abstain"
* }
* ] */
Expand All @@ -8322,7 +8322,12 @@ export interface components {
* @enum {string}
*/
voter_role: "constitutional_committee" | "drep" | "spo";
/** @description The actual voter. */
/** @description The actual voter. Bech32-encoded identifier of the voting credential:
* a CIP-129 DRep ID (`drep1...`) for `drep`, a pool ID (`pool1...`) for `spo`,
* or a CIP-129 constitutional committee hot credential (`cc_hot1...`) for
* `constitutional_committee`. The CIP-129 header byte encodes whether the
* underlying credential is a key hash or a script hash.
* */
voter: string;
/**
* @description The Vote. Can be one of yes, no, abstain.
Expand Down
9 changes: 7 additions & 2 deletions src/schemas/governance/proposal_votes.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,12 @@ items:
description: The role of the voter. Can be one of constitutional_committee, drep, spo.
voter:
type: string
description: The actual voter.
description: |
The actual voter. Bech32-encoded identifier of the voting credential:
a CIP-129 DRep ID (`drep1...`) for `drep`, a pool ID (`pool1...`) for `spo`,
or a CIP-129 constitutional committee hot credential (`cc_hot1...`) for
`constitutional_committee`. The CIP-129 header byte encodes whether the
underlying credential is a key hash or a script hash.
vote:
type: string
enum: [yes, no, abstain]
Expand All @@ -35,5 +40,5 @@ example:
- tx_hash: "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5"
cert_index: 3
voter_role: "constitutional_committee"
voter: "53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4"
voter: "cc_hot1q0wzkpcxzzfs4mf4yk6yx7d075vqtyx2tnxsr256he6gnwq6yfy5w"
vote: "abstain"
18 changes: 14 additions & 4 deletions test/tests/__snapshots__/get-schema-for-endpoint.test.ts.snap
Original file line number Diff line number Diff line change
Expand Up @@ -15326,7 +15326,7 @@ the off-chain content could not be fetched or validated, \`error\` is populated
"cert_index": 3,
"tx_hash": "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5",
"vote": "abstain",
"voter": "53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4",
"voter": "cc_hot1q0wzkpcxzzfs4mf4yk6yx7d075vqtyx2tnxsr256he6gnwq6yfy5w",
"voter_role": "constitutional_committee",
},
],
Expand All @@ -15350,7 +15350,12 @@ the off-chain content could not be fetched or validated, \`error\` is populated
"type": "string",
},
"voter": {
"description": "The actual voter.",
"description": "The actual voter. Bech32-encoded identifier of the voting credential:
a CIP-129 DRep ID (\`drep1...\`) for \`drep\`, a pool ID (\`pool1...\`) for \`spo\`,
or a CIP-129 constitutional committee hot credential (\`cc_hot1...\`) for
\`constitutional_committee\`. The CIP-129 header byte encodes whether the
underlying credential is a key hash or a script hash.
",
"type": "string",
},
"voter_role": {
Expand Down Expand Up @@ -16782,7 +16787,7 @@ the off-chain content could not be fetched or validated, \`error\` is populated
"cert_index": 3,
"tx_hash": "b302de601defdf11a5261ed31a263804dac4a582a888c998ce24dec5",
"vote": "abstain",
"voter": "53a42debdc7ffd90085ab7fd9800b63e6d1c9ac481ba6eb7b6a844e4",
"voter": "cc_hot1q0wzkpcxzzfs4mf4yk6yx7d075vqtyx2tnxsr256he6gnwq6yfy5w",
"voter_role": "constitutional_committee",
},
],
Expand All @@ -16806,7 +16811,12 @@ the off-chain content could not be fetched or validated, \`error\` is populated
"type": "string",
},
"voter": {
"description": "The actual voter.",
"description": "The actual voter. Bech32-encoded identifier of the voting credential:
a CIP-129 DRep ID (\`drep1...\`) for \`drep\`, a pool ID (\`pool1...\`) for \`spo\`,
or a CIP-129 constitutional committee hot credential (\`cc_hot1...\`) for
\`constitutional_committee\`. The CIP-129 header byte encodes whether the
underlying credential is a key hash or a script hash.
",
"type": "string",
},
"voter_role": {
Expand Down
Loading