@@ -133,7 +133,6 @@ is missing (the `rock/*` labels are applied by maintainers, not auto-labeled):
133133| --- | --- | --- |
134134| `rock/update` (`oci/<name>/image.yaml`) | Existing image-trigger update | [2](#2-security--vulnerability-gating-hard-gate), [3](#3-release-policy-risk-tracks-eol-versioning), [4](#4-source-recipe-rockcraftyaml-review) |
135135| `rock/new` (new `oci/<name>/`, new track/base) | New rock / new track / new base | [2](#2-security--vulnerability-gating-hard-gate), [3](#3-release-policy-risk-tracks-eol-versioning), [4](#4-source-recipe-rockcraftyaml-review), [5](#5-documentation-documentationyaml-checklist) |
136- | `rock/chore` (`oci/<name>/` digest/source/version bump) | Misc rock change, incl. bot/dependency updates | [2](#2-security--vulnerability-gating-hard-gate), [4](#4-source-recipe-rockcraftyaml-review), [7](#7-evidence--process-hygiene) |
137136| `rock/docs` (`oci/<name>/documentation.yaml`) | Documentation change | [5](#5-documentation-documentationyaml-checklist) |
138137| `onboarding` (issue) | Image onboarding request (intake) | [3](#3-release-policy-risk-tracks-eol-versioning), [5](#5-documentation-documentationyaml-checklist) |
139138| no `rock/*` label (`.github/`, `src/`, `tools/`) | Factory source / CI workflow | [6](#6-ci--github-actions-review), [7](#7-evidence--process-hygiene) |
@@ -189,14 +188,16 @@ verdicts as described above.
189188 comment**, not to silence findings blindly.
190189
191190- The `.trivyignore` file is **deprecated**. Do not accept new `.trivyignore`
192- files. When ignore entries are added or modified, require the applicable
193- rules to move to `ignored-vulnerabilities` in the image trigger. Legacy files
194- may remain temporarily because released revisions can still depend on them.
191+ files. When migrating an affected build to `ignored-vulnerabilities`, require
192+ every still-applicable rule to move, not only the changed rules. Once
193+ `ignored-vulnerabilities` is present, that build no longer uses
194+ `.trivyignore`. The legacy file may remain temporarily because previously
195+ released revisions can still depend on it.
195196 Example wording:
196197
197- > Let's move these changed entries to `ignored-vulnerabilities`; new use of
198- > `.trivyignore` in OCI Factory is deprecated. The legacy file may remain for
199- > released revisions that still depend on it.
198+ > Let's move every still-applicable rule to `ignored-vulnerabilities`; once
199+ > present, that build no longer uses `.trivyignore`. The legacy file may
200+ > remain for previously released revisions that still depend on it.
200201
201202- `ignored-vulnerabilities` requires a `version: 2` trigger. A `version: 1`
202203 trigger may stay as-is only until it needs this field; then it MUST switch to
@@ -244,7 +245,7 @@ verdicts as described above.
244245
245246### 4. Source recipe (`rockcraft.yaml`) review
246247
247- For image-trigger changes (`rock/update`, `rock/new`, `rock/chore` ), review the
248+ For image-trigger changes (`rock/update`, `rock/new`), review the
248249build recipe behind the release, not just the trigger. For **each** `upload[]`
249250item, fetch the `rockcraft.yaml` at that item's pinned `source` repository and
250251`commit` (under the item's `directory` subpath when set) — via `gh`/`git` or the
@@ -281,9 +282,10 @@ when the file cannot be retrieved.
281282 directly from an external repository — e.g. a `source:` pointing at
282283 GitHub/Launchpad with `source-type: git`, or a plugin that compiles upstream
283284 code — treat the rock as upstream-sourced **even when the repository lives
284- under the `canonical` org**. When it is, apply the `end-of-life` cap from
285- [§3](#3-release-policy-risk-tracks-eol-versioning); do not restate the rule
286- here.
285+ under the `canonical` org**. The sole exemption is a part sourced from
286+ `https://github.com/canonical/rocks-security-manifest`. Otherwise, apply the
287+ `end-of-life` cap from [§3](#3-release-policy-risk-tracks-eol-versioning); do
288+ not restate the rule here.
287289
288290- **Recipe regression (blocker).** When the source is bumped (a new `commit` or
289291 `directory`) and the new recipe drops a `parts:` entry or a `services:` entry
@@ -374,8 +376,7 @@ uses three families:
374376- **`rock/new`** — a new rock, or a new track/base for an existing rock.
375377- **`rock/update`** — an existing rock's image trigger is modified (release or
376378 track change).
377- - **`rock/chore`** — misc rock change (digest/source/version bump, incl.
378- bot/dependency updates).
379+ - **`rock/chore`** — maintainer contact changes in `contacts.yaml`.
379380- **`rock/docs`** — a rock's `documentation.yaml` change.
380381- **`onboarding`** — image onboarding request; auto-applied by the onboarding
381382 issue template.
0 commit comments