Skip to content

chore: Add supply-chain provenance guidance to agent skills - #6644

Open
antonis wants to merge 1 commit into
feat/extend-agents-skillsfrom
feat/agents-skills-supply-chain
Open

chore: Add supply-chain provenance guidance to agent skills#6644
antonis wants to merge 1 commit into
feat/extend-agents-skillsfrom
feat/agents-skills-supply-chain

Conversation

@antonis

@antonis antonis commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Stacked on #6643 — please review/merge that first. This PR's base is feat/extend-agents-skills, so its diff shows only the supply-chain slice.

📢 Type of change

  • Bugfix
  • New feature
  • Enhancement
  • Refactoring

📜 Description

Adds supply-chain / dependency-provenance guidance to the agent skills:

  • code-guidelines/references/supply-chain.md — new reference: the rule (a newly added/changed reference must be a real artifact and under a trusted namespace), a trust hierarchy (Sentry scope → official publisher → pinned ref), a per-surface table (npm, .vscode extensions, GitHub Actions, iOS/Android native, Ruby), verification commands, and what existing checks (Dependabot / CodeQL / Warden) do and don't cover.
  • code-guidelines/SKILL.md — an "Adding dependencies" rule pointing at the reference.
  • review/SKILL.md — a "Supply-chain / dependency provenance" bullet in the Correctness axis.

💡 Motivation and Context

Catch issues like #6640, where a recommended VS Code extension (nickelpack.oxlint) pointed at a publisher namespace that isn't the tool's owner (oxc). The additive value over the shared getsentry/skills coverage is provenance of newly introduced references and the surfaces those miss — chiefly editor extensions.

💚 How did you test it?

Not runtime-testable (Markdown). Verified links resolve, the .vscode/Dependabot claims match the repo, and the reference is cited from both code-guidelines and review.

📝 Checklist

  • I added tests to verify changes.
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled.
  • I updated the docs if needed.
  • I updated the wizard if needed.
  • All tests passing.
  • Public API changes reviewed by another Mobile SDK team member or implemented according to the develop docs spec.
  • No breaking changes.

🔮 Next steps

Once #6643 merges, this PR's base auto-retargets to main.

Add a reference doc plus a code-guidelines rule and a review Correctness
bullet so newly added or changed third-party references — npm deps, VS Code
extension recommendations, GitHub Actions, and native deps — are verified as
real artifacts under a trusted namespace before landing. Complements the
shared getsentry/skills supply-chain coverage and adds the surface those miss
(chiefly editor extensions), motivated by the nickelpack.oxlint case in #6640.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Semver Impact of This PR

None (no version bump detected)

📋 Changelog Preview

This is how your changes will appear in the changelog.
Entries from this PR are highlighted with a left border (blockquote style).


  • chore: Add supply-chain provenance guidance to agent skills by antonis in #6644
  • chore: Extend agents.toml and .agents/skills (Extend Warden setup #6637) by antonis in #6643
  • test(ios): Speed up sentry-xcode-scripts tests by antonis in #6633
  • fix: Update recommended vscode extensions by antonis in #6640
  • chore(deps): bump actions/setup-java from 5.7.0 to 6.0.0 by dependabot in #6636
  • chore(deps): bump the codeql-action group with 3 updates by dependabot in #6635
  • chore(deps): update JavaScript SDK to v10.72.0 by github-actions in #6634
  • chore(e2e): Bump E2E tests to React Native 0.87.0 by antonis in #6616
  • chore(deps): update CLI to v3.7.0 by github-actions in #6632
  • feat(tracing): Copy app start vitals onto standalone children by buenaflor in #6631
  • chore(deps): update Cocoa SDK to v9.26.1 by github-actions in #6623
  • fix(ios): Force-load the Sentry static archive to keep ObjC category methods by antonis in #6615
  • feat(core): Forward feature flag evaluations to the native SDKs by antonis in #6613
  • chore(deps): update Android SDK to v8.54.0 by github-actions in #6624
  • chore(deps): update Sentry Android Gradle Plugin to v6.20.0 by github-actions in #6627

🤖 This preview updates automatically when you update the PR.

@github-actions

github-actions Bot commented Sep 1, 2026

Copy link
Copy Markdown
Contributor
Fails
🚫 Pull request is not ready for merge, please add the "ready-to-merge" label to the pull request

Generated by 🚫 dangerJS against 98cfa8e

@antonis
antonis marked this pull request as ready for review September 1, 2026 10:05

### Adding dependencies

When adding or changing any third-party reference — an npm dependency, a `.vscode/extensions.json` recommendation, a GitHub Action (`uses:`), or a native dependency (Podfile / Gemfile / Gradle) — verify it is published by its legitimate owner **before** referencing it. The tool being real is not enough: the *namespace* must be one the project trusts. Prefer Sentry's own scope/org (`@sentry/*`, `getsentry/*`), then the artifact's documented official publisher, and pin to an exact version / full commit SHA rather than a floating tag. Treat an unscoped or unfamiliar-publisher name as a supply-chain risk until proven otherwise — a claimable namespace lets an attacker ship code to every contributor. See [references/supply-chain.md](references/supply-chain.md) for the surface-by-surface checklist and verification commands.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

👍

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

In regard to this line, what is a legitimate owner ? The package could come from a legitimate owner but their project/account got compromised, and a malicious release was made using the legitimate owner.

Might be worth to add something like, even if the third-party dependency comes from a legitimate owner, double check for any news that the given version is not malicious

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants