Skip to content

ci: bump the composition test's substrate pin to v0.85.0 - #6

Merged
scttfrdmn merged 1 commit into
mainfrom
ci/substrate-v0.85.0
Aug 2, 2026
Merged

ci: bump the composition test's substrate pin to v0.85.0#6
scttfrdmn merged 1 commit into
mainfrom
ci/substrate-v0.85.0

Conversation

@scttfrdmn

Copy link
Copy Markdown
Contributor

Bumps the engine-composition CI pin substrate v0.81.0 → v0.85.0. CI-only; the adapter itself is unchanged.

Verified, not assumed

Ran the composition test unmodified against a real substrate server at v0.85.0 (plus a locally-built spawn) before touching the pin. Both TESTs pass: unseeded ⇒ nominal success, seeded exit 7 ⇒ the engine surfaces code 7. The seedable task-completion contract (POST/DELETE /v1/spawn/task-completion, snake_case payload) is byte-identical across v0.81→v0.85.

Why take it

v0.85.0 carries substrate#457, which we filed from this workstream: HeadObject did not resolve a synthesized task-completion, so HEAD returned 404 for a key GET served with a 200 and a full body — a self-contradiction real S3 never produces.

This test never depended on that path, because spawn's fetchCompletion calls GetObject directly and treats NoSuchKey as “still running”. That was luck rather than design, and the comment now says so, along with the practical consequence: aws s3 cp on a completion record — the command spawn task run prints for users — could not work below v0.85.0, because the CLI HEADs before it GETs.

Confirmed fixed locally: aws s3 cp now returns the record, and HEAD's Content-Length (124) matches the bytes GET actually returns. The clock gate agrees on both verbs too — a HEAD before the seeded ended_at is a 404, exactly as the GET is.

No CHANGELOG entry: the composition test is itself still unreleased, so this is internal detail inside a feature no user has seen yet.

Verified locally against a real v0.85.0 server: the seedable task-completion
contract is byte-identical and both TESTs pass unmodified.

v0.85.0 carries substrate#457, which we filed: HeadObject did not resolve a
synthesized completion record, so HEAD answered 404 for a key GET served with
a 200 body. This test never depended on it — spawn's fetchCompletion calls
GetObject directly — but `aws s3 cp` on a completion record was broken below
v0.85.0, so the comment now warns against reaching for it under an older pin.
@scttfrdmn
scttfrdmn merged commit 6fae0bd into main Aug 2, 2026
2 checks passed
@scttfrdmn
scttfrdmn deleted the ci/substrate-v0.85.0 branch August 2, 2026 01:59
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