All checks were successful
CI / test (pull_request) Successful in 3m2s
CI / release-exercise (pull_request) Successful in 10s
CI / self-guards (pull_request) Successful in 6s
CI / action-exercise (pull_request) Successful in 6s
CI / docs-sync-exercise (pull_request) Successful in 6s
Refs guard / refs-not-closing (pull_request) Has been skipped
labels / labels (pull_request) Successful in 8s
@codex-reviewer-andresmgsl's two additions (#5697), both measured in the #198 sync rather than anticipated. Every branch open across a sync is stale afterwards: Forgejo never re-tests an open PR when main moves under it, so #206 and #207's green 22-file suites were about a tree that no longer existed once the 28-file one landed — and #206's fragment was individually green while making the combined tree red under a rule the sync itself introduces. The runbook now says to update each in-flight branch from the newly synced main, or check them in a scratch merge, and that a prior approval is evidence about the tree it was given on. And post-merge runs are audited by executed steps, never by colour: inventory what the sync changed about triggers and jobs, read which job actually ran, and treat a green refusal path as evidence for that path only. Run 326 was green and had reconciled nothing. Both failures happened with the no-runtime-gh guard green and CI green, so the runbook says that too. Refs #200
35 lines
1.6 KiB
Markdown
35 lines
1.6 KiB
Markdown
### Added
|
|
|
|
- `docs/UPSTREAM-SYNC.md` — the recurring upstream sync as a runbook: the
|
|
standing resolutions, which side wins each and the issue that decided it
|
|
(#200).
|
|
|
|
- It names the step the 0.6.0 sync nearly shipped without: auditing what the
|
|
merge brought in that did **not** conflict. `git merge` asks no question
|
|
about a function upstream added to a file this tree owns (#200).
|
|
|
|
- It records that the same mechanic applies to state, not just to call sites: a
|
|
resolved region can silently remove a producer whose consumers auto-merged,
|
|
and every one of those consumers degrades to empty rather than erroring
|
|
(#200).
|
|
|
|
- It says to verify with the runner's tooling, because "green locally" was
|
|
wrong three times in one sync — untracked files, a pinned linter, and a
|
|
pinned `jq` whose empty-input exit code differs (#200).
|
|
|
|
- It says every branch open across a sync is stale afterwards — Forgejo never
|
|
re-tests an open PR when main moves, so a prior approval is evidence about a
|
|
tree that no longer exists (#200).
|
|
|
|
- It says to audit post-merge runs by executed steps rather than colour, and to
|
|
inventory what the sync changed about workflow triggers and jobs first (#200).
|
|
|
|
- `.upstream-ref` records the upstream commit this tree carries, in
|
|
machine-readable form beside the CHANGELOG's prose (#200).
|
|
|
|
- `test/upstream-delta.test.sh` fails the PR that scatters forge branching into
|
|
a file the inventory does not name — offline, and refusing rather than
|
|
skipping when the recorded ref is missing (#200).
|
|
|
|
- `docs/CONSUMERS.md` states that two ceremonies answer to the same version
|
|
number, and how a consumer says which one it pinned (#200).
|