From c9d95b15b8271f3d8efa2e625e722bb78d1f2e3a Mon Sep 17 00:00:00 2001 From: Dave Wilding Date: Thu, 3 Sep 2026 15:07:06 +0800 Subject: [PATCH] Tell agent that CI runs only for changed charms MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Each charm has its own CI workflow that triggers only when files under that charm's directory change. The agent didn't know this, so it described unchanged charms as 'controls' and talked about what their CI would show — but unchanged charms get no CI at all. Added a 'Per-charm CI' section to the charm development context explaining this, with explicit guidance: only discuss CI outcomes for charms you actually modified. --- .github/scripts/probe_issue.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/.github/scripts/probe_issue.py b/.github/scripts/probe_issue.py index 0e33f61..8913bf1 100644 --- a/.github/scripts/probe_issue.py +++ b/.github/scripts/probe_issue.py @@ -170,6 +170,18 @@ def runtime_context(repository: str, issue_number: int, branch: str) -> str: difference is the configuration you changed — not structural differences \ between unrelated charms. +### Per-charm CI + +Each charm has its own CI workflow (`.github/workflows/.yaml`) that \ +triggers only when files under that charm's directory change. **CI runs only \ +for charms you modified** — unchanged charms get no CI at all. This means: + +- If you modify only kepler, only kepler's CI runs. Kosmos's CI does not run. +- If you modify kepler and kosmos, both CIs run independently. +- Do not describe an unchanged charm as a "control" or talk about what its CI \ +will show — it won't have any CI to show. Only discuss CI outcomes for charms \ +you actually modified. + ### Project structure (per charm directory) - `src/charm.py` — charm code using `ops.CharmBase`; entry point is \