Skip to content

SPIKE: Protocol 28 (CAP-0085)#1929

Draft
sisuresh wants to merge 3 commits into
stellar:mainfrom
sisuresh:p28-cap-0085
Draft

SPIKE: Protocol 28 (CAP-0085)#1929
sisuresh wants to merge 3 commits into
stellar:mainfrom
sisuresh:p28-cap-0085

Conversation

@sisuresh

Copy link
Copy Markdown
Contributor

Changes

  • Pin stellar-xdrsisuresh/rs-stellar-xdr@e1170cd9 (Bump version to 0.0.4 #553) and the three soroban-env crates → sisuresh/rs-soroban-env@78026e8b (Update expanded test files missed in #1699 #1704), both on fork branch p28-cap-0085.
  • Enable the env next feature (aggregates cap_0085_executable_ref) + the xdr cap_0085_executable_ref feature across the workspace; forward next through soroban-sdk-macros' soroban-env-common.
  • env.rs: import the new ExecutableTagObject host object (CAP-0085 adds it plus 3 host fns, surfaced via the auto-generated Env bindings — the only source change the build required).
  • Bump default test-ledger protocol 27 → 28; regenerate cost-estimate metering expect![] + JSON test snapshots; regen top-level and fuzz Cargo.lock.
  • deny.toml: allow the sisuresh git source; semver-checks excludes soroban-sdk + soroban-ledger-snapshot (ed25519-dalek 3.0.0 baseline break, mirrors CAP-0084).

Deferred

  • tests-expanded/* regeneration — needs linux cross-compile + host-dependent wasm bytes; adopt the + lines from the CI (linux) job log rather than regenerating on macOS.
  • No high-level SDK wrappers added for the new host fns (create_external_ref_contract / update_current_contract_executable_ref / create_executable_tag) — none required by build/tests; flagged for human review.
  • Productionize pins → merged stellar/ revs once Bump version to 0.0.4 #553 / Update expanded test files missed in #1699 #1704 land.

Upstream: stellar/rs-stellar-xdr#553, stellar/rs-soroban-env#1704 (canonical draft: stellar/rs-soroban-env#1703).
Downstream: handled in separate per-repo release passes.

sisuresh added 3 commits July 10, 2026 01:02
…cutable_ref

Pin stellar-xdr -> sisuresh/rs-stellar-xdr@e1170cd9 (stellar#553) and the three
soroban-env crates -> sisuresh/rs-soroban-env@78026e8b (stellar#1704), both on
fork branch p28-cap-0085. Enable the env 'next' feature (which aggregates
cap_0085_executable_ref) and the stellar-xdr 'cap_0085_executable_ref'
feature across the workspace; forward 'next' through soroban-sdk-macros'
soroban-env-common.

env.rs: import the new ExecutableTagObject host object (CAP-0085 adds it
plus 3 host fns, surfaced via call_macro_with_all_host_functions!).
testutils: bump default test ledger protocol 27 -> 28.
cost_estimate: regenerate expect![] metering values for env 28.
deny.toml: allow the sisuresh git source for the SPIKE pins.
Regenerate top-level and fuzz Cargo.lock.
Regenerated by cargo test: default ledger protocol 27 -> 28 and the
contractenvmetav0 interface-version stamp in embedded contract wasm.
…apshot from semver-checks

ed25519-dalek 3.0.0 breaks the cargo-semver-checks baseline rustdoc build;
the 27->28 bump is MAJOR so no semver signal is lost. Mirrors the CAP-0084
SPIKE workaround. Remove once ed25519-dalek 3.0.0 is yanked or capped.
@socket-security

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedlibfuzzer-sys@​0.4.6 ⏵ 0.4.1347 -1110093 -7100100

View full report

@socket-security

Copy link
Copy Markdown

Warning

Review the following alerts detected in dependencies.

According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.

Action Severity Alert  (click "▶" to expand/collapse)
Warn High
Obfuscated code: cargo libc is 90.0% likely obfuscated

Confidence: 0.90

Location: Package overview

From: ?cargo/libfuzzer-sys@0.4.13cargo/curve25519-dalek@4.1.3cargo/ed25519-dalek@2.1.1cargo/sha2@0.10.9cargo/rand@0.8.5cargo/serde_with@3.12.0cargo/proptest@1.5.0cargo/ark-bls12-381@0.5.0cargo/ark-bn254@0.5.0cargo/ark-ff@0.5.0cargo/libc@0.2.186

ℹ Read more on: This package | This alert | What is obfuscated code?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Packages should not obfuscate their code. Consider not using packages with obfuscated code.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore cargo/libc@0.2.186. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

Warn High
Obfuscated code: cargo zerocopy is 90.0% likely obfuscated

Confidence: 0.90

Location: Package overview

From: ?cargo/rand@0.8.5cargo/proptest@1.5.0cargo/ark-bls12-381@0.5.0cargo/ark-bn254@0.5.0cargo/ark-ff@0.5.0cargo/zerocopy@0.8.54

ℹ Read more on: This package | This alert | What is obfuscated code?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Packages should not obfuscate their code. Consider not using packages with obfuscated code.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore cargo/zerocopy@0.8.54. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

View full report

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.

1 participant