Skip to content

Integration CI: uv sync fails building geodude (mj-viser workspace source not resolved) #74

@siddhss5

Description

@siddhss5

Symptom

integration CI fails at the Bootstrap siblings → uv sync step (has for 5+ days, both matrix legs), before any tests run:

× Failed to build `geodude @ file:///home/runner/work/robot-code/robot-code/geodude`
├─▶ Failed to parse entry: `mj-viser`
╰─▶ `mj-viser` references a workspace in `tool.uv.sources`
    (e.g., `mj-viser = { workspace = true }`), but is not a workspace member

Puzzle (all three of these are individually correct)

  • Root pyproject.toml [tool.uv.workspace].members includes mj_viser.
  • mj_viser/pyproject.toml [project].name = "mj-viser" (matches).
  • geodude/pyproject.toml (origin/main) declares both:
    • dep: "mj-viser @ git+https://github.com/personalrobotics/mj_viser.git"
    • source: [tool.uv.sources] mj-viser = { workspace = true }

So mj-viser is a member, yet uv reports it isn't — only while building geodude.

Likely root cause

uv is building geodude as an isolated sdist rather than installing it as an editable workspace member. In that isolated build there is no workspace context, so geodude's own { workspace = true } sources can't resolve → "not a workspace member". The git+ URL dependency on mj-viser (geodude line ~26) is the most likely trigger for the out-of-workspace build.

Candidate fixes (for the owner)

  • Drop the git+… URL deps in geodude/pyproject.toml for siblings that are workspace members (rely on the { workspace = true } source alone), or
  • Pin/adjust uv so workspace members aren't built in isolation, or
  • Confirm whether a recent uv release changed workspace-source build semantics.

Scope / not this

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions