Skip to content

docs(make): align local cargo commands with CI's jarvis-desktop exclusion#31

Merged
TYRMars merged 1 commit into
mainfrom
claude/review-project-improvements-GBGjJ
May 10, 2026
Merged

docs(make): align local cargo commands with CI's jarvis-desktop exclusion#31
TYRMars merged 1 commit into
mainfrom
claude/review-project-improvements-GBGjJ

Conversation

@TYRMars
Copy link
Copy Markdown
Owner

@TYRMars TYRMars commented May 10, 2026

Summary

cargo check/clippy/test --workspace fail on a stock Linux dev box because jarvis-desktop (Tauri) pulls in gdk-sys, which needs WebKitGTK + GObject system libs (libgtk-3-dev, libwebkit2gtk-4.1-dev, librsvg2-dev). Linux CI has worked around this with --exclude jarvis-desktop since the crate landed (see .github/workflows/rust.yml:47-55), but Makefile and the ## Commands blocks in CLAUDE.md / AGENTS.md still advertised the unflagged commands. First-time devs hit a confusing pkg-config failure on make check.

This PR aligns local commands with CI:

  • Makefile — thread WORKSPACE_EXCLUDE ?= --exclude jarvis-desktop through lint and test (and therefore check). Override with WORKSPACE_EXCLUDE= on a machine with the GTK toolchain installed if you want to lint the desktop crate locally.
  • CLAUDE.md / AGENTS.md — update the ## Commands snippet and the "Clippy is the gate" rule to match CI verbatim, with one paragraph explaining why and pointing at the Makefile escape hatch.

No code change. No functional behaviour change. Strictly a friction fix.

Test plan

  • make lint — passes (excludes jarvis-desktop, finishes in 0.27s on a warm cache)
  • make WORKSPACE_EXCLUDE= lint — confirms the override re-includes the crate (fails on this Linux sandbox without GTK, as expected)
  • cargo check --workspace --exclude jarvis-desktop — passes
  • make test — pre-existing environmental failures in this sandbox (test fixtures invoke git commit which gets rejected by a signing sidecar; apps/jarvis-web/dist/ not pre-built) are unrelated to this change. The Makefile edit is purely additive (excludes one crate from the test set) and cannot introduce failures in crates that are still included.
  • Verify on green CI once pushed.

https://claude.ai/code/session_01Vbqtn9CPhBJvUyT5mb7H7z


Generated by Claude Code

…sion

`cargo check/clippy/test --workspace` fail on Linux without WebKitGTK +
GObject system libs because `jarvis-desktop` (Tauri) pulls in `gdk-sys`.
Linux CI has worked around this with `--exclude jarvis-desktop` since the
crate landed; the Makefile and CLAUDE.md / AGENTS.md command snippets
still advertised the unflagged commands, so a fresh dev box hits a
confusing pkg-config failure on first `make check`.

- Makefile: thread `WORKSPACE_EXCLUDE ?= --exclude jarvis-desktop` through
  `lint` and `test` (and therefore `check`). Override with
  `WORKSPACE_EXCLUDE=` on a machine with the GTK toolchain installed.
- CLAUDE.md / AGENTS.md: update the `## Commands` block and the "Clippy
  is the gate" rule to match CI verbatim, with one paragraph explaining
  why and pointing at the Makefile escape hatch.

No code change; no functional behaviour change.
@TYRMars TYRMars marked this pull request as ready for review May 10, 2026 09:44
@TYRMars TYRMars merged commit 488ba7b into main May 10, 2026
1 check passed
TYRMars pushed a commit that referenced this pull request May 10, 2026
Bumps `[workspace.package].version` from 0.1.0 to 0.2.0 (cascades to
every member crate via `version.workspace = true`) and reframes the
existing `## Unreleased` block as the `0.2.0` release.

The 0.2.0 entry consolidates four PRs that landed since this CHANGELOG
was first introduced:

- PR #28 (OTel + model registry): observability stack, model registry +
  routing policy + capability-validating provider profile, fallback UI,
  Customize / Market panels, jarvis-cli telemetry/web subcommands.
- PR #29 (model + session race fix): session-switch race repair around
  `conversation <uuid> not found`, scoped-frame invariants, 4 new
  vitest cases.
- PR #30 (channels + sidebar + auto-mode refactor): WeCom WebSocket
  gateway adapter, Channels REST + Settings section, Codex-style chat
  sidebar with project groups, ~700 LOC trimmed from auto_mode.rs,
  RUN_TIMEOUT default 5m → 10m.
- PR #31 (Makefile + docs): align local cargo commands with CI's
  `--exclude jarvis-desktop` invariant.

Plus the original CHANGELOG-introducing PR's web composer / workspace
probe / WS metadata work.

Verified: `cargo check --workspace --exclude jarvis-desktop` passes,
Cargo.lock picks up the version bump (25 entries flipped).

`## Unreleased` is left as a fresh "_No changes yet._" placeholder so
future PRs have an obvious place to land.
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