docs: add VEX integration guidance to dependabot prompt#22027
Conversation
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com> Agent-Logs-Url: https://github.com/github/gh-aw/sessions/c0065048-a819-4e92-a809-7fb603f91e10
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com> Agent-Logs-Url: https://github.com/github/gh-aw/sessions/b63c1592-a087-4cd0-8b4c-c1a9a0e17444
Done in ca87807. Replaced the detailed tables, JSON template, and sub-sections with two concise sentences that cover when to generate VEX, how to trigger the |
.github/aw/dependabot.md
Outdated
|
|
||
| When a Dependabot security alert is dismissed with a substantive security reason (`not_used`, `inaccurate`, or `tolerable_risk`), consider generating a [VEX (Vulnerability Exploitability eXchange)](https://openvex.dev/) statement to record the assessment as a machine-readable OpenVEX v0.2.0 document in `.vex/<ghsa-id>.json`. Alerts dismissed as `no_bandwidth` do not represent a security decision and should not produce a VEX statement. | ||
|
|
||
| Use the `vex-generator` agentic workflow (`workflow_dispatch`) to automate this. Learn about the OpenVEX format, purl construction, and dismissal-to-justification mappings from [openvex.dev](https://openvex.dev/) before generating statements. |
There was a problem hiding this comment.
@copilot this file does not know about vex-generator but it teaches about VEX in general
There was a problem hiding this comment.
Fixed in 898c086 — removed the vex-generator workflow reference. The sentence now simply points the agent to openvex.dev for the format, purl construction, and dismissal-to-justification details.
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com> Agent-Logs-Url: https://github.com/github/gh-aw/sessions/39604657-ea55-41c8-8209-90dbdf6ab77b
|
Hey A couple of things worth addressing before moving out of draft:
If you'd like a hand closing these out, here's a prompt you can hand to your coding agent:
|
There was a problem hiding this comment.
Pull request overview
Adds guidance to the Dependabot agent prompt for preserving security context when Dependabot alerts are dismissed, by recommending OpenVEX/VEX statements for certain dismissal reasons.
Changes:
- Added a new “Dismissed Dependabot Alerts and VEX” section describing when to generate an OpenVEX statement for dismissed alerts.
- Added instructions to consult openvex.dev for OpenVEX format, purl construction, and justification mappings.
- Updated “Related Documentation” with a link to the OpenVEX specification.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| When a Dependabot security alert is dismissed with a substantive security reason (`not_used`, `inaccurate`, or `tolerable_risk`), consider generating a [VEX (Vulnerability Exploitability eXchange)](https://openvex.dev/) statement to record the assessment as a machine-readable OpenVEX v0.2.0 document in `.vex/<ghsa-id>.json`. Alerts dismissed as `no_bandwidth` do not represent a security decision and should not produce a VEX statement. | ||
|
|
There was a problem hiding this comment.
The guidance says to write the VEX statement to .vex/<ghsa-id>.json, but this repo currently has no .vex/ directory. Please update the instructions to explicitly create the directory (e.g., mkdir -p .vex) and clarify whether the resulting JSON should be committed to the repo (and if so, consider adding a .gitkeep/README so the folder exists even before the first statement).
| When a Dependabot security alert is dismissed with a substantive security reason (`not_used`, `inaccurate`, or `tolerable_risk`), consider generating a [VEX (Vulnerability Exploitability eXchange)](https://openvex.dev/) statement to record the assessment as a machine-readable OpenVEX v0.2.0 document in `.vex/<ghsa-id>.json`. Alerts dismissed as `no_bandwidth` do not represent a security decision and should not produce a VEX statement. | |
| When a Dependabot security alert is dismissed with a substantive security reason (`not_used`, `inaccurate`, or `tolerable_risk`), consider generating a [VEX (Vulnerability Exploitability eXchange)](https://openvex.dev/) statement to record the assessment as a machine-readable OpenVEX v0.2.0 document. | |
| Recommended workflow: | |
| - Ensure the VEX directory exists at the repo root: `mkdir -p .vex` | |
| - Write the OpenVEX statement to `.vex/<ghsa-id>.json` (for example, `.vex/GHSA-xxxx-xxxx-xxxx.json`) | |
| - Add and commit the VEX JSON file alongside the corresponding Dependabot alert dismissal so the assessment is version-controlled | |
| - (Optional) Add a `.vex/.gitkeep` or `.vex/README.md` file and commit it so the `.vex/` directory exists in a fresh clone even before the first VEX statement is generated | |
| Alerts dismissed as `no_bandwidth` do not represent a security decision and should not produce a VEX statement. |
The
dependabot.mdagent prompt had no guidance on what to do when Dependabot alerts are dismissed — that security context was lost with no machine-readable record.Changes to
.github/aw/dependabot.mdnot_used,inaccurate,tolerable_risk), and when to skip (no_bandwidth)⚡ Quickly spin up Copilot coding agent tasks from anywhere on your macOS or Windows machine with Raycast.