Fix build broken on main: missing github field + non-exhaustive match#9
Merged
Merged
Conversation
main's HEAD was broken in two independent ways, unrelated to the earlier moat-strategy docs PR (#8) that surfaced this — its CI "build" check failed and the failure turned out to have nothing to do with that PR's diff: 1. `cargo build --workspace` (default features) failed outright: the GitHub MCP connector work added `github: Option<GitHubTooling>` to `SupervisorOptions` and `github: GitHubMcpArgs` to `FleetServeArgs`, but `crates/altius-cli/src/serve_command.rs` was never updated to match — three struct literals (`options_for_run`, `build_supervisor_options`, and the internal `FleetServeArgs` reconstruction in `serve_protocols`) still omitted the new field. Fixed by wiring GitHub MCP attachment through the same pattern already used correctly for browser MCP in the same file, and already correct in `fleet_command.rs::run_fleet_cmd` (the reference implementation this mirrors). 2. `cargo clippy --workspace --all-features -D warnings` (what CI's build job actually runs) additionally failed: `McpClientError` gained a `MissingCredential(String)` variant, but `altius-mcp/src/agent_lsp.rs::map_error`'s match wasn't updated, making it non-exhaustive. Fixed by mapping it to `AgentLspError::InvalidConfig`. Also includes the pre-existing `cargo fmt` drift already found while investigating the fmt-check failure on PR #8 (files unrelated to that PR's docs-only diff). Verified before committing: `cargo build --workspace`, `cargo fmt --all -- --check`, `cargo clippy --workspace --all-targets --all-features --locked -- -D warnings`, and `cargo test --workspace --all-features --locked` (309 passed, 0 failed) all pass clean. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PSnNk5ivBeSBCN2LUhzBix
The previous commit added the missing McpClientError::MissingCredential match arm in agent_lsp.rs by hand but never re-ran `cargo fmt` afterward — clippy and tests were re-verified, but formatting wasn't, so the arm's manual layout didn't match what rustfmt produces. This is exactly what broke PR #9's own CI `build` check (`cargo fmt --all -- --check`). Verified clean this time: cargo build --workspace (0), cargo fmt --all -- --check (0), cargo clippy --workspace --all-targets --all-features --locked -D warnings (0). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01PSnNk5ivBeSBCN2LUhzBix
daemon-blockint-tech
marked this pull request as ready for review
July 19, 2026 05:25
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
main's HEAD (commit9c324bb, after merging #8) was broken in two independent ways — discovered while investigating why PR #8's CIbuildcheck failed, even though that PR only touched two markdown files. Both issues are pre-existing onmainand unrelated to #8's diff.1. Default build failed outright (
cargo build --workspace)The GitHub MCP connector work added
github: Option<GitHubTooling>toSupervisorOptionsandgithub: GitHubMcpArgstoFleetServeArgs, butcrates/altius-cli/src/serve_command.rswas never updated to match — three struct literals still omitted the new field:options_for_run— missinggithub: template.github.clone()build_supervisor_options— never attached GitHub MCP tooling at allFleetServeArgsreconstruction insideserve_protocols— missinggithub: args.github.clone()Fixed by wiring GitHub MCP attachment through the same pattern already used correctly for browser MCP in the same file (
attachments.attach(...)→McpTools::github→GitHubTooling), mirroring the reference implementation that was already correct infleet_command.rs::run_fleet_cmd.2.
cargo clippy --workspace --all-features -D warningsfailed (this is what CI'sbuildjob actually runs)McpClientErrorgained aMissingCredential(String)variant, butaltius-mcp/src/agent_lsp.rs::map_error's match on it wasn't updated, making it non-exhaustive (E0004). This only surfaces under--all-features, so the defaultcargo build/cargo testdidn't catch it. Fixed by mapping it toAgentLspError::InvalidConfig.3. Pre-existing
cargo fmtdriftAlso includes the
cargo fmt --allfixup already identified while diagnosing the fmt-check failure on #8 — all in files unrelated to that PR's docs-only diff.Verification
All run clean before committing:
cargo build --workspacecargo fmt --all -- --checkcargo clippy --workspace --all-targets --all-features --locked -- -D warningscargo test --workspace --all-features --locked— 309 passed, 0 failed🤖 Generated with Claude Code
https://claude.ai/code/session_01PSnNk5ivBeSBCN2LUhzBix
Generated by Claude Code