Repository navigation
Commit 05be13c
ci: run the suite weekly against re-resolved dependencies (#116)
* ci: run the suite weekly against re-resolved dependencies
Every trigger on this workflow was caused by someone pushing, so the suite
only ever ran against the versions `uv.lock` pins. That is the right thing
for a pull request and the wrong thing as the only signal: a `langgraph`
minor that breaks the runtime is invisible here until a user on a fresh
install hits it. Issue #103 is the standing form of the complaint -- the
extras are unbounded and the lockfile hides what the next major would do.
Adds a Monday cron and one job that re-resolves every range from scratch
(`uv lock --upgrade`) and runs the suite against the newest versions
pyproject.toml's constraints allow. The job is gated to `schedule` and
`workflow_dispatch`: on pull requests it would turn someone's branch red
for an upstream release that branch did not cause.
The re-resolved lockfile diff is printed whether or not the suite passes,
because a green run against moved dependencies is the evidence needed to
widen a range or drop a pin.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
* ci: a failing drift run reports to the issue tracker, not the Actions tab
The job as first written had the flaw it was built to fix, one level up: it
would detect upstream breakage and then tell nobody. A scheduled run has no
pull request to turn red and no author to notify, and this repository has
already paid for exactly that -- `pages.yml` failed on two consecutive
pushes and sat unnoticed for the better part of two months, while the
published site served a version six releases behind. A weekly job in a
repository that goes quiet for weeks is the same shape.
So a failure now opens an issue, or comments on the open one if there is
already one. Reused rather than re-opened: an unattended weekly job that
files a fresh issue every Monday is a second way of being ignored. Matched
on title rather than a label, so it needs no label to exist first.
The body says what a reader needs and not more: that this is not any
branch's fault, that every other job resolves against `uv.lock` while this
one does not, that the remedy is an upstream fix or a narrower range in
pyproject.toml (#103), and that the run log's lockfile diff names what
moved.
`issues: write` is added at the job level, which replaces rather than
extends the workflow's permissions, so `contents: read` is repeated there.
Verified by extracting the step's script from the parsed YAML and running it
against a stubbed `gh`: the heredoc dedents correctly out of the block
scalar, the escaped backticks survive as literals, `$RUN_URL` expands, and
the two paths do what they claim -- create when no issue is open, comment
when one is, with no duplicate.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>1 parent 92a12ed commit 05be13c
1 file changed
Lines changed: 86 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
7 | 14 | | |
8 | 15 | | |
9 | 16 | | |
| |||
190 | 197 | | |
191 | 198 | | |
192 | 199 | | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
| 267 | + | |
| 268 | + | |
| 269 | + | |
| 270 | + | |
| 271 | + | |
| 272 | + | |
| 273 | + | |
| 274 | + | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
193 | 279 | | |
194 | 280 | | |
195 | 281 | | |
| |||
0 commit comments