Skip to content

process@1.0.0 was mutated in place by #15 — restore the frozen shape, move file-injections to process@1.1.0 #19

Description

@joshuajbouw

wit #15 added file-injections: list<file-injection> to spawn-request inside the frozen astrid:process@1.0.0 package. That is the same frozen-WIT-mutation failure mode #890 identified: the component-model linker matches package versions structurally, so every capsule built against the published pre-#15 contract now fails to instantiate on a host serving the mutated 1.0.0.

Confirmed blast radius (fresh-install verification of astrid 0.9.0): the sage supervisor capsule v0.2.0 fails install with component imports instance astrid:process/host@1.0.0, but a matching implementation was not found in the linker; astrid-capsule-shell v0.2.0 fails to load with the same signature. Every capsule importing astrid:process and built with the published SDK is affected: astrid-sys 0.7.1 (crates.io) embeds the post-#12/#14, pre-#15 shape — spawn-persistent/write-stdin present, file-injection absent — verified by extracting the crate.

Fix (the astrid:http@1.0.0/1.1.0 dual-version precedent):

  1. Restore host/process@1.0.0.wit to the pre-feat(process): read-only file-injection in spawn-request #15 shape (83ebc6c) — byte-compatible with what sdk 0.7.1 ships.
  2. Add host/process@1.1.0.wit carrying the file-injections extension.
  3. Core stages + serves both versions off the same linker (as bindings.rs already does for http 1.0/1.1); sdk re-syncs its mirror before its next release.

Core-side serving tracked in the astrid repo (cross-linked).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions