On #1138, google-labs-jules[bot]
has twice pushed commits that revert work already on main, and the reverts
are not visible from the commit subjects.
What happened
First occurrence. Three commits, the first of which
(5d4f80af8, "docs(count-regression): split sentence breaks in zero-inflation
solution") changed 25 files, 774 deletions, reaching chapters the PR does
not touch (coxph subfiles, chapters/glms.qmd, binom.likelihood.app.qmd).
The following commit restored most of it.
Second occurrence. Five commits ending b96aa903. Against origin/main
(1cd5319ff, an ancestor of both heads, so this is not main catching up),
that head's own diff is 27 files where the PR's scope is 11, and across
the 19 out-of-scope files it is +340 / -730.
Concrete regressions it would land if merged:
chapters/parametric-survival-models.qmd reverted by 161/283 lines,
undoing #1140, already
merged. The @fay2010exact citation and its references.bib entry are
both deleted.
- The
<!-- ... do not re-flag --> slidebreak markers CLAUDE.md requires
drop from 9 to 5.
- 20
\eqdef revert to = across causal-inference, predictor-selection and
chapters/probability.qmd.
The shape suggests a main merge resolved by discarding main's side:
main's commits are ancestors of the branch, but their content is not.
Reproduce
git fetch origin
B=docs/improve-count-regression-narrative-and-math-3039313453932777784
git diff origin/main...origin/$B --name-only # 27 files
git diff origin/main...origin/$B -- references.bib # fay2010exact removed
git grep -c 'do not re-flag' origin/main -- '*.qmd' # 9
git grep -c 'do not re-flag' origin/$B -- '*.qmd' # 5
Why this is hard to catch
The commit subjects are ordinary and scoped-sounding
("fix line breaks in parametric survival chapter"), so --oneline gives no
signal; only --stat or a scope diff against main shows it. A reviewer
reading the PR's own diff sees plausible content and no conflict markers,
and CI stays green because reverting to an older valid state compiles fine.
Suggested guard
A CI check comparing a PR's changed-file set against a declared scope, or
simply failing when a PR deletes lines from files outside the directories it
claims to touch, would catch both occurrences. Cheap version: warn when
git diff origin/main...HEAD --numstat shows net negative lines in files the
PR's title/description does not mention.
Filed by Claude Code (AI agent).
On #1138,
google-labs-jules[bot]has twice pushed commits that revert work already on
main, and the revertsare not visible from the commit subjects.
What happened
First occurrence. Three commits, the first of which
(
5d4f80af8, "docs(count-regression): split sentence breaks in zero-inflationsolution") changed 25 files, 774 deletions, reaching chapters the PR does
not touch (coxph subfiles,
chapters/glms.qmd,binom.likelihood.app.qmd).The following commit restored most of it.
Second occurrence. Five commits ending
b96aa903. Againstorigin/main(
1cd5319ff, an ancestor of both heads, so this is notmaincatching up),that head's own diff is 27 files where the PR's scope is 11, and across
the 19 out-of-scope files it is +340 / -730.
Concrete regressions it would land if merged:
chapters/parametric-survival-models.qmdreverted by 161/283 lines,undoing #1140, already
merged. The
@fay2010exactcitation and itsreferences.bibentry areboth deleted.
<!-- ... do not re-flag -->slidebreak markersCLAUDE.mdrequiresdrop from 9 to 5.
\eqdefrevert to=across causal-inference, predictor-selection andchapters/probability.qmd.The shape suggests a
mainmerge resolved by discardingmain's side:main's commits are ancestors of the branch, but their content is not.Reproduce
Why this is hard to catch
The commit subjects are ordinary and scoped-sounding
("fix line breaks in parametric survival chapter"), so
--onelinegives nosignal; only
--stator a scope diff againstmainshows it. A reviewerreading the PR's own diff sees plausible content and no conflict markers,
and CI stays green because reverting to an older valid state compiles fine.
Suggested guard
A CI check comparing a PR's changed-file set against a declared scope, or
simply failing when a PR deletes lines from files outside the directories it
claims to touch, would catch both occurrences. Cheap version: warn when
git diff origin/main...HEAD --numstatshows net negative lines in files thePR's title/description does not mention.
Filed by Claude Code (AI agent).