Skip to content

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

Closed
sisuresh wants to merge 7 commits into
stellar:protocol-nextfrom
sisuresh:p30-cap-0087-ml-dsa
Closed

sisuresh wants to merge 7 commits into
stellar:protocol-nextfrom
sisuresh:p30-cap-0087-ml-dsa

Conversation

@sisuresh

@sisuresh sisuresh commented Oct 6, 2026

Copy link
Copy Markdown
Contributor

Changes

  • Repin host window: -prev -> rs-soroban-env a721944b (core's real p29 pin, fixes a stale/diverged cb32250d), -curr -> f5a9fb79 (CAP-0087, also carries CAP-84). Add cap_0087_ml_dsa to the shared stellar-xdr features.
  • Repin go-stellar-sdk to go-stellar-sdk#6003's head.
  • Regenerate P30 upgrade fixtures with ContractCostType 86-94 (core's #1737 values, same as stellar-horizon#243's unlimited-config-v30.xdr) — core rejects a v30 cost-params upgrade missing them.
  • CI: P29 leg -> core master's published package; P30 leg -> build core #5455 from source (no -vnext package carries the CAP-87 pin yet).

Stacked on #1050 (CAP-0084) — shows its commits until that merges.

Upstream: go-stellar-sdk#6003, rs-soroban-env f5a9fb79, stellar-core#5455.

Supersedes #1026 (stale, predates the P29 compat work; that branch name was already taken by the old PR, hence -ml-dsa suffix here).

go-stellar-sdk replaced to sisuresh/go @ 50ebbb65; -prev now 28.0.1,
-curr git-pinned to rs-soroban-env#1700 head with next; stellar-xdr
git-pinned with cap_0084_muxed_contract.
Removed from protocols/rpc in the pinned go-stellar-sdk (#5995).
-prev now tracks core's protocol-29 stand-in (rs-soroban-env cb32250d,
no crates.io release exists for it); -curr moves off the rs-soroban-env
fork PR to its merged commit 169890d5 (protocol 30 by default, no
`next` feature needed). stellar-xdr repinned to a9c9750e to match
curr's own pin. go-stellar-sdk fork pin bumped to the PR #6015 head
(still unmerged upstream).
Drops the oldest P27 leg per the one-stanza-per-protocol convention.
No -vnext core artifact exists yet for CAP-0084, so the P30 leg's core
image is left unset. Upgrade fixtures copied from P28 unchanged since
CAP-0084 doesn't touch ConfigSettings.
The host window is now 29/30, so the P28 leg becomes P29 (with p29 upgrade
fixtures copied from p28, as p30's were). Both legs use stellar-core
73f2bdd1's published artifacts. Host blocks declare their versions so
check-dependencies.bash can find them.
stellar-core 73f2bdd1's packages are only in the unstable component.
Repin the host window to carry CAP-0087 (ML-DSA signature verification):
-prev -> rs-soroban-env a721944b (core's actual p29 pin, fixing a stale
cb32250d pin that had diverged from it), -curr -> f5a9fb79 (CAP-0087,
also carries CAP-84's muxed contract addresses). Add cap_0087_ml_dsa to
the shared stellar-xdr feature set.

Repin go-stellar-sdk to go-stellar-sdk#6003's head (XDR_COMMIT ee040cd6,
both CAP-84 and CAP-87 features). Regenerate the P30 upgrade fixtures
with ContractCostType 86-94 (core's calibrated #1737 values, same as
stellar-horizon#243's unlimited-config-v30.xdr) since core now rejects
a v30 cost-params upgrade without them. Point CI's P29 leg at core
master's published package and P30 at core#5455 built from source (no
-vnext package exists with the CAP-87 pin yet).
@tamirms

tamirms commented Oct 16, 2026

Copy link
Copy Markdown
Contributor

Closing in favor of #1050, which merged into protocol-next with all three Protocol 30 CAPs. Its -curr host, rs-soroban-env 8abed902, already contains this PR's CAP-0087 pin (f5a9fb79), its P30 upgrade fixtures carry the ML-DSA cost types 86–94, and it pins the merged stellar/go-stellar-sdk#6015 instead of the fork.

@tamirms tamirms closed this Oct 16, 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.

2 participants