Skip to content

SPIKE: Protocol 30 (CAP-0087) - #6003

Draft
sisuresh wants to merge 1 commit into
stellar:protocol-nextfrom
sisuresh:p30-cap-0087
Draft

sisuresh wants to merge 1 commit into
stellar:protocol-nextfrom
sisuresh:p30-cap-0087

Conversation

@sisuresh

Copy link
Copy Markdown
Contributor

Changes

  • Bump XDR_COMMIT to stellar-xdr@84cd9fa6c9ebe162e1d9dbbe89be9b6835498456 (Protocol 30 (CAP-0087) stellar-xdr#318, unmerged) and set XDR_FEATURES ?= CAP_0087_ML_DSA.
  • Regenerate: adds ContractCostType 86-94 (ML-DSA decode + verify). Required, not cosmetic — ContractCostTypeView.Value() whitelists cost types exhaustively and would reject them.
  • Riding along from the pinned range, unrelated to CAP-0087: contract-spec name fields widen to SC_SPEC_TYPE_NAME_LIMIT (1024) and ScSpecEventV0.name becomes a bounded string instead of SCSymbol. No in-repo consumer.

Deferred

  • XDR_COMMIT points at an unmerged PR head; repoint it at the merged SHA in the productionizing pass.

Upstream: stellar/stellar-xdr#318 · Downstream: stellar-horizon, stellar-rpc

Bump XDR_COMMIT to stellar-xdr 84cd9fa6 (PR stellar#318, unmerged) and enable the
CAP_0087_ML_DSA feature gate, adding ContractCostTypes 86-94 for ML-DSA
verifying-key/signature decoding and signature verification.

Regeneration is mandatory rather than cosmetic: ContractCostTypeView.Value()
matches an exhaustive whitelist of cost types, so it would reject 86-94 on any
protocol-30 config-setting read. Unrelated upstream drift in the pinned range
widens the contract-spec name fields to SC_SPEC_TYPE_NAME_LIMIT (1024) and
retypes ScSpecEventV0.name from SCSymbol to a bounded string; no in-repo
consumer references either.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

const SC_SPEC_DOC_LIMIT = 1024;

const SC_SPEC_TYPE_NAME_LIMIT = 1024;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know it's not super related to this change but this seems unnecessarily large, no?

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.

2 participants