Skip to content

component-test sibling checkout is a workspace-wide prerequisite; docs and setup.sh treat it as conformance-only #304

Description

@lann

All three -ct crates are root workspace members with path deps into ../component-test (e.g. guest-ct: component-test-sdk = { path = "../../../component-test/crates/component-test-sdk" }). Workspace load precedes package selection, so without the sibling checkout even cargo metadata --no-deps fails (reproduced): rust-analyzer project load, just fmt-check, just clippy, just test, just check (3 of 4 legs), just rust-docs, just mutants, every demo/componentize/wpt recipe that builds a crate — all fail. The error is cargo's raw missing-path-dep chain; nothing names .component-test-rev, the clone URL, or a remedy.

Meanwhile:

  • scripts/setup.sh does not clone the sibling (it does install driver-ct/jco npm deps — partially provisioning the conformance path while omitting the piece every cargo command needs).
  • AGENTS.md/README "Build & run" prerequisites do not mention it; the requirement appears only in conformance-scoped rows. README's first quick-start command (just test) fails on a fresh machine.
  • CI knows better: every Rust-touching job clones the sibling at the pin (ci.yml), as do timing-lab.yml and pages.yml.

Fix shape: state the sibling as a top-level prerequisite in AGENTS.md/README; have setup.sh clone it and check it out at .component-test-rev (idempotent, like its other steps), or at minimum emit a preflight check with the exact remedy command.

The PR #274 body frames the arrangement as temporary ("Publishing component-test to registries retires this arrangement") — until that lands, the docs should match the actual blast radius.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions