Skip to content

ci: regenerate models against current master to avoid duplicate PRs#861

Merged
vdusek merged 1 commit into
masterfrom
ci/regenerate-models-against-master
Jun 17, 2026
Merged

ci: regenerate models against current master to avoid duplicate PRs#861
vdusek merged 1 commit into
masterfrom
ci/regenerate-models-against-master

Conversation

@vdusek

@vdusek vdusek commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

The Regenerate models workflow opened #860, duplicating webhook fields already merged via #855. The Set up branch step regenerated on top of a stale update-models-docs-pr-<N> branch (based on a pre-#855 master), so an already-merged change reappeared as a fresh diff.

Fix: always regenerate against the current master.

  • Check for model changes compares the regenerated files against master and skips when there is no diff, so an already-merged change can no longer produce a duplicate PR.
  • When there is a diff, the branch is force-pointed at master and signed-commit adds one regenerated commit on top. The PR still updates whenever the source docs PR gets new commits.

Trade-off: the branch is always a single regenerated commit on top of master, so any commits pushed onto it directly are replaced on the next run. This is the intended, idempotent behavior for an auto-generated branch.

The regeneration used to build on top of a possibly stale existing
update-models-docs-pr-N branch. When the same spec change had already
been merged into master through another route (e.g. a manually merged
client PR), re-regenerating on the stale base re-emitted that change as
a fresh diff and opened a PR duplicating what master already had.

Now the job regenerates on the master checkout, skips entirely when the
result is identical to master, and otherwise force-points the branch at
master before committing a single regenerated commit on top — so the diff
is always relative to current master. The PR still updates on every new
commit to the source docs PR.
@vdusek vdusek added the t-tooling Issues with this label are in the ownership of the tooling team. label Jun 17, 2026
@vdusek vdusek self-assigned this Jun 17, 2026
@codecov

codecov Bot commented Jun 17, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 94.51%. Comparing base (949fd89) to head (6933070).

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #861      +/-   ##
==========================================
+ Coverage   94.49%   94.51%   +0.01%     
==========================================
  Files          48       48              
  Lines        5069     5069              
==========================================
+ Hits         4790     4791       +1     
+ Misses        279      278       -1     
Flag Coverage Δ
integration 92.93% <ø> (+0.31%) ⬆️
unit 83.27% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@vdusek vdusek added the adhoc Ad-hoc unplanned task added during the sprint. label Jun 17, 2026
@vdusek vdusek requested a review from Pijukatel June 17, 2026 11:57
@github-actions github-actions Bot added this to the 143rd sprint - Tooling team milestone Jun 17, 2026
@vdusek vdusek merged commit be7bba0 into master Jun 17, 2026
27 of 28 checks passed
@vdusek vdusek deleted the ci/regenerate-models-against-master branch June 17, 2026 16:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

adhoc Ad-hoc unplanned task added during the sprint. t-tooling Issues with this label are in the ownership of the tooling team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants