From cd4e29cd0aa1d81feb2b74f5a116da2eff873b3c Mon Sep 17 00:00:00 2001 From: Siddharth Suresh Date: Wed, 24 Jun 2026 23:18:51 -0700 Subject: [PATCH 1/7] =?UTF-8?q?SPIKE:=20Protocol=2028=20(CAP-0084)=20?= =?UTF-8?q?=E2=80=94=20muxed=20contract=20addresses?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Re-pin CAP-0084 spike deps to the latest fork branch heads and fix the renamed XDR feature flag: - Rust stellar-xdr -> sisuresh/rs-stellar-xdr@7b46a60d (rs-stellar-xdr#549); feature cap_0084 -> cap_0084_muxed_contract (upstream rename). - -curr host/simulation -> sisuresh/rs-soroban-env@8cf4f5e1 (rs-soroban-env#1696); host-curr enables cap_0084_muxed_contract (next alone no longer pulls it in, else the SCAddress match is non-exhaustive). - Go go-stellar-sdk replace -> sisuresh/go@318bde14 (go-stellar-sdk#5960). integration-p28 core image still on the CAP-0083 vnext build; re-pin to the e32fa423-prefixed -vnext once the upstream stellar-core PR (stellar/stellar-core#5332) Jenkins build publishes it. --- .github/workflows/stellar-rpc.yml | 6 ++++ .golangci.yml | 5 +++ Cargo.lock | 57 ++++++++++++++++++------------- Cargo.toml | 24 +++++++++---- go.mod | 8 ++++- go.sum | 4 +-- 6 files changed, 70 insertions(+), 34 deletions(-) diff --git a/.github/workflows/stellar-rpc.yml b/.github/workflows/stellar-rpc.yml index 8083ce160..b269a2fe7 100644 --- a/.github/workflows/stellar-rpc.yml +++ b/.github/workflows/stellar-rpc.yml @@ -104,6 +104,12 @@ jobs: # Pinned to 3367 (3589a696b), which includes stellar-core#5329 — the # fix for the QueryServer.cpp:124 contiguous-snapshot assertion that # aborted captive-core catchup on builds 3313..3366. + # + # SPIKE (CAP-0084) DEFERRED: this is still the CAP-0083 vnext image; it + # exercises RPC against a P28 core but NOT the CAP-0084 muxed-contract SAC + # host behavior. Re-pin to the `e32fa423…`-prefixed `-vnext` build + # (stellar/stellar-core#5332) once Jenkins publishes it — match the plain + # `~vnext` variant, not `~buildtests`. No such build exists yet. core_deb_version: '27.0.1-3367.3589a696b.jammy~vnext' core_docker_img: 'stellar/unsafe-stellar-core:27.0.1-3367.3589a696b.jammy-vnext' diff --git a/.golangci.yml b/.golangci.yml index d5155295d..a5f204b03 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -39,6 +39,11 @@ linters: funlen: lines: 100 statements: 50 + gomoddirectives: + # SPIKE: CAP-0084 Go XDR pin (go-stellar-sdk#... unmerged). Remove this and + # the replace directive together once the upstream SDK PR is released. + replace-allow-list: + - github.com/stellar/go-stellar-sdk misspell: locale: US testifylint: diff --git a/Cargo.lock b/Cargo.lock index 7c82ea64b..ec35c23bf 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -649,12 +649,6 @@ dependencies = [ "allocator-api2", ] -[[package]] -name = "hashbrown" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" - [[package]] name = "hex" version = "0.4.3" @@ -727,7 +721,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" dependencies = [ "equivalent", - "hashbrown 0.16.0", + "hashbrown 0.15.5", "serde", "serde_core", ] @@ -914,9 +908,9 @@ dependencies = [ "serde_json", "sha2", "soroban-env-host 27.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "soroban-env-host 27.0.0 (git+https://github.com/stellar/rs-soroban-env?rev=883fd56374fc619afaa4c4c7489563555b7173f2)", + "soroban-env-host 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa)", "soroban-simulation 27.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "soroban-simulation 27.0.0 (git+https://github.com/stellar/rs-soroban-env?rev=883fd56374fc619afaa4c4c7489563555b7173f2)", + "soroban-simulation 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa)", ] [[package]] @@ -1215,7 +1209,7 @@ dependencies = [ [[package]] name = "soroban-builtin-sdk-macros" version = "27.0.0" -source = "git+https://github.com/stellar/rs-soroban-env?rev=883fd56374fc619afaa4c4c7489563555b7173f2#883fd56374fc619afaa4c4c7489563555b7173f2" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa#8cf4f5e1580b86d65529e6ed4f78b734908c62fa" dependencies = [ "itertools", "proc-macro2", @@ -1237,24 +1231,24 @@ dependencies = [ "soroban-env-macros 27.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "soroban-wasmi 0.31.1-soroban.20.0.1 (registry+https://github.com/rust-lang/crates.io-index)", "static_assertions", - "stellar-xdr", + "stellar-xdr 27.0.0", "wasmparser", ] [[package]] name = "soroban-env-common" version = "27.0.0" -source = "git+https://github.com/stellar/rs-soroban-env?rev=883fd56374fc619afaa4c4c7489563555b7173f2#883fd56374fc619afaa4c4c7489563555b7173f2" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa#8cf4f5e1580b86d65529e6ed4f78b734908c62fa" dependencies = [ "arbitrary", "crate-git-revision 0.0.9", "ethnum", "num-derive", "num-traits", - "soroban-env-macros 27.0.0 (git+https://github.com/stellar/rs-soroban-env?rev=883fd56374fc619afaa4c4c7489563555b7173f2)", + "soroban-env-macros 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa)", "soroban-wasmi 0.31.1-soroban.20.0.1 (git+https://github.com/stellar/wasmi?rev=0ed3f3dee30dc41ebe21972399e0a73a41944aa0)", "static_assertions", - "stellar-xdr", + "stellar-xdr 28.0.0", "wasmparser", ] @@ -1298,7 +1292,7 @@ dependencies = [ [[package]] name = "soroban-env-host" version = "27.0.0" -source = "git+https://github.com/stellar/rs-soroban-env?rev=883fd56374fc619afaa4c4c7489563555b7173f2#883fd56374fc619afaa4c4c7489563555b7173f2" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa#8cf4f5e1580b86d65529e6ed4f78b734908c62fa" dependencies = [ "ark-bls12-381", "ark-bn254", @@ -1323,8 +1317,8 @@ dependencies = [ "sec1", "sha2", "sha3", - "soroban-builtin-sdk-macros 27.0.0 (git+https://github.com/stellar/rs-soroban-env?rev=883fd56374fc619afaa4c4c7489563555b7173f2)", - "soroban-env-common 27.0.0 (git+https://github.com/stellar/rs-soroban-env?rev=883fd56374fc619afaa4c4c7489563555b7173f2)", + "soroban-builtin-sdk-macros 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa)", + "soroban-env-common 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa)", "soroban-wasmi 0.31.1-soroban.20.0.1 (git+https://github.com/stellar/wasmi?rev=0ed3f3dee30dc41ebe21972399e0a73a41944aa0)", "static_assertions", "stellar-strkey", @@ -1342,21 +1336,21 @@ dependencies = [ "quote", "serde", "serde_json", - "stellar-xdr", + "stellar-xdr 27.0.0", "syn", ] [[package]] name = "soroban-env-macros" version = "27.0.0" -source = "git+https://github.com/stellar/rs-soroban-env?rev=883fd56374fc619afaa4c4c7489563555b7173f2#883fd56374fc619afaa4c4c7489563555b7173f2" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa#8cf4f5e1580b86d65529e6ed4f78b734908c62fa" dependencies = [ "itertools", "proc-macro2", "quote", "serde", "serde_json", - "stellar-xdr", + "stellar-xdr 28.0.0", "syn", ] @@ -1376,11 +1370,11 @@ dependencies = [ [[package]] name = "soroban-simulation" version = "27.0.0" -source = "git+https://github.com/stellar/rs-soroban-env?rev=883fd56374fc619afaa4c4c7489563555b7173f2#883fd56374fc619afaa4c4c7489563555b7173f2" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa#8cf4f5e1580b86d65529e6ed4f78b734908c62fa" dependencies = [ "anyhow", "rand", - "soroban-env-host 27.0.0 (git+https://github.com/stellar/rs-soroban-env?rev=883fd56374fc619afaa4c4c7489563555b7173f2)", + "soroban-env-host 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa)", "static_assertions", "thiserror", ] @@ -1450,11 +1444,26 @@ checksum = "05ff843326969bdf1ef673dcdba94c08f4a3c8f1e58d6e6ef39b1bd4f749179a" dependencies = [ "arbitrary", "base64", - "cfg_eval", "crate-git-revision 0.0.6", "escape-bytes", "ethnum", "hex", + "sha2", + "stellar-strkey", +] + +[[package]] +name = "stellar-xdr" +version = "28.0.0" +source = "git+https://github.com/sisuresh/rs-stellar-xdr?rev=7b46a60d914c1e5befd6a2d2c50d2fdf7e5eb1f0#7b46a60d914c1e5befd6a2d2c50d2fdf7e5eb1f0" +dependencies = [ + "arbitrary", + "base64", + "cfg_eval", + "crate-git-revision 0.0.9", + "escape-bytes", + "ethnum", + "hex", "serde", "serde_with", "sha2", @@ -1741,7 +1750,7 @@ dependencies = [ "rand", "serde_json", "sha2", - "stellar-xdr", + "stellar-xdr 28.0.0", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index c57082fd7..41bf035e9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -24,9 +24,12 @@ version = "=27.0.0" # Bump the rev as rs-soroban-env evolves on its protocol-next track. [workspace.dependencies.soroban-env-host-curr] package = "soroban-env-host" -git = "https://github.com/stellar/rs-soroban-env" -rev = "883fd56374fc619afaa4c4c7489563555b7173f2" -features = ["next"] +git = "https://github.com/sisuresh/rs-soroban-env" +rev = "8cf4f5e1580b86d65529e6ed4f78b734908c62fa" +# `next` alone no longer pulls in CAP-0084; without cap_0084_muxed_contract the +# host's SCAddress match is non-exhaustive against the new MUXED_CONTRACT arm +# (cap_0084_muxed_contract transitively enables `next`). +features = ["cap_0084_muxed_contract"] [workspace.dependencies.soroban-simulation-prev] package = "soroban-simulation" @@ -34,16 +37,23 @@ version = "=27.0.0" [workspace.dependencies.soroban-simulation-curr] package = "soroban-simulation" -git = "https://github.com/stellar/rs-soroban-env" -rev = "883fd56374fc619afaa4c4c7489563555b7173f2" +git = "https://github.com/sisuresh/rs-soroban-env" +rev = "8cf4f5e1580b86d65529e6ed4f78b734908c62fa" features = ["unstable-next-api"] [workspace.dependencies.stellar-xdr] -version = "=27.0.0" +# SPIKE: rs-stellar-xdr#549 (CAP-0084) — fork branch sisuresh/rs-stellar-xdr@p28-cap-0084. +# MUST match the git source+rev that rs-soroban-env#1696 uses, so cargo unifies +# the preflight's stellar-xdr with the host's into one package. +# Productionize -> stellar/rs-stellar-xdr merged SHA (or crates.io =27.x) once #549 lands. +git = "https://github.com/sisuresh/rs-stellar-xdr" +rev = "7b46a60d914c1e5befd6a2d2c50d2fdf7e5eb1f0" # `type_enum` provides the `Type`/`TypeVariant` reflection enums used by # xdr2json. It was enabled by default in stellar-xdr v26 but is opt-in in v27. # `cap_0083` gates the Protocol 28 EmptyTxSet StellarValueType variant. -features = ["serde", "type_enum", "cap_0083"] +# `cap_0084_muxed_contract` gates the Protocol 28 muxed contract addresses +# (SC_ADDRESS_TYPE_MUXED_CONTRACT / struct MuxedContract / SCAddress arm). +features = ["serde", "type_enum", "cap_0083", "cap_0084_muxed_contract"] [workspace.dependencies.rand] version = "0.8.5" diff --git a/go.mod b/go.mod index d7022535d..53f06c170 100644 --- a/go.mod +++ b/go.mod @@ -17,7 +17,7 @@ require ( github.com/sirupsen/logrus v1.9.3 github.com/spf13/cobra v1.7.0 github.com/spf13/pflag v1.0.5 - github.com/stellar/go-stellar-sdk v0.6.1-0.20260616165505-26fec7c0e891 + github.com/stellar/go-stellar-sdk v0.6.1-0.20260625060941-069643df4897 github.com/stretchr/testify v1.11.1 ) @@ -148,3 +148,9 @@ require ( gopkg.in/tylerb/graceful.v1 v1.2.15 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) + +// SPIKE (CAP-0084): the go-stellar-sdk CAP-0084 regen is not yet released, so +// pin to the fork branch sisuresh/go@p28-cap-0084 (go-stellar-sdk#5960). Remove +// this replace (and the .golangci.yml gomoddirectives allow-list) once the +// upstream SDK PR merges and the pseudo-version resolves via the module proxy. +replace github.com/stellar/go-stellar-sdk => github.com/sisuresh/go v0.0.0-20260627053858-318bde14b520 diff --git a/go.sum b/go.sum index eef6c4427..81ad56a3f 100644 --- a/go.sum +++ b/go.sum @@ -415,6 +415,8 @@ github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8= github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I= github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= +github.com/sisuresh/go v0.0.0-20260627053858-318bde14b520 h1:Dvv5T93Qfj1VBmxqdvWf92xFv8BFg0TFFl4gMSR7QPI= +github.com/sisuresh/go v0.0.0-20260627053858-318bde14b520/go.mod h1:IkcqcrE9UQi7n/1y+MxKB+7qzdjG1T2kGOD7Ss8dqjw= github.com/sourcegraph/conc v0.3.0 h1:OQTbbt6P72L20UqAkXXuLOj79LfEanQ+YQFNpLA9ySo= github.com/sourcegraph/conc v0.3.0/go.mod h1:Sdozi7LEKbFPqYX2/J+iBAM6HpqSLTASQIKqDmF7Mt0= github.com/spf13/afero v1.10.0 h1:EaGW2JJh15aKOejeuJ+wpFSHnbd7GE6Wvp3TsNhb6LY= @@ -429,8 +431,6 @@ github.com/spf13/viper v1.17.0 h1:I5txKw7MJasPL/BrfkbA0Jyo/oELqVmux4pR/UxOMfI= github.com/spf13/viper v1.17.0/go.mod h1:BmMMMLQXSbcHK6KAOiFLz0l5JHrU89OdIRHvsk0+yVI= github.com/spiffe/go-spiffe/v2 v2.6.0 h1:l+DolpxNWYgruGQVV0xsfeya3CsC7m8iBzDnMpsbLuo= github.com/spiffe/go-spiffe/v2 v2.6.0/go.mod h1:gm2SeUoMZEtpnzPNs2Csc0D/gX33k1xIx7lEzqblHEs= -github.com/stellar/go-stellar-sdk v0.6.1-0.20260616165505-26fec7c0e891 h1:Y/PtLm4L4ZHLDI1dXIflRjI5pY+m+KD7FUVFM07tV+E= -github.com/stellar/go-stellar-sdk v0.6.1-0.20260616165505-26fec7c0e891/go.mod h1:IkcqcrE9UQi7n/1y+MxKB+7qzdjG1T2kGOD7Ss8dqjw= github.com/stellar/go-xdr v0.0.0-20260529210834-0bf8f4956364 h1:gOKrfuWdZ92LFlv0TAwgZ7OsWKeBsOMDlGLyFgduI1w= github.com/stellar/go-xdr v0.0.0-20260529210834-0bf8f4956364/go.mod h1:If+U9Z1W5xU97VrOgJandQT+2dN7/iOpkCrxBJEyF80= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= From a240dc47c28a2c42353def635902eb14e9e69faa Mon Sep 17 00:00:00 2001 From: Siddharth Suresh Date: Wed, 1 Jul 2026 15:30:35 -0700 Subject: [PATCH 2/7] Repin CAP-0084 chain: env->87a9b56, xdr->8f826ca (env next feature); bump go-sdk replace to 51284c1e --- Cargo.lock | 24 ++++++++++++------------ Cargo.toml | 14 +++++++------- go.mod | 2 +- go.sum | 4 ++-- 4 files changed, 22 insertions(+), 22 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ec35c23bf..b441b7599 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -908,9 +908,9 @@ dependencies = [ "serde_json", "sha2", "soroban-env-host 27.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "soroban-env-host 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa)", + "soroban-env-host 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb)", "soroban-simulation 27.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "soroban-simulation 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa)", + "soroban-simulation 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb)", ] [[package]] @@ -1209,7 +1209,7 @@ dependencies = [ [[package]] name = "soroban-builtin-sdk-macros" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa#8cf4f5e1580b86d65529e6ed4f78b734908c62fa" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb#87a9b566425bd34d82272b2188545b33319c6cdb" dependencies = [ "itertools", "proc-macro2", @@ -1238,14 +1238,14 @@ dependencies = [ [[package]] name = "soroban-env-common" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa#8cf4f5e1580b86d65529e6ed4f78b734908c62fa" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb#87a9b566425bd34d82272b2188545b33319c6cdb" dependencies = [ "arbitrary", "crate-git-revision 0.0.9", "ethnum", "num-derive", "num-traits", - "soroban-env-macros 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa)", + "soroban-env-macros 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb)", "soroban-wasmi 0.31.1-soroban.20.0.1 (git+https://github.com/stellar/wasmi?rev=0ed3f3dee30dc41ebe21972399e0a73a41944aa0)", "static_assertions", "stellar-xdr 28.0.0", @@ -1292,7 +1292,7 @@ dependencies = [ [[package]] name = "soroban-env-host" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa#8cf4f5e1580b86d65529e6ed4f78b734908c62fa" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb#87a9b566425bd34d82272b2188545b33319c6cdb" dependencies = [ "ark-bls12-381", "ark-bn254", @@ -1317,8 +1317,8 @@ dependencies = [ "sec1", "sha2", "sha3", - "soroban-builtin-sdk-macros 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa)", - "soroban-env-common 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa)", + "soroban-builtin-sdk-macros 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb)", + "soroban-env-common 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb)", "soroban-wasmi 0.31.1-soroban.20.0.1 (git+https://github.com/stellar/wasmi?rev=0ed3f3dee30dc41ebe21972399e0a73a41944aa0)", "static_assertions", "stellar-strkey", @@ -1343,7 +1343,7 @@ dependencies = [ [[package]] name = "soroban-env-macros" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa#8cf4f5e1580b86d65529e6ed4f78b734908c62fa" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb#87a9b566425bd34d82272b2188545b33319c6cdb" dependencies = [ "itertools", "proc-macro2", @@ -1370,11 +1370,11 @@ dependencies = [ [[package]] name = "soroban-simulation" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa#8cf4f5e1580b86d65529e6ed4f78b734908c62fa" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb#87a9b566425bd34d82272b2188545b33319c6cdb" dependencies = [ "anyhow", "rand", - "soroban-env-host 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=8cf4f5e1580b86d65529e6ed4f78b734908c62fa)", + "soroban-env-host 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb)", "static_assertions", "thiserror", ] @@ -1455,7 +1455,7 @@ dependencies = [ [[package]] name = "stellar-xdr" version = "28.0.0" -source = "git+https://github.com/sisuresh/rs-stellar-xdr?rev=7b46a60d914c1e5befd6a2d2c50d2fdf7e5eb1f0#7b46a60d914c1e5befd6a2d2c50d2fdf7e5eb1f0" +source = "git+https://github.com/sisuresh/rs-stellar-xdr?rev=8f826caa99f3b4c55e4d958eb5b6a9a1dbbf9873#8f826caa99f3b4c55e4d958eb5b6a9a1dbbf9873" dependencies = [ "arbitrary", "base64", diff --git a/Cargo.toml b/Cargo.toml index 41bf035e9..b42cf6239 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -25,11 +25,11 @@ version = "=27.0.0" [workspace.dependencies.soroban-env-host-curr] package = "soroban-env-host" git = "https://github.com/sisuresh/rs-soroban-env" -rev = "8cf4f5e1580b86d65529e6ed4f78b734908c62fa" -# `next` alone no longer pulls in CAP-0084; without cap_0084_muxed_contract the -# host's SCAddress match is non-exhaustive against the new MUXED_CONTRACT arm -# (cap_0084_muxed_contract transitively enables `next`). -features = ["cap_0084_muxed_contract"] +rev = "87a9b566425bd34d82272b2188545b33319c6cdb" +# `next` now pulls in CAP-0084: rs-soroban-env#1696 gates the CAP on the umbrella +# `next` (which enables stellar-xdr/cap_0084_muxed_contract), so the host's +# SCAddress match handles the new MUXED_CONTRACT arm. +features = ["next"] [workspace.dependencies.soroban-simulation-prev] package = "soroban-simulation" @@ -38,7 +38,7 @@ version = "=27.0.0" [workspace.dependencies.soroban-simulation-curr] package = "soroban-simulation" git = "https://github.com/sisuresh/rs-soroban-env" -rev = "8cf4f5e1580b86d65529e6ed4f78b734908c62fa" +rev = "87a9b566425bd34d82272b2188545b33319c6cdb" features = ["unstable-next-api"] [workspace.dependencies.stellar-xdr] @@ -47,7 +47,7 @@ features = ["unstable-next-api"] # the preflight's stellar-xdr with the host's into one package. # Productionize -> stellar/rs-stellar-xdr merged SHA (or crates.io =27.x) once #549 lands. git = "https://github.com/sisuresh/rs-stellar-xdr" -rev = "7b46a60d914c1e5befd6a2d2c50d2fdf7e5eb1f0" +rev = "8f826caa99f3b4c55e4d958eb5b6a9a1dbbf9873" # `type_enum` provides the `Type`/`TypeVariant` reflection enums used by # xdr2json. It was enabled by default in stellar-xdr v26 but is opt-in in v27. # `cap_0083` gates the Protocol 28 EmptyTxSet StellarValueType variant. diff --git a/go.mod b/go.mod index 53f06c170..b4eb6a564 100644 --- a/go.mod +++ b/go.mod @@ -153,4 +153,4 @@ require ( // pin to the fork branch sisuresh/go@p28-cap-0084 (go-stellar-sdk#5960). Remove // this replace (and the .golangci.yml gomoddirectives allow-list) once the // upstream SDK PR merges and the pseudo-version resolves via the module proxy. -replace github.com/stellar/go-stellar-sdk => github.com/sisuresh/go v0.0.0-20260627053858-318bde14b520 +replace github.com/stellar/go-stellar-sdk => github.com/sisuresh/go v0.0.0-20260701222026-51284c1e7418 diff --git a/go.sum b/go.sum index 81ad56a3f..a68a4be18 100644 --- a/go.sum +++ b/go.sum @@ -415,8 +415,8 @@ github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8= github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I= github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= -github.com/sisuresh/go v0.0.0-20260627053858-318bde14b520 h1:Dvv5T93Qfj1VBmxqdvWf92xFv8BFg0TFFl4gMSR7QPI= -github.com/sisuresh/go v0.0.0-20260627053858-318bde14b520/go.mod h1:IkcqcrE9UQi7n/1y+MxKB+7qzdjG1T2kGOD7Ss8dqjw= +github.com/sisuresh/go v0.0.0-20260701222026-51284c1e7418 h1:t6BNG0+6IXmRxMXtREQQuH5yu85bsGE7GQbYbSAMwUE= +github.com/sisuresh/go v0.0.0-20260701222026-51284c1e7418/go.mod h1:IkcqcrE9UQi7n/1y+MxKB+7qzdjG1T2kGOD7Ss8dqjw= github.com/sourcegraph/conc v0.3.0 h1:OQTbbt6P72L20UqAkXXuLOj79LfEanQ+YQFNpLA9ySo= github.com/sourcegraph/conc v0.3.0/go.mod h1:Sdozi7LEKbFPqYX2/J+iBAM6HpqSLTASQIKqDmF7Mt0= github.com/spf13/afero v1.10.0 h1:EaGW2JJh15aKOejeuJ+wpFSHnbd7GE6Wvp3TsNhb6LY= From 97bc7d669b4805a4a10cce31685fe690ea0befc1 Mon Sep 17 00:00:00 2001 From: Siddharth Suresh Date: Wed, 1 Jul 2026 16:15:06 -0700 Subject: [PATCH 3/7] Re-pin -curr host/simulation to rs-soroban-env#1696 head 448016ac Advance the CAP-0084 spike's -curr host/simulation deps to the current rs-soroban-env#1696 fork head (87a9b566 -> 448016ac; picks up the anyhow 1.0.103 RUSTSEC-2026-0190 bump). Feature flags unchanged: `next` still transitively enables stellar-xdr/cap_0084_muxed_contract. stellar-xdr stays at 8f826caa: env#1696's head still pins that xdr rev, and cargo must unify preflight's stellar-xdr with the host's into one package. #549's tip (4761390051) is 1 commit ahead but only regenerates JSON schemas (no Rust change), so nothing is lost holding here. Bump both together once env re-pins to the newer xdr rev. Verified: `cargo build -p preflight` resolves to a single stellar-xdr and a single soroban-env-host source and compiles. --- Cargo.lock | 22 +++++++++++----------- Cargo.toml | 8 ++++++-- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b441b7599..2ee88fcf2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -908,9 +908,9 @@ dependencies = [ "serde_json", "sha2", "soroban-env-host 27.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "soroban-env-host 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb)", + "soroban-env-host 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b)", "soroban-simulation 27.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "soroban-simulation 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb)", + "soroban-simulation 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b)", ] [[package]] @@ -1209,7 +1209,7 @@ dependencies = [ [[package]] name = "soroban-builtin-sdk-macros" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb#87a9b566425bd34d82272b2188545b33319c6cdb" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b#448016acbf9790d9d43ba6deb5b306121177b10b" dependencies = [ "itertools", "proc-macro2", @@ -1238,14 +1238,14 @@ dependencies = [ [[package]] name = "soroban-env-common" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb#87a9b566425bd34d82272b2188545b33319c6cdb" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b#448016acbf9790d9d43ba6deb5b306121177b10b" dependencies = [ "arbitrary", "crate-git-revision 0.0.9", "ethnum", "num-derive", "num-traits", - "soroban-env-macros 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb)", + "soroban-env-macros 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b)", "soroban-wasmi 0.31.1-soroban.20.0.1 (git+https://github.com/stellar/wasmi?rev=0ed3f3dee30dc41ebe21972399e0a73a41944aa0)", "static_assertions", "stellar-xdr 28.0.0", @@ -1292,7 +1292,7 @@ dependencies = [ [[package]] name = "soroban-env-host" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb#87a9b566425bd34d82272b2188545b33319c6cdb" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b#448016acbf9790d9d43ba6deb5b306121177b10b" dependencies = [ "ark-bls12-381", "ark-bn254", @@ -1317,8 +1317,8 @@ dependencies = [ "sec1", "sha2", "sha3", - "soroban-builtin-sdk-macros 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb)", - "soroban-env-common 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb)", + "soroban-builtin-sdk-macros 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b)", + "soroban-env-common 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b)", "soroban-wasmi 0.31.1-soroban.20.0.1 (git+https://github.com/stellar/wasmi?rev=0ed3f3dee30dc41ebe21972399e0a73a41944aa0)", "static_assertions", "stellar-strkey", @@ -1343,7 +1343,7 @@ dependencies = [ [[package]] name = "soroban-env-macros" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb#87a9b566425bd34d82272b2188545b33319c6cdb" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b#448016acbf9790d9d43ba6deb5b306121177b10b" dependencies = [ "itertools", "proc-macro2", @@ -1370,11 +1370,11 @@ dependencies = [ [[package]] name = "soroban-simulation" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb#87a9b566425bd34d82272b2188545b33319c6cdb" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b#448016acbf9790d9d43ba6deb5b306121177b10b" dependencies = [ "anyhow", "rand", - "soroban-env-host 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=87a9b566425bd34d82272b2188545b33319c6cdb)", + "soroban-env-host 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b)", "static_assertions", "thiserror", ] diff --git a/Cargo.toml b/Cargo.toml index b42cf6239..392af7e44 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -25,7 +25,7 @@ version = "=27.0.0" [workspace.dependencies.soroban-env-host-curr] package = "soroban-env-host" git = "https://github.com/sisuresh/rs-soroban-env" -rev = "87a9b566425bd34d82272b2188545b33319c6cdb" +rev = "448016acbf9790d9d43ba6deb5b306121177b10b" # `next` now pulls in CAP-0084: rs-soroban-env#1696 gates the CAP on the umbrella # `next` (which enables stellar-xdr/cap_0084_muxed_contract), so the host's # SCAddress match handles the new MUXED_CONTRACT arm. @@ -38,7 +38,7 @@ version = "=27.0.0" [workspace.dependencies.soroban-simulation-curr] package = "soroban-simulation" git = "https://github.com/sisuresh/rs-soroban-env" -rev = "87a9b566425bd34d82272b2188545b33319c6cdb" +rev = "448016acbf9790d9d43ba6deb5b306121177b10b" features = ["unstable-next-api"] [workspace.dependencies.stellar-xdr] @@ -47,6 +47,10 @@ features = ["unstable-next-api"] # the preflight's stellar-xdr with the host's into one package. # Productionize -> stellar/rs-stellar-xdr merged SHA (or crates.io =27.x) once #549 lands. git = "https://github.com/sisuresh/rs-stellar-xdr" +# Held at the rev rs-soroban-env#1696's head (448016ac) pins so cargo unifies +# preflight's stellar-xdr with the host's. #549's tip (4761390051) is 1 commit +# ahead, but that commit only regenerates JSON schemas (no Rust change), so +# holding here loses nothing; bump both together once env re-pins to it. rev = "8f826caa99f3b4c55e4d958eb5b6a9a1dbbf9873" # `type_enum` provides the `Type`/`TypeVariant` reflection enums used by # xdr2json. It was enabled by default in stellar-xdr v26 but is opt-in in v27. From d11814a6bd797f2e61a6ce5f3fb4ef337dac4c34 Mon Sep 17 00:00:00 2001 From: Siddharth Suresh Date: Wed, 1 Jul 2026 16:57:07 -0700 Subject: [PATCH 4/7] Correct deferred P28 integration image target: e32fa423 -> b2b06a8 The integration-p28-pkg re-pin note pointed at a stale stellar-core commit prefix (e32fa423). stellar-core#5332 head is now b2b06a8; update the deferral comment so the next pass polls for and pins the correct ~vnext build. No functional change (CAP-0083 vnext image still in place). --- .github/workflows/stellar-rpc.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/stellar-rpc.yml b/.github/workflows/stellar-rpc.yml index b269a2fe7..bd3937ed9 100644 --- a/.github/workflows/stellar-rpc.yml +++ b/.github/workflows/stellar-rpc.yml @@ -107,8 +107,8 @@ jobs: # # SPIKE (CAP-0084) DEFERRED: this is still the CAP-0083 vnext image; it # exercises RPC against a P28 core but NOT the CAP-0084 muxed-contract SAC - # host behavior. Re-pin to the `e32fa423…`-prefixed `-vnext` build - # (stellar/stellar-core#5332) once Jenkins publishes it — match the plain + # host behavior. Re-pin to the `b2b06a8…`-prefixed `-vnext` build + # (stellar/stellar-core#5332 head) once Jenkins publishes it — match the plain # `~vnext` variant, not `~buildtests`. No such build exists yet. core_deb_version: '27.0.1-3367.3589a696b.jammy~vnext' core_docker_img: 'stellar/unsafe-stellar-core:27.0.1-3367.3589a696b.jammy-vnext' From a24e3514736a2d8d4be0d7f4b41872bc80f3ef68 Mon Sep 17 00:00:00 2001 From: Siddharth Suresh Date: Thu, 2 Jul 2026 17:47:09 -0700 Subject: [PATCH 5/7] Re-pin go-stellar-sdk to #5961 head eeca7aa4; drop local-path replace (CAP-0084) --- go.mod | 2 +- go.sum | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/go.mod b/go.mod index b4eb6a564..533d6622d 100644 --- a/go.mod +++ b/go.mod @@ -153,4 +153,4 @@ require ( // pin to the fork branch sisuresh/go@p28-cap-0084 (go-stellar-sdk#5960). Remove // this replace (and the .golangci.yml gomoddirectives allow-list) once the // upstream SDK PR merges and the pseudo-version resolves via the module proxy. -replace github.com/stellar/go-stellar-sdk => github.com/sisuresh/go v0.0.0-20260701222026-51284c1e7418 +replace github.com/stellar/go-stellar-sdk => github.com/sisuresh/go v0.0.0-20260701230520-eeca7aa4a3bc diff --git a/go.sum b/go.sum index a68a4be18..cdd91c666 100644 --- a/go.sum +++ b/go.sum @@ -415,8 +415,8 @@ github.com/sergi/go-diff v1.3.1 h1:xkr+Oxo4BOQKmkn/B9eMK0g5Kg/983T9DqqPHwYqD+8= github.com/sergi/go-diff v1.3.1/go.mod h1:aMJSSKb2lpPvRNec0+w3fl7LP9IOFzdc9Pa4NFbPK1I= github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ= github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ= -github.com/sisuresh/go v0.0.0-20260701222026-51284c1e7418 h1:t6BNG0+6IXmRxMXtREQQuH5yu85bsGE7GQbYbSAMwUE= -github.com/sisuresh/go v0.0.0-20260701222026-51284c1e7418/go.mod h1:IkcqcrE9UQi7n/1y+MxKB+7qzdjG1T2kGOD7Ss8dqjw= +github.com/sisuresh/go v0.0.0-20260701230520-eeca7aa4a3bc h1:WVa7+1/bWNhqwKTBIZ+yHdANMwmXDb4VOym4bn2YpME= +github.com/sisuresh/go v0.0.0-20260701230520-eeca7aa4a3bc/go.mod h1:IkcqcrE9UQi7n/1y+MxKB+7qzdjG1T2kGOD7Ss8dqjw= github.com/sourcegraph/conc v0.3.0 h1:OQTbbt6P72L20UqAkXXuLOj79LfEanQ+YQFNpLA9ySo= github.com/sourcegraph/conc v0.3.0/go.mod h1:Sdozi7LEKbFPqYX2/J+iBAM6HpqSLTASQIKqDmF7Mt0= github.com/spf13/afero v1.10.0 h1:EaGW2JJh15aKOejeuJ+wpFSHnbd7GE6Wvp3TsNhb6LY= From 66c395c5f56e9f61335a546acd048acc35620f4f Mon Sep 17 00:00:00 2001 From: Siddharth Suresh Date: Thu, 2 Jul 2026 20:36:30 -0700 Subject: [PATCH 6/7] Re-pin CAP-0084 Rust chain to current upstream heads - soroban-env-host-curr / soroban-simulation-curr: rs-soroban-env#1700 head 26b035c0 - stellar-xdr: rs-stellar-xdr#552 head cf7fded (matches env#1700's xdr pin) - fix stale go.mod comment: go-stellar-sdk #5960 (closed) -> #5961 (pin unchanged) - refresh deferred P28 vnext-image comment: core #5332 -> #5337 head 4cdd2fc9 --- .github/workflows/stellar-rpc.yml | 4 ++-- Cargo.lock | 24 ++++++++++++------------ Cargo.toml | 22 +++++++++++----------- go.mod | 2 +- 4 files changed, 26 insertions(+), 26 deletions(-) diff --git a/.github/workflows/stellar-rpc.yml b/.github/workflows/stellar-rpc.yml index bd3937ed9..f80b1b1bf 100644 --- a/.github/workflows/stellar-rpc.yml +++ b/.github/workflows/stellar-rpc.yml @@ -107,8 +107,8 @@ jobs: # # SPIKE (CAP-0084) DEFERRED: this is still the CAP-0083 vnext image; it # exercises RPC against a P28 core but NOT the CAP-0084 muxed-contract SAC - # host behavior. Re-pin to the `b2b06a8…`-prefixed `-vnext` build - # (stellar/stellar-core#5332 head) once Jenkins publishes it — match the plain + # host behavior. Re-pin to the `4cdd2fc9…`-prefixed `-vnext` build + # (stellar/stellar-core#5337 head) once Jenkins publishes it — match the plain # `~vnext` variant, not `~buildtests`. No such build exists yet. core_deb_version: '27.0.1-3367.3589a696b.jammy~vnext' core_docker_img: 'stellar/unsafe-stellar-core:27.0.1-3367.3589a696b.jammy-vnext' diff --git a/Cargo.lock b/Cargo.lock index 2ee88fcf2..2c2264d20 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -908,9 +908,9 @@ dependencies = [ "serde_json", "sha2", "soroban-env-host 27.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "soroban-env-host 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b)", + "soroban-env-host 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=26b035c00663a424a0cdc4732911d49ddb6bb26f)", "soroban-simulation 27.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "soroban-simulation 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b)", + "soroban-simulation 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=26b035c00663a424a0cdc4732911d49ddb6bb26f)", ] [[package]] @@ -1209,7 +1209,7 @@ dependencies = [ [[package]] name = "soroban-builtin-sdk-macros" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b#448016acbf9790d9d43ba6deb5b306121177b10b" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=26b035c00663a424a0cdc4732911d49ddb6bb26f#26b035c00663a424a0cdc4732911d49ddb6bb26f" dependencies = [ "itertools", "proc-macro2", @@ -1238,14 +1238,14 @@ dependencies = [ [[package]] name = "soroban-env-common" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b#448016acbf9790d9d43ba6deb5b306121177b10b" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=26b035c00663a424a0cdc4732911d49ddb6bb26f#26b035c00663a424a0cdc4732911d49ddb6bb26f" dependencies = [ "arbitrary", "crate-git-revision 0.0.9", "ethnum", "num-derive", "num-traits", - "soroban-env-macros 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b)", + "soroban-env-macros 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=26b035c00663a424a0cdc4732911d49ddb6bb26f)", "soroban-wasmi 0.31.1-soroban.20.0.1 (git+https://github.com/stellar/wasmi?rev=0ed3f3dee30dc41ebe21972399e0a73a41944aa0)", "static_assertions", "stellar-xdr 28.0.0", @@ -1292,7 +1292,7 @@ dependencies = [ [[package]] name = "soroban-env-host" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b#448016acbf9790d9d43ba6deb5b306121177b10b" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=26b035c00663a424a0cdc4732911d49ddb6bb26f#26b035c00663a424a0cdc4732911d49ddb6bb26f" dependencies = [ "ark-bls12-381", "ark-bn254", @@ -1317,8 +1317,8 @@ dependencies = [ "sec1", "sha2", "sha3", - "soroban-builtin-sdk-macros 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b)", - "soroban-env-common 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b)", + "soroban-builtin-sdk-macros 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=26b035c00663a424a0cdc4732911d49ddb6bb26f)", + "soroban-env-common 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=26b035c00663a424a0cdc4732911d49ddb6bb26f)", "soroban-wasmi 0.31.1-soroban.20.0.1 (git+https://github.com/stellar/wasmi?rev=0ed3f3dee30dc41ebe21972399e0a73a41944aa0)", "static_assertions", "stellar-strkey", @@ -1343,7 +1343,7 @@ dependencies = [ [[package]] name = "soroban-env-macros" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b#448016acbf9790d9d43ba6deb5b306121177b10b" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=26b035c00663a424a0cdc4732911d49ddb6bb26f#26b035c00663a424a0cdc4732911d49ddb6bb26f" dependencies = [ "itertools", "proc-macro2", @@ -1370,11 +1370,11 @@ dependencies = [ [[package]] name = "soroban-simulation" version = "27.0.0" -source = "git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b#448016acbf9790d9d43ba6deb5b306121177b10b" +source = "git+https://github.com/sisuresh/rs-soroban-env?rev=26b035c00663a424a0cdc4732911d49ddb6bb26f#26b035c00663a424a0cdc4732911d49ddb6bb26f" dependencies = [ "anyhow", "rand", - "soroban-env-host 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=448016acbf9790d9d43ba6deb5b306121177b10b)", + "soroban-env-host 27.0.0 (git+https://github.com/sisuresh/rs-soroban-env?rev=26b035c00663a424a0cdc4732911d49ddb6bb26f)", "static_assertions", "thiserror", ] @@ -1455,7 +1455,7 @@ dependencies = [ [[package]] name = "stellar-xdr" version = "28.0.0" -source = "git+https://github.com/sisuresh/rs-stellar-xdr?rev=8f826caa99f3b4c55e4d958eb5b6a9a1dbbf9873#8f826caa99f3b4c55e4d958eb5b6a9a1dbbf9873" +source = "git+https://github.com/sisuresh/rs-stellar-xdr?rev=cf7fdedf7ca95fccf45c82e6829d14637c9b5e4c#cf7fdedf7ca95fccf45c82e6829d14637c9b5e4c" dependencies = [ "arbitrary", "base64", diff --git a/Cargo.toml b/Cargo.toml index 392af7e44..b2ce00a53 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -25,8 +25,8 @@ version = "=27.0.0" [workspace.dependencies.soroban-env-host-curr] package = "soroban-env-host" git = "https://github.com/sisuresh/rs-soroban-env" -rev = "448016acbf9790d9d43ba6deb5b306121177b10b" -# `next` now pulls in CAP-0084: rs-soroban-env#1696 gates the CAP on the umbrella +rev = "26b035c00663a424a0cdc4732911d49ddb6bb26f" +# `next` now pulls in CAP-0084: rs-soroban-env#1700 gates the CAP on the umbrella # `next` (which enables stellar-xdr/cap_0084_muxed_contract), so the host's # SCAddress match handles the new MUXED_CONTRACT arm. features = ["next"] @@ -38,20 +38,20 @@ version = "=27.0.0" [workspace.dependencies.soroban-simulation-curr] package = "soroban-simulation" git = "https://github.com/sisuresh/rs-soroban-env" -rev = "448016acbf9790d9d43ba6deb5b306121177b10b" +rev = "26b035c00663a424a0cdc4732911d49ddb6bb26f" features = ["unstable-next-api"] [workspace.dependencies.stellar-xdr] -# SPIKE: rs-stellar-xdr#549 (CAP-0084) — fork branch sisuresh/rs-stellar-xdr@p28-cap-0084. -# MUST match the git source+rev that rs-soroban-env#1696 uses, so cargo unifies +# SPIKE: rs-stellar-xdr#552 (CAP-0084) — fork branch sisuresh/rs-stellar-xdr@p28-cap-0084. +# MUST match the git source+rev that rs-soroban-env#1700 uses, so cargo unifies # the preflight's stellar-xdr with the host's into one package. -# Productionize -> stellar/rs-stellar-xdr merged SHA (or crates.io =27.x) once #549 lands. +# Productionize -> stellar/rs-stellar-xdr merged SHA (or crates.io =28.x) once #552 lands. git = "https://github.com/sisuresh/rs-stellar-xdr" -# Held at the rev rs-soroban-env#1696's head (448016ac) pins so cargo unifies -# preflight's stellar-xdr with the host's. #549's tip (4761390051) is 1 commit -# ahead, but that commit only regenerates JSON schemas (no Rust change), so -# holding here loses nothing; bump both together once env re-pins to it. -rev = "8f826caa99f3b4c55e4d958eb5b6a9a1dbbf9873" +# Pinned to rs-stellar-xdr#552's head (cf7fded), which is exactly the rev that +# rs-soroban-env#1700 pins — env#1700 and xdr#552 heads are now aligned, so the +# "must match the git source+rev env uses" invariant holds and cargo unifies +# preflight's stellar-xdr with the host's into one package. +rev = "cf7fdedf7ca95fccf45c82e6829d14637c9b5e4c" # `type_enum` provides the `Type`/`TypeVariant` reflection enums used by # xdr2json. It was enabled by default in stellar-xdr v26 but is opt-in in v27. # `cap_0083` gates the Protocol 28 EmptyTxSet StellarValueType variant. diff --git a/go.mod b/go.mod index 533d6622d..0e93865a8 100644 --- a/go.mod +++ b/go.mod @@ -150,7 +150,7 @@ require ( ) // SPIKE (CAP-0084): the go-stellar-sdk CAP-0084 regen is not yet released, so -// pin to the fork branch sisuresh/go@p28-cap-0084 (go-stellar-sdk#5960). Remove +// pin to the fork branch sisuresh/go@p28-cap-0084 (go-stellar-sdk#5961). Remove // this replace (and the .golangci.yml gomoddirectives allow-list) once the // upstream SDK PR merges and the pseudo-version resolves via the module proxy. replace github.com/stellar/go-stellar-sdk => github.com/sisuresh/go v0.0.0-20260701230520-eeca7aa4a3bc From fbd34c1b0d5cc3d6bcc30f38026e93120b1970cc Mon Sep 17 00:00:00 2001 From: Siddharth Suresh Date: Mon, 6 Jul 2026 12:54:45 -0700 Subject: [PATCH 7/7] CAP-0084: re-pin P28 core image/deb to vnext build 3395 (4cdd2fc9e) The -vnext artifact matching stellar-core#5337 HEAD (4cdd2fc9e) has published, so RPC integration now exercises CAP-0084 muxed-contract SAC host behavior instead of the deferred CAP-0083 image. Plain ~vnext variant. --- .github/workflows/stellar-rpc.yml | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/.github/workflows/stellar-rpc.yml b/.github/workflows/stellar-rpc.yml index f80b1b1bf..1effd1e8f 100644 --- a/.github/workflows/stellar-rpc.yml +++ b/.github/workflows/stellar-rpc.yml @@ -105,13 +105,11 @@ jobs: # fix for the QueryServer.cpp:124 contiguous-snapshot assertion that # aborted captive-core catchup on builds 3313..3366. # - # SPIKE (CAP-0084) DEFERRED: this is still the CAP-0083 vnext image; it - # exercises RPC against a P28 core but NOT the CAP-0084 muxed-contract SAC - # host behavior. Re-pin to the `4cdd2fc9…`-prefixed `-vnext` build - # (stellar/stellar-core#5337 head) once Jenkins publishes it — match the plain - # `~vnext` variant, not `~buildtests`. No such build exists yet. - core_deb_version: '27.0.1-3367.3589a696b.jammy~vnext' - core_docker_img: 'stellar/unsafe-stellar-core:27.0.1-3367.3589a696b.jammy-vnext' + # CAP-0084: pinned to the -vnext build 3395 (4cdd2fc9e) matching + # stellar-core#5337 HEAD, so RPC integration now exercises the CAP-0084 + # muxed-contract SAC host behavior. Plain `~vnext` variant (not `~buildtests`). + core_deb_version: '27.1.1-3395.4cdd2fc9e.jammy~vnext' + core_docker_img: 'stellar/unsafe-stellar-core:27.1.1-3395.4cdd2fc9e.jammy-vnext' # integration-p25-src: # name: Integration tests (p25, core from source)