Working agreement, and handle the Grok agent - #9
Merged
Merged
Conversation
added 2 commits
August 31, 2026 15:22
`agent-abstraction` gained `Agent::Grok` and this crate's matches did not,
so building the sidecar against 0.4.21 fails outright:
error[E0004]: non-exhaustive patterns: `Agent::Grok` not covered
That takes AgencyZero's CI down with it, because `stage-agency-proxy-sidecar.sh`
builds this from crates.io at the version `agency-proxy-client` pins, and
cargo resolves it against the newer abstraction.
`agent_name` and `agent_for_provider` gain the arm, and the two registry
sweeps that enumerate agents include it, so a Grok run reports account
usage and probe status like the other three.
The dependency was a path into a sibling checkout, which no CI can
resolve. It takes the published 0.4.21, which is where `Agent::Grok` is.
Closed
added 3 commits
September 18, 2026 01:18
Publishing the first crate makes the second one's dependency on it resolvable at the new version, which changes the lockfile. `--locked` then refuses, and the sequence aborts partway: some crates permanently on crates.io, the rest not. That is the one failure in this job that re-running cannot repair, because a version can never be re-uploaded. Packaging keeps `--locked`, where it means what it should: verify this builds from exactly the committed lockfile. nagoya, WorkTable, ps-observability and ps-blitz all publish without the flag already; this repository was the only one carrying it.
A hand-kept list of crate names in dependency order, a `cargo metadata` per crate to read one field out of the same output, and a jq query against the crates.io API per crate to ask whether a version existed. `cargo publish --workspace` does all of it, and knows which versions are already on the registry - it warns and skips those. Every line of that script was a second copy of something cargo already knew, and the copy is what goes stale when a crate is added.
`cargo publish --workspace` treats a version already on the registry as fatal for the whole run rather than a crate to skip, and a dry run only warns about it. That combination shipped a broken publish workflow in ps-vello: the first real run failed and uploaded nothing. The re-run of a partial release is the case worth surviving, since some crates are permanently live and the rest are not. That one error passes; anything else still fails the job.
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.
Two commits, both needed before this can publish.
1. The repository working agreement
One shared working agreement for coding agents, plus a minimal Claude import shim. Keeps repository-specific constraints in one place instead of duplicating them per tool.
2. Handle the Grok agent
agent-abstractiongainedAgent::Grokand this crate's matches did not, so building against 0.4.21 fails outright:This is currently taking AgencyZero's CI down — both
RustandPanel checks.scripts/stage-agency-proxy-sidecar.shbuilds this crate from crates.io at the versionagency-proxy-clientpins, and cargo resolves it against the newer abstraction, so the published 0.1.9 cannot compile.agent_nameandagent_for_providergain theGrokarm.account_usage,probe_providers) include it, so a Grok run reports account usage and probe status like the other three.agent-abstractionwas a path dependency into a sibling checkout, which no CI can resolve. It takes the published0.4.21, which is whereAgent::Grokis.0.1.10, since 0.1.9 is published and AgencyZero builds this from crates.io.Verified on this branch
cargo check -p agency-proxyagainst publishedagent-abstraction 0.4.21cargo check --locked— passes; the lockfile is tracked here and committed with the bumpcargo test --workspace— 24 passingcargo clippy --workspace --all-targets -- -D warnings— cleancargo fmt --check— cleanAgencyZero needs 0.1.10 published before its CI goes green.