docs(policy): declare a path-scoped waiver for the Claude Agent SDK npm link - #71
docs(policy): declare a path-scoped waiver for the Claude Agent SDK npm link#71yakimoto wants to merge 1 commit into
Conversation
…pm link Refs wave-av/wave-context#91 (the mcp-server half; wave-dispatch already carries its own waivers, so once this lands the wave-context tracking issue can be closed there). The rendered README, llms.txt and manifest.json all link `https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk` — the dependency this server is built on, and legitimately part of "for consumers already running inside a Claude Agent SDK …" prose. Every publish-domain scan therefore reports 3 unwaived findings on this repo, all the same URL. Measured before this change from a scan on `origin/main`: ✗ @wave-av/mcp-server — 3 unwaived, 0 waived: [README.md] disallowed-url: https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk [llms.txt] (same URL) [manifest.json] (same URL) Measured after this waiver, with the same CLI: ~ @wave-av/mcp-server — 0 unwaived, 3 waived fleet: 0 unwaived / 3 waived Not a bare host waiver ---------------------- Per wave-av/wave-context#104 (measured on THIS repo), `{host: "www.npmjs.com"}` alone silently excuses every npm link in the repo forever, including one added years later by someone who never saw this diff. `pathPrefix` scopes the exception to the exact package. The matcher is segment-boundary — `matchesPathPrefix` — so a waiver for `/package/@anthropic-ai/claude-agent-sdk` matches only that package: verified live by mutation. Mutations, killed by the CLI itself and reverted with the inverse edit: · pathPrefix swapped to `/package/@anthropic-ai/some-other-pkg` -> 3 unwaived (does not waive) · pathPrefix swapped to `/package/@some-other-owner/claude-agent-sdk` -> 3 unwaived · pathPrefix set to `/package/@anthropic-a` (prefix-injection) -> 3 unwaived (segment boundary) Owner-only `/package/@anthropic-ai` DOES waive `/package/@anthropic-ai/*`, and that is the intended semantics of the prefix. The narrower single-package spelling is used here to keep the scope truthful to the reason. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_48999263-b13c-434e-a7c8-b2978026f44c) |
|
Warning Review limit reachedYou’ve reached a temporary PR review limit under our Fair Usage Limits Policy. Next review available in: 1 minute Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
Comment |
|
Closing as a duplicate of #69, which predates this by a day and declares the identical waiver (same host, same I opened this without checking for an existing PR on the repo first — my mistake, and the check that would have caught it is The measurement in this PR still stands and applies to #69 unchanged: before, |
Refs wave-av/wave-context#91 — the mcp-server half of its acceptance criterion.
wave-dispatchalready carries its own waivers (0 unwaived / 12 waived), so once this lands, wave-context#91 can be closed.The findings
The rendered README, llms.txt, and manifest.json all link
https://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk— the dependency this server is built on, and legitimately part of "for consumers already running inside a Claude Agent SDK …" prose. Every publish-domain scan reports 3 unwaived findings on this repo, all the same URL.Before, from a scan on
origin/main:After this waiver, same CLI:
Why path-scoped, not host-scoped
Per wave-av/wave-context#104, which was measured on this very repo:
{host: "www.npmjs.com"}alone silently excuses every npm link in the repo forever, including one added later by someone who never saw this diff.pathPrefixscopes the exception to the exact package. The matcher is segment-boundary (matchesPathPrefix) — verified live by mutation.Mutations killed by the policy CLI itself, each reverted with the inverse edit:
/package/@anthropic-ai/some-other-pkg/package/@some-other-owner/claude-agent-sdk/package/@anthropic-a(prefix-injection)Owner-only
/package/@anthropic-aidoes waive/package/@anthropic-ai/*— that's the intended semantics of the prefix. The narrower single-package spelling is used here to keep the scope truthful to the reason.🤖 Generated with Claude Code
Note
Low Risk
Metadata-only policy waiver in
.wave/repo.json; no runtime, auth, or API behavior changes.Overview
Adds a
policyWaiversentry in.wave/repo.jsonso publish-domain scans no longer flag three unwaiveddisallowed-urlfindings forhttps://www.npmjs.com/package/@anthropic-ai/claude-agent-sdk(README, llms.txt, manifest).The waiver is path-scoped (
pathPrefix/package/@anthropic-ai/claude-agent-sdkonwww.npmjs.com), not host-wide, so other npm links added later stay reportable per wave-context#104.Also fixes the JSON file terminator (newline after closing
}).Reviewed by Cursor Bugbot for commit cb44630. Configure here.
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is enabled.Summary by cubic
Add a path-scoped publish-domain waiver for the npm link to
@anthropic-ai/claude-agent-sdkin docs to stop false-positive scan findings. Result: 0 unwaived, 3 waived. Refs wave-av/wave-context#91 (mcp-server half).policyWaiversentry in.wave/repo.jsonforwww.npmjs.comwithpathPrefix/package/@anthropic-ai/claude-agent-sdk.Written for commit cb44630. Summary will update on new commits.