Skip to content

Merge main into feature/full-history (2026-08-04) - #920

Merged
karthikiyer56 merged 18 commits into
feature/full-historyfrom
karthik/merge-main-into-feature-full-history-2026-08-04
Aug 4, 2026
Merged

karthikiyer56 merged 18 commits into
feature/full-historyfrom
karthik/merge-main-into-feature-full-history-2026-08-04

Conversation

@karthikiyer56

Copy link
Copy Markdown
Contributor

Why

What main brings (17 commits since merge-base b5df41dc)

  • Protocol 28 GA: crate/SDK/core pins, CAP-0083/0085 preflight support, P28 upgrade fixtures, P27+P28 integration matrix.
  • New perf-eval legs (Add blaster test for endpoint performance evaluation #855, go-bench): endpoint blaster + Go benchmark comparison, chained backfill→blaster coordinator jobs.
  • Docker/CI hygiene: Ubuntu 24.04 runners, e2e workflow removal.

Conflict resolution (paths relative to repo root)

  • go.mod / go.sum: took main's go-stellar-sdk v0.7.0, kept feature-only deps (streamhash, grocksdb, go-humanize); regenerated via go mod tidy.
  • Upgrade fixtures: accepted main's *.p26.* → *.p28.* renames (100% identical content) under the reorg'd location cmd/stellar-rpc/internal/rpcv1/integrationtest/infrastructure/docker/upgrades/.
  • Relocated main's new tools from the pre-reorg path to cmd/stellar-rpc/internal/rpcv1/integrationtest/infrastructure/perf-eval/{endpoint-load-test,go-bench}/, translating harness imports and run_leg script paths (git had silently staged them at the old path).
  • perf-eval/backfill-test/runner/instantiate.go: kept main's prepareFixtures refactor with the feature's ./cmd/stellar-rpc/rpcv1 build target.
  • .github/workflows/load-test-coordinator.yml: took main's 4-leg roster + chained backfill/blaster jobs, translated all leg script paths to rpcv1/.

Verification

  • make build-libs + go build ./...: clean.
  • go test ./...: all packages pass.
  • scripts/check-dependencies.bash: Go and Rust both resolve stellar-xdr commit 9c9c1459 (P28); env-host versions unified.
  • golangci-lint run ./...: no findings in merge-touched files.

🤖 Generated with Claude Code

satyamz and others added 18 commits June 16, 2026 11:07
Signed-off-by: Satyam Zode <satyamz@users.noreply.github.com>
Signed-off-by: Satyam Zode <satyamz@users.noreply.github.com>
…w-list

go-stellar-sdk#5965 (Protocol 28 / CAP-0085) merged to protocol-next as
82df7643786e0f8e4f82f4d36e522af8c45bf101. Drop the sisuresh/go fork replace,
pin the merged commit (v0.6.1-0.20260722220414-82df7643786e), and remove the
paired .golangci.yml gomoddirectives replace-allow-list (now-empty stanza
deleted). Rust preflight pins (merged rs-soroban-env / rs-stellar-xdr) unchanged.
The merged CAP-0085 rs-soroban-env commit (88cadc3) advanced its baseline:
the default (non-next) build now declares protocol 28, while 'next' declares
protocol 29. The preflight dispatches by exact protocol number
(proto == curr::PROTOCOL), so with 'next' enabled curr::PROTOCOL was 29 and
ledgers at protocol 28 were rejected ('unsupported protocol version: 28',
TestGetPreflight/protocol_28). Drop the 'next' feature so curr::PROTOCOL == 28.
CAP-0085 XDR types are unaffected — the host pins stellar-xdr with
cap_0085_executable_ref in its own workspace, independent of 'next'.
Verified locally: make build-libs + go test ./.../preflight TestGetPreflight* pass.
…host

The P28 integration leg was failing with ScecExceededLimit ('operation
instructions exceeds amount specified') because the previous core image
(27.0.1-3367.3589a696b) predated rs-soroban-env#1702's cost-model update, so
apply-time metering diverged from the preflight's simulation. Repin to
27.1.1-3444.0e3d3d955.jammy-vnext: a vnext build of stellar-core master that
includes CAP-85 core support (stellar-core#5358) and whose src/rust/soroban/p28
submodule is 88cadc32 — the exact rs-soroban-env commit soroban-env-host-curr
pins. Host commit now matches on both sides, so the cost models agree.
Docker manifest + jammy~vnext deb both verified present in the registry/apt pool.
Upgrade docker base ubuntu image to 24.04
`stellar/system-test` was transferred to the stellar-deprecated org and archived.
* Protocol 28 GA: crates.io host/xdr pins, GA core CI legs, SDK P28

One commit for the coupled pin set (check-dependencies.bash cross-validates
Cargo.toml, go.mod, and the workflow core pins):

- soroban-env-host/simulation-curr: git 88cadc32 → crates.io =28.0.0 (cut
  from rs-soroban-env v28.0.0/ba37ea5f, the exact commit core 28.0.0 bundles
  as src/rust/soroban/p28); -prev → =27.0.1 (final P27 patch)
- stellar-xdr: git a90de0c → =28.0.0; cap_0083/cap_0085_executable_ref
  feature gates dropped (both CAPs ship ungated); serde+type_enum kept
- CI legs: P27+P28 both on stellar/stellar-core:28.0.0-3486.2332980a1.jammy
  (vnext/unsafe pins retired)
- go.mod: go-stellar-sdk → v0.6.1-0.20260803175255-2b16db0ecd45 (P28 GA
  merge commit)
- MaxSupportedProtocolVersion 27 → 28; CHANGELOG v28.0.0

* flip: SDK v0.7.0 (released), CI images via unsafe-stellar-core

v0.7.0 was cut on the GA merge commit, so the pseudo-version pin becomes the
real tag. CI legs pin stellar/unsafe-stellar-core for the GA build — the
stellar/stellar-core repo lags the release; the swap back happens in the
release PR once the GA-repo image exists.

* flip: soroban-env-host/simulation-curr → =28.0.1

Patch release over v28.0.0: same host commit core 28.0.0 bundles (ba37ea5f)
plus an ed25519-dalek version-constraint fix (rs-soroban-env#1706). No
metering change — simulation/apply coherence unaffected.

* CHANGELOG: match repo entry style

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Conflict resolutions:
- CHANGELOG.md: v28.0.0 section interleaved above main's v27.1.x entries
- go.mod/go.sum: main's dependency bumps + go-stellar-sdk v0.7.0, re-tidied
- preflight lib.rs: prev::make_recording_auth_mode now PASSES THROUGH
  use_upgraded_auth — prev rotated to soroban-env-host 27.x, which supports
  AddressV2 credentials (main's version targeted the 26-era single-arg API
  and would not compile; protocol-next's hardcoded false, which would have
  silently broken UseUpgradedAuth simulation on protocol-27 ledgers)
- preflight_test.go: the 'silently ignored on prev' test encoded the
  26-era-prev contract and hardcoded protocol 26 (no bundled host anymore);
  updated to assert the flag is honored on the prev (27) host

Train: stellar/go-stellar-sdk#5967

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…to-feature-full-history-2026-08-04

Brings the Protocol 28 GA stack (go-stellar-sdk v0.7.0, soroban-env-host
28.0.1/27.0.1, stellar-xdr 28.0.0) plus the new blaster and go-bench
perf-eval legs into the feature branch, fixing the dependency-sanity-checker
mismatch between the Go SDK's P28 XDR pin and the Rust P27 pins.

# Conflicts:
#	.github/workflows/load-test-coordinator.yml
#	cmd/stellar-rpc/internal/rpcv1/integrationtest/infrastructure/docker/upgrades/*.p26->p28 (rename/rename)
#	cmd/stellar-rpc/internal/rpcv1/integrationtest/infrastructure/perf-eval/backfill-test/runner/instantiate.go
#	go.mod
#	go.sum
# Relocated main's new perf-eval/endpoint-load-test and perf-eval/go-bench
# from the pre-reorg path into cmd/stellar-rpc/internal/rpcv1/.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@socket-security

Copy link
Copy Markdown

@karthikiyer56
karthikiyer56 requested a review from a team August 4, 2026 21:14

@Shaptic Shaptic left a comment

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.

Make sure you merge not squash 👍

@karthikiyer56

Copy link
Copy Markdown
Contributor Author

Make sure you merge not squash 👍

Yup

@karthikiyer56
karthikiyer56 merged commit 34dcaef into feature/full-history Aug 4, 2026
14 checks passed
@karthikiyer56
karthikiyer56 deleted the karthik/merge-main-into-feature-full-history-2026-08-04 branch August 4, 2026 21:27
karthikiyer56 added a commit that referenced this pull request Aug 5, 2026
feature/full-history merged origin/main (#920), bringing the P28 GA
stack — soroban-env-host-curr =28.0.1 / -prev =27.0.1, stellar-xdr
=28.0.0, the P27+P28 CI matrix — plus the rpcv2 getEvents cursor/codec
(#914). This branch's SDK bump to v0.7.1 pins the P28 XDR (9c9c1459),
so with the Rust side now on the same revision the
dependency-sanity-checker failure on this PR goes away.

Conflicts: go.mod/go.sum only — resolved to go-stellar-sdk v0.7.1 (this
branch's pin; the feature branch carries v0.7.0 from main) and
regenerated go.sum via go mod tidy.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.

6 participants