Summary
A resumed chunked run fails at publication when rebasing onto origin/master, because it
conflicts with the test files its own previously-merged chunk already put there. The workflow
ends in FAILED and the entire chunk's output is discarded.
Evidence
Issue #2183, org.springframework:spring-core:5.3.15, cycle 5 of an overnight do-work run.
Chunk 1 was published earlier in the same run and merged as PR #9597 at 2026-08-29T04:49:32Z.
Its generated tests are on master:
tests/src/org.springframework/spring-core/5.3.15/src/test/java/org_springframework/spring_core/SunReflectionFactoryInstantiatorTest.java
tests/src/org.springframework/spring-core/5.3.15/src/test/java/org_springframework/spring_core/UnsafeFactoryInstantiatorTest.java
tests/src/org.springframework/spring-core/5.3.15/src/test/java/org_springframework/spring_core/UnsafeUtilsTest.java
Cycle 5 resumed the same issue for the next chunk, produced 1966 generated lines and 156 metadata
entries, and then failed:
Recorded preimage for 'tests/src/org.springframework/spring-core/5.3.15/src/test/java/org_springframework/spring_core/SunReflectionFactoryInstantiatorTest.java'
Recorded preimage for '.../UnsafeFactoryInstantiatorTest.java'
Recorded preimage for '.../UnsafeUtilsTest.java'
Recorded preimage for '.../src/test/resources/META-INF/spring.factories'
Could not apply 6df8662574... Add Spring Core dynamic access coverage tests
ERROR: Issue #2183 finalization raised an exception: CalledProcessError(1, ['git', 'rebase', 'origin/master'])
File "forge/git_scripts/branch_publication.py", line 338, in publish_branch
subprocess.run(["git", "rebase", base_ref], check=True, cwd=repo_path)
subprocess.CalledProcessError: Command '['git', 'rebase', 'origin/master']' returned non-zero exit status 1.
run failed in publication/publish_branch()[org.springframework:spring-core:5.3.15]
ERROR: finalization failure
======================================== FAILED ========================================
Issue #2183: Support for org.springframework:spring-core:5.3.15
Workflow failed; failure follow-up was attempted.
Every file named in the conflict is one chunk 1 created and merged.
Cause
The resumed run branches from a checkout that predates the merge of its own chunk-1 pull request,
so it regenerates the same test files from a base where they do not exist. Rebasing that branch
onto origin/master — where those files now exist with different content — conflicts on each one,
and git rebase is invoked with check=True, so the failure aborts publication.
This shares a root with #9612: the worker's checkout is behind master. There it makes a chunked
issue's exhaust report invisible; here it makes the chunk's own predecessor a merge conflict.
Impact
The chunk's entire output is lost. This run spent roughly an hour on it — including a full
40-cycle native trace budget, see #9608 — and produced nothing, while the issue is left claimed
and the workflow reports FAILED.
The failure is also self-perpetuating: every chunk that merges makes the next resume from a stale
base more likely to conflict, so a chunked library becomes progressively harder to advance the
more progress it makes.
Suggested handling
- Update the checkout to current
origin/master before starting a resumed chunk, so the run
regenerates against what is already published rather than against a stale base.
- Do not let a rebase conflict discard completed work. Publication is the last step; the metadata
and tests are already verified by that point, and the branch could be re-cut from current
master and reapplied instead of aborting.
- Treat the conflicting-file set as a signal: when every conflicting path belongs to the same
coordinate the run is working on, the correct resolution is to take the resumed run's version,
since it was produced against the newer dynamic-access report.
Summary
A resumed chunked run fails at publication when rebasing onto
origin/master, because itconflicts with the test files its own previously-merged chunk already put there. The workflow
ends in
FAILEDand the entire chunk's output is discarded.Evidence
Issue #2183,
org.springframework:spring-core:5.3.15, cycle 5 of an overnight do-work run.Chunk 1 was published earlier in the same run and merged as PR #9597 at
2026-08-29T04:49:32Z.Its generated tests are on
master:Cycle 5 resumed the same issue for the next chunk, produced 1966 generated lines and 156 metadata
entries, and then failed:
Every file named in the conflict is one chunk 1 created and merged.
Cause
The resumed run branches from a checkout that predates the merge of its own chunk-1 pull request,
so it regenerates the same test files from a base where they do not exist. Rebasing that branch
onto
origin/master— where those files now exist with different content — conflicts on each one,and
git rebaseis invoked withcheck=True, so the failure aborts publication.This shares a root with #9612: the worker's checkout is behind
master. There it makes a chunkedissue's exhaust report invisible; here it makes the chunk's own predecessor a merge conflict.
Impact
The chunk's entire output is lost. This run spent roughly an hour on it — including a full
40-cycle native trace budget, see #9608 — and produced nothing, while the issue is left claimed
and the workflow reports
FAILED.The failure is also self-perpetuating: every chunk that merges makes the next resume from a stale
base more likely to conflict, so a chunked library becomes progressively harder to advance the
more progress it makes.
Suggested handling
origin/masterbefore starting a resumed chunk, so the runregenerates against what is already published rather than against a stale base.
and tests are already verified by that point, and the branch could be re-cut from current
masterand reapplied instead of aborting.coordinate the run is working on, the correct resolution is to take the resumed run's version,
since it was produced against the newer dynamic-access report.