Commit 7f8b360
fix(pm-tooling): refuse windowed history questions a shallow clone cannot see all of (#10506)
* fix(pm-tooling): refuse windowed history questions the clone cannot see all of
Three seat-run tools asked `--since` questions over a branch with no shallow
guard. A shallow clone answers those from whatever part of the window is
present, exits 0 and prints no warning, so each returned a confidently wrong
smaller number. Agent containers clone shallow and all three run from a seat;
every workflow that reads history already checks out `fetch-depth: 0`, which is
why the exposure survived.
- git-history.mjs: add `historyHorizon()`, the read-only half of the #9878
helper — one predicate for all adopters, never fetching, and printing a
deepen command computed so it can only ADD history.
- check-governed-merges.mjs: a repo whose history stops inside the window is
UNAUDITED, like an absent checkout. It rendered `clean window` over ~40
governed merges.
- check-engine-split-ratio.mjs: refuse rather than print an ADR trigger metric
over a short denominator; annotate the horizon when the window is whole.
- collect-release-notes.sh: withhold the cloud section rather than print it
short, and exit 2.
- lint.yml: run the three self-tests, including git-history's, which nothing in
this repo ran until now.
Part of #9902
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DdCnBGcHeufjrq7drTD3wt
* fix(pm-tooling): stop the horizon annotation claiming what it has not checked
Two defects found by ablating the guards rather than by reading them.
- check-engine-split-ratio: the horizon line spelled "(predates the window)"
unconditionally, so removing the refusal above it produced a false statement
beside a wrong number instead of no statement.
- collect-release-notes --self-test: the wiring pin grepped the script for a
literal that also occurs in the assertion itself, so it matched its own
source line and printed a tick with section 4 unwired. The needle is now
assembled from two adjacent literals, and the ablation reddens it.
Part of #9902
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DdCnBGcHeufjrq7drTD3wt
---------
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>1 parent 7c7c0a7 commit 7f8b360
5 files changed
Lines changed: 656 additions & 61 deletions
File tree
- .github/workflows
- scripts
- pm
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
386 | 386 | | |
387 | 387 | | |
388 | 388 | | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
| 432 | + | |
389 | 433 | | |
390 | 434 | | |
391 | 435 | | |
| |||
0 commit comments