Skip to content

fix!: re-sync WIT to restored [email protected]; move process host import to @1.1.0#62

Merged
joshuajbouw merged 2 commits into
mainfrom
fix/resync-wit-process-dual-version
Jul 2, 2026
Merged

fix!: re-sync WIT to restored [email protected]; move process host import to @1.1.0#62
joshuajbouw merged 2 commits into
mainfrom
fix/resync-wit-process-dual-version

Conversation

@joshuajbouw

Copy link
Copy Markdown
Contributor

The contracts submodule pinned wit@812c833, where file-injection had been added in place to the frozen astrid:[email protected] (wit#15). That structurally broke every capsule built against the published contract on the 0.9.0 host (astrid-runtime/astrid#1107). wit#20 (merged) restores @1.0.0 byte-for-byte to its published shape and re-homes injection on an additive @1.1.0.

This re-syncs the SDK to that:

  • Bumps contracts 812c833 → 278dbca; build.rs re-stages both process versions into wit-staging/.
  • Moves the process host import in the astrid-sys world capsule from @1.0.0@1.1.0 (the same move http already made), so the SDK still exposes the Command::inject_* file-injection API — now backed by @1.1.0. Alias becomes astrid::process1_1_0::host (bindgen suffixes when both versions are staged, exactly as http1_1_0).
  • CHANGELOG: the injection entry and the submodule-bump entry updated to the restored-shape reality.

Host-floor note (intentional, per decision): a capsule rebuilt against this SDK imports astrid:process/[email protected] and requires a host that serves it (astrid ≥ 0.9.1). Published capsules on the 0.7.1 SDK import the restored @1.0.0 and are unaffected — the dual-version 0.9.1 host serves both.

No version bump here (release is a separate PR). Pairs with astrid-runtime/wit#20 (merged) and astrid-runtime/astrid#1108.

Verification

  • cargo build --workspace, cargo clippy --workspace -- -D warnings, cargo test --workspace — all green.
  • scripts/sync-contracts-wit.sh --check — in sync (process is a host/ package, so the interface bundle is unchanged).
  • Confirmed the Command::inject_* surface resolves against [email protected].

https://claude.ai/code/session_01NvX2tE7tgXuCRevqqiXTGU

…mport to @1.1.0

The contracts submodule pinned wit@812c833, where file-injection had been
added in-place to the frozen astrid:[email protected] (wit#15). wit#20 restores
@1.0.0 to its published shape and re-homes injection on an additive @1.1.0.
This bumps the pin to 278dbca, re-stages both process versions, and moves
the process host import in the astrid-sys world from @1.0.0 to @1.1.0
(same move http made) — so the SDK keeps exposing the file-injection API
(now backed by @1.1.0) while capsules built against the published pre-#15
contract keep loading on the dual-version host.

A capsule rebuilt against this SDK imports astrid:process/[email protected] and so
requires a host that serves it (astrid >= 0.9.1). Published capsules on the
0.7.1 SDK are unaffected — they import the restored @1.0.0.

Pairs with astrid-runtime/wit#20 (merged) and astrid-runtime/astrid#1108.

Claude-Session: https://claude.ai/code/session_01NvX2tE7tgXuCRevqqiXTGU
Copilot AI review requested due to automatic review settings July 2, 2026 19:45

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request bumps the contracts submodule to 278dbca and transitions the process file-injection feature from the frozen astrid:[email protected] contract to a new additive astrid:[email protected] contract. This restores the 1.0.0 contract to its published state to avoid breaking existing capsules, introduces the new 1.1.0 WIT definition, and updates the SDK and system imports to use the new version. There are no review comments, so I have no additional feedback to provide.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Re-synces the Rust SDK’s staged WIT contracts to match the restored published shape of astrid:[email protected], and shifts the SDK’s process host import to the additive astrid:[email protected] so file-injection remains available while preserving compatibility for existing capsules.

Changes:

  • Updates the changelog to reflect the contracts bump to 278dbca and the process host import move to @1.1.0.
  • Stages a new astrid:[email protected] WIT package (containing file-injection) and removes the in-place injection additions from the frozen @1.0.0 WIT.
  • Switches the synthetic capsule world (and SDK wrapper binding alias) to import/bind astrid:process/[email protected].

Reviewed changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
CHANGELOG.md Updates release notes to match the restored [email protected] and new [email protected] reality.
astrid-sys/wit-staging/deps/[email protected]/[email protected] Adds the new additive [email protected] contract including file injection.
astrid-sys/wit-staging/deps/[email protected]/[email protected] Restores [email protected] by removing the injection-related surface.
astrid-sys/src/lib.rs Updates the synthetic capsule world import to astrid:process/[email protected].
astrid-sdk/src/lib.rs Switches SDK wrapper bindings to astrid_sys::astrid::process1_1_0::host.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread astrid-sys/wit-staging/deps/[email protected]/[email protected] Outdated
Comment thread astrid-sdk/src/lib.rs
- astrid-sdk process module doc now states the @1.1.0 host binding and
  the astrid >= 0.9.1 host floor (was still claiming @1.0.0).
- Bump contracts to wit main (a268eb3): [email protected] error-code
  too-large doc now names all three caps (4 MiB spawn prelude, 1 MiB
  per write-stdin call, cumulative quota); restage wit-staging copy.
@joshuajbouw joshuajbouw merged commit 9a556f7 into main Jul 2, 2026
8 checks passed
@joshuajbouw joshuajbouw deleted the fix/resync-wit-process-dual-version branch July 2, 2026 20:33
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