Skip to content

fix(sdk): accept @agent-relay/sdk and harness-driver 16 as optional peers - #700

Merged
kjgbot merged 1 commit into
mainfrom
fix/sdk-peer-agent-relay-16
Nov 4, 2026
Merged

kjgbot merged 1 commit into
mainfrom
fix/sdk-peer-agent-relay-16

Conversation

@kjgbot

@kjgbot kjgbot commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

Why

The agent-relay 16.0.0 release (publish run 41807496212) failed in Build & Version. Relay's packages/cli/src/cli/relayflows-peer-compat.test.ts installs the pinned @relayflows/sdk@2.0.60 beside @agent-relay/sdk and @agent-relay/harness-driver at the version being released. 2.0.60's optional peer range is >=12.3.1 <13 || >=15.1.0 <16, so npm rejects 16.0.0 with ERESOLVE. Nothing was published.

Change

  • packages/sdk peers @agent-relay/sdk and @agent-relay/harness-driver: >=12.3.1 <13 || >=15.1.0 <17 (the lockfile's root entry is updated to match).

Compatibility

git diff v15.1.1 origin/main -- packages/sdk packages/harness-driver in relay is empty. The 16.0.0 major is the desktop core (agent-relay-probe) contract, so the SDK surface flows uses is the same as 15.1.x. The relay test still requires the next major (17) to be rejected, and <17 does that.

Tests

packages/sdk vitest on this Mac: the same 18 files fail on origin/main without this change (live, kernel and CLI tests that need a local relayflowd or cloud sign-in). With the change, one more live test failed once (authored-parallel-run-live, "f.run after done()", a local runtime flake). A peer range in package.json can't change runtime behavior.

After merge

  1. Publish @relayflows/sdk (patch: 2.0.61).
  2. In relay, bump the @relayflows/sdk pin in the root package.json (dependency and overrides) and in packages/cli/package.json.
  3. Re-dispatch agent-relay publish.yml with custom_version=16.0.0.

🤖 Generated with Claude Code


Autofix with [code]smith
Open in [code]smith · Need help on this PR? Tag @codesmith-bot with what you need.

…eers

agent-relay 16.0.0's release gate (relay packages/cli relayflows-peer-compat
test) installs the pinned @relayflows/sdk beside the released Relay packages;
2.0.60's peer range stops at <16, so the 16.0.0 publish fails with ERESOLVE.
@agent-relay/sdk and @agent-relay/harness-driver are unchanged between v15.1.1
and relay main (the 16.0.0 major is the desktop probe), so 16 is compatible.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Nov 4, 2026 •

Copy link
Copy Markdown

Important

  • Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 6f9d0cce-6b75-4660-9508-1c0b8cd4bb5c
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@kjgbot
kjgbot marked this pull request as ready for review November 4, 2026 09:59
@greptile-apps

greptile-apps Bot commented Nov 4, 2026 •

Copy link
Copy Markdown

RetriggerView in GreptileConfidence Score: 5/5

[Low impact] This metadata-only change appears safe to merge.

Summary

Widens the optional peers @agent-relay/sdk and @agent-relay/harness-driver to accept stable 16.x releases.

  • The SDK accepts Relay 16 as an optional peer version.

Reviews (1) · Last reviewed commit: "fix(sdk): accept @agent-relay/sdk and ha..." · Reviewed by Greptile

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 2 files

View guided diff | Turn on auto-fix | Re-trigger cubic

@kjgbot

kjgbot commented Nov 4, 2026

Copy link
Copy Markdown
Contributor Author

maintainability lens — PASS

Maintainability review — PR #700

Scope: peer dependency upper bounds widened from <16 to <17 for @agent-relay/harness-driver and @agent-relay/sdk in packages/sdk/package.json:78-79 (and mirrored in packages/sdk/package-lock.json:38-39). No code or test changes.

Blockers

None. The change is a one-token bump in a well-scoped file and the lockfile mirrors it exactly.

Concerns

  1. No captured evidence that v16 is compatible — packages/sdk/package.json:78-79. Widening a peer range to admit a new major is an implicit claim ("v16 works with this SDK"). AGENTS.md is explicit that verification claims carry the literal command and output. Nothing in this diff — no test, no type-test fixture update under type-tests/, no CI matrix entry, no PR-message-equivalent in a CHANGELOG — tells a future reader whether v16 was actually exercised or whether this is speculative. The next bump to <18 will be written by someone who assumes the previous bump was validated; if it wasn't, the drift compounds silently.

  2. The disjoint range is undocumented — packages/sdk/package.json:78-79 reads >=12.3.1 <13 || >=15.1.0 <17. A stranger in six months cannot tell from this file why 13.x and 14.x are excluded, or whether that exclusion is a hard incompatibility (don't ever re-admit) or a soft "we never tested" (safe to widen if needed). The implicit contract is the kind of thing AGENTS.md calls out: "comments that assert what the code does not do." Here the code is silent where it should speak. A one-line adjacent comment, or a peerDependencies note in the SDK README, would make the range self-explanatory.

  3. Dev vs. peer version skew — packages/sdk/package.json:62 still pins @agent-relay/cli-surface: ^12.2.4 in devDependencies while peers are now allowed up to 16.x. The SDK's own tests therefore exercise the 12.x shape; v15 and v16 behavior is tested only transitively by consumers. If v16 moved a symbol the SDK depends on, our local typecheck and vitest runs pass while installs against the new peer break. This is the exact "test that would not fail if the behavior broke" pattern the lens is asked to flag.

Notes

  • packages/sdk/package-lock.json:38-39 matches the manifest change exactly — no dep-tree churn, no new resolutions, good lockfile hygiene.
  • The change is cheaply reversible if a v16 regression surfaces downstream, which bounds the maintainability risk.

REVIEW_PASSED

@kjgbot

kjgbot commented Nov 4, 2026

Copy link
Copy Markdown
Contributor Author

history lens — PASS

Blockers: none. PR #700 does not establish any of the three rejection conditions.

  • Repeated mistake: packages/sdk/package.json, lines 78–79 widens only the second peer-version interval from <16 to <17. It preserves the existing 12.3.x interval and excludes versions 13–14 and 17 onward. I found no relevant DRIVE-LOG entry recording a deliberate removal of Relay 16 support that this change reverses.
  • New RFC contradiction: The matching change in packages/sdk/package-lock.json, lines 38–39 keeps the lockfile’s root peer metadata aligned. Neither hunk adds kernel dependencies, bypasses the journal, changes execution semantics, or modifies a gate. No new contradiction with a settled RFC-0001 decision is apparent.
  • Untruthful commit message: Commit 295834d7 describes accepting SDK and harness-driver 16 as optional peers, which matches the diff. It makes no claim that tests passed or that additional implementation files changed.

Concerns: The commit’s assertion that the upstream SDK and harness-driver are unchanged between Relay 15.1.1 and the proposed 16 release was not independently established here. The PR body reports test failures without captured command output; those reports are insufficient as reproducible compatibility evidence, but do not demonstrate a false statement.

Notes: Publishing the SDK patch and updating Relay’s consumer pins are explicitly documented follow-ups. The older gate brief in ops/NEXT.md is unrelated to these two metadata hunks and supplies no blocker under this lens. This verdict addresses history and reporting honesty; it does not certify runtime compatibility.

REVIEW_PASSED
hook: Stop
hook: Stop Completed

@kjgbot
kjgbot merged commit eeb3f6d into main Nov 4, 2026
10 checks passed
@kjgbot

kjgbot commented Nov 4, 2026

Copy link
Copy Markdown
Contributor Author

structure lens — MISSING

@kjgbot

kjgbot commented Nov 4, 2026

Copy link
Copy Markdown
Contributor Author

🎯 review-swarm: FAILED (M:pass H:pass S:missing)

Lens transcripts posted as sibling comments above.

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.

1 participant