Skip to content

Promote: template convergence + CI/CD process learnings#235

Merged
ptr727 merged 2 commits into
mainfrom
develop
Jul 3, 2026
Merged

Promote: template convergence + CI/CD process learnings#235
ptr727 merged 2 commits into
mainfrom
develop

Conversation

@ptr727

@ptr727 ptr727 commented Jul 3, 2026

Copy link
Copy Markdown
Owner

Promotes the two commits currently ahead on develop to main.

Closes #160
Closes #176

What's promoted

Convergence audit (why #160 and #176 are done)

Every item in both issues was checked against the current template; nearly all were already converged by prior work, so only #234's one paragraph remained:

Remaining differences are intentional, repo-accurate divergence (repo-specific project/task names, and CODESTYLE.md build-requirements text that matches this repo's actual Directory.Build.props).

Diff

Two-dot and three-dot content diffs are identical: 4 insertions across AGENTS.md and .github/copilot-instructions.md. develop is a clean superset of main (no main-only stragglers).

ptr727 and others added 2 commits July 3, 2026 09:57
Two durable learnings from the CI/CD work: mirror main-only fixes to
develop (and check git diff origin/develop origin/main before relying on
develop), and put Closes #N in the promotion PR. No code changes.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ctions (#234)

Closes the last substantive verbatim-carry gap found while auditing this
repo against ptr727/ProjectTemplate for the convergence issues #160 and
#176.

## What changed
- `.github/copilot-instructions.md`: add the **"In a derived repo:"**
paragraph from the template's "When in Doubt" section (verbatim),
directing contributors to open an upstream issue in
`ptr727/ProjectTemplate` when a discrepancy belongs in the template
rather than only fixing it locally.

## Audit result (context)
An audit of every item in #160 and #176 against the current template
found nearly everything already converged:
- **#160**: `.markdownlint-cli2.jsonc` byte-identical; `.editorconfig`
line-ending rules fully converged; rulesets already lowercase
`develop`/`main`. Done.
- **#176**: consolidated `CODESTYLE.md` (General + .NET), `.NET`-cased
tasks with `dependsOrder: sequence`, `retention-days: 1` on the
release-asset upload, and `smoke`-gated build/upload are all present.
The AGENTS.md rule updates (comments house-rule, markdown trailing
backslash, versioning, CI storage) are present. Docker registry-cache
guidance is N/A (no Docker workflow here).

The only outstanding item was this one paragraph.

Issue-closing keywords are intentionally omitted here (this PR targets
`develop`); `Closes #160`/`Closes #176` will go on the `develop -> main`
promotion PR so GitHub fires them on merge to the default branch.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings July 3, 2026 17:06

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Promotes documentation-only process guidance from develop to main, closing #160 and #176 by carrying the last missing template-aligned paragraph and recording CI/CD workflow learnings for future contributors.

Changes:

  • Add guidance in AGENTS.md to mirror any main-only fixes back to develop, with a concrete staleness check (git log origin/develop..origin/main).
  • Add guidance in AGENTS.md to place Closes #N keywords on the develop -> main promotion PR so GitHub auto-closes issues on merge to the default branch.
  • Add the template’s “In a derived repo:” upstream-drift reporting paragraph to .github/copilot-instructions.md.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
AGENTS.md Adds contributor guidance for branch staleness detection and correct placement of issue-closing keywords.
.github/copilot-instructions.md Adds upstream template drift-reporting guidance for derived repos.

@ptr727 ptr727 merged commit 130f5c0 into main Jul 3, 2026
11 checks passed
ptr727 added a commit that referenced this pull request Jul 3, 2026
…#236)

Refines the develop-staleness guidance added in #233. Driving that
promotion (#235) exposed that the `git log origin/develop..origin/main`
form is noisy in this repo's bots-target-both model.

## Why
Running `git log origin/develop..origin/main` on a clean, current
`develop` returned ~50 commits - all routine promotion merges and
`main`-direct dependabot/codegen commits whose content `develop` already
carries via its own parallel bot PRs (even `--no-merges --cherry-pick
--right-only` still lists them, since parallel bumps have different
patch-ids). It cannot cheaply distinguish "develop is missing a
main-only fix" from that expected topology noise.

## What changed
Use a **content** diff that reflects final tree state, read
directionally:
- `git diff origin/main origin/develop` - hunks it would *remove* are
content on `main` that `develop` lacks (real staleness); hunks it *adds*
are `develop`'s normal unpromoted work.

This also resolves the original Copilot objection to a plain `git diff`
(that non-empty != stale): the fix is to read the diff's *direction*,
not its emptiness.

Verified on #235: for a clean `develop`, this diff was exactly the doc
files `develop` adds - no `main`-only content - which is the correct
"not stale" reading.

Issue-closing keywords omitted (targets `develop`); no issue to close.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants