Skip to content

Update apache-steward framework snapshot + slim author-primary triage overrides#67149

Merged
choo121600 merged 3 commits into
apache:mainfrom
potiuk:upgrade-steward-b20a3f2
May 19, 2026
Merged

Update apache-steward framework snapshot + slim author-primary triage overrides#67149
choo121600 merged 3 commits into
apache:mainfrom
potiuk:upgrade-steward-b20a3f2

Conversation

@potiuk

@potiuk potiuk commented May 19, 2026

Copy link
Copy Markdown
Member

Summary

Refreshes the committed apache-steward bootstrap copy at .github/skills/setup-steward/ to match a newer framework snapshot (~5 weeks of upstream changes), and evolves the local override for pr-management-triage comment templates in step with framework PR apache/airflow-steward#226 (now merged).

Three commits, each independently reviewable:

  1. 8ea475a3e8 — Refresh apache-steward bootstrap to snapshot b20a3f2
    The committed bootstrap copy of setup-steward was at the framework version that landed with the original adoption. This commit re-syncs it to snapshot b20a3f2, picking up 11 framework commits — most relevant for this repo: the new issue opt-in family (apache-steward#209), pr-management-triage prefetch improvements (apache-steward#211), and pr-management-stats predicate fixes (apache-steward#219). No opt-in family changes for this repo (still just pr-management).

  2. 453fe90fd4 — Drop @-ping of reviewer in author-primary triage templates
    Local override: when a triage comment's only addressee is the PR author (request-author-confirmation, reviewer-ping author-primary, review-nudge author-primary), reference the reviewer with backtick-quoted login (no @) so the bot's message doesn't notify the reviewer when the next action is on the author. Also adds explicit "resolve threads + ping the reviewer when ready" hand-back instructions.

  3. b9eb9c46c7 — Drop redundant author-primary template overrides — now framework default
    The local override pattern from commit 2 was upstreamed in apache-steward#226 (merged). Removes the four sections of the override that are now identical to the framework's default, leaving only the Airflow-specific content (URLs, AI footer wording, project-specific template bodies). Override file shrinks 279 → 220 lines.

What landed in the framework that this PR depends on

apache-steward main now includes:

  • New <reviewer_logins> placeholder (backtick-quoted login, no @-ping) for author-primary templates
  • Updated request-author-confirmation, reviewer-ping (author-primary), and review-nudge (author-primary) templates using the new placeholder + resolve-and-ping pattern
  • Rows 19/20/F4 of pr-management-triage's decision table now ignore non-collaborator unresolved threads when deciding passing → mark-ready (was: any unresolved thread blocked it)

Test plan

  • /setup-steward verify clean on the new snapshot.
  • /pr-management-triage ran ~50 actions across pages 2-9 of the open-PR queue using the new templates (no stray @-mentions to reviewers in author-primary contexts).
  • /pr-management-stats HTML dashboard renders the contributor PR funnel correctly against the new snapshot.
  • No CI files touched; no airflow-core / task-sdk / providers/ changes — purely tooling.

Was generative AI tooling used to co-author this PR?
  • Yes — Claude Code (Opus 4.7)

Generated-by: Claude Code (Opus 4.7) following the guidelines

potiuk added 3 commits May 18, 2026 23:14
Re-syncs .github/skills/setup-steward/ from the framework
snapshot so future /setup-steward runs execute against the
matching bootstrap. Highlights since the previous version:

- New opt-in family `issue` (issue-fix-workflow, issue-triage,
  issue-reassess-stats) per apache-steward#209.
- Newly-introduced opt-in families now auto-add on upgrade and
  write back to the committed lock (no prompt).
- pr-management-triage pre-classification + pr-management-stats
  predicate refinements.
- Smaller fixes (license-header criteria, --body= variant
  parsing).

The committed pin (.apache-steward.lock) is unchanged — still
tracks main. Contributors run /setup-steward upgrade to align
their local snapshot.

Files retain duplicate SPDX headers (LICENSE-2.0 from this
repo's prek hook, release-policy.html from the framework's
own header). Both URLs are valid Apache license pointers;
unifying the form belongs upstream in apache-steward.
Adds a `<reviewer_logins>` placeholder (backtick-quoted login,
no @) for templates whose only addressee is the PR author:
`request-author-confirmation`, `reviewer-ping` (author-primary),
`review-nudge` (author-primary). The reviewer is still mentioned
for context but no longer @-pinged when the next action is on the
contributor.

Also updates these templates to instruct the author to mark
threads as resolved and ping the reviewer when they believe the
feedback is addressed — making the resolve + handback step
explicit instead of relying on the queue label alone.

This is a local override; will follow up with a PR to
apache/airflow-steward to make the policy framework-wide.
After apache-steward#226 merged (upstream PR upstreaming the
`<reviewer_logins>` placeholder, the resolve-and-ping pattern in
`request-author-confirmation` / `reviewer-ping` author-primary /
`review-nudge` author-primary, and the Reviewer-mention policy
section), this override file's matching sections are redundant —
the framework now ships them by default.

Dropped:
  - Reviewer-mention policy section (framework ships in
    comment-templates.md)
  - `review-nudge` (author-primary) template body
  - `reviewer-ping` (author-primary) template body
  - `request-author-confirmation` template body + post-note

Kept (all Airflow-specific):
  - Project-specific URLs (apache/airflow contributing-docs links)
  - Quality-criteria marker string
  - AI-attribution footer (Apache Airflow branded)
  - All templates referencing airflow URLs (draft, comment-only,
    close, stale-draft-close, inactive-to-draft, suspicious-changes,
    etc.) and the reviewer-re-review variants / mark-ready-with-ping

File shrinks 279 → 220 lines.

@choo121600 choo121600 left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

🙌

@choo121600 choo121600 merged commit 41a6436 into apache:main May 19, 2026
65 checks passed
@github-actions

Copy link
Copy Markdown
Contributor

Backport failed to create: v3-2-test. View the failure log Run details

Note: As of Merging PRs targeted for Airflow 3.X
the committer who merges the PR is responsible for backporting the PRs that are bug fixes (generally speaking) to the maintenance branches.

In matter of doubt please ask in #release-management Slack channel.

Status Branch Result
v3-2-test Commit Link

You can attempt to backport this manually by running:

cherry_picker 41a6436 v3-2-test

This should apply the commit to the v3-2-test branch and leave the commit in conflict state marking
the files that need manual conflict resolution.

After you have resolved the conflicts, you can continue the backport process by running:

cherry_picker --continue

If you don't have cherry-picker installed, see the installation guide.

@choo121600

Copy link
Copy Markdown
Member

I think we can skip the backport for this one

potiuk added a commit that referenced this pull request May 24, 2026
Backports the framework adoption from main (#66677 + #67149) so that
v3-2-test gets the same agent-driven PR-management skills that main
already uses, and so that future agentic fixes that ship as overrides
under \`.apache-steward-overrides/\` cherry-pick cleanly to v3-2-test
instead of hitting structural conflicts against the old self-hosted
\`pr-triage\` skill.

What changes:

- Remove the self-hosted \`pr-triage\` skill at \`.github/skills/pr-triage/\`
  (and its symlink \`.claude/skills/pr-triage\`). Its functionality
  moves into the apache-steward framework as \`pr-management-triage\`,
  fetched on demand via the snapshot mechanism.
- Wire up the apache-steward adoption: committed \`setup-steward\`
  bootstrap at \`.github/skills/setup-steward/\` (with a sibling
  \`.claude/skills/setup-steward\` symlink), \`.apache-steward.lock\`
  pinned to framework \`main\`, and the \`.apache-steward-overrides/\`
  directory with the three pr-management-triage config files
  (\`pr-management-config.md\`, \`pr-management-triage-ci-check-map.md\`,
  \`pr-management-triage-comment-templates.md\`) plus README and user.md.
- Refresh the \`setup-steward\` bootstrap to the latest framework main
  (apache/magpie#247 — Pattern D single-directory-symlink
  layout) so adopters of the new framework benefit from the consolidated
  install flow.
- Rewrite \`contributing-docs/25_maintainer_pr_triage.md\` to point at
  the framework skill URLs (\`apache/airflow-steward/.../pr-management-*\`)
  rather than the now-removed local skill paths.
- Add the apache-steward section to \`AGENTS.md\` and the
  "Agent-assisted contribution" section to \`README.md\`.
- Update \`.gitignore\` to allow-list \`setup-steward\` and to exclude
  the symlink families (\`security-*\`, \`pr-management-*\`, \`issue-*\`,
  \`setup-isolated-setup-*\`, \`setup-override-upstream\`,
  \`setup-shared-config-sync\`, \`list-steward-*\`) under both
  \`.claude/skills/\` and \`.github/skills/\`.
- Update \`.pre-commit-config.yaml\` to skip \`.apache-steward-overrides/\`
  and \`.github/skills/setup-steward/\` in codespell and markdownlint
  (the framework prose uses hyphenated forms codespell flags as
  misspellings, and the snapshot-internal links break markdownlint).

What does not change:

- \`maintainer-review\` and \`pr-stats\` skills were never backported to
  v3-2-test, so there's nothing to remove for them — they will simply
  show up as \`pr-management-code-review\` and \`pr-management-stats\`
  after a fresh \`/setup-steward\`.
- The \`lychee\` prek hook does not exist on v3-2-test, so its exclude
  hunk from main's adoption commit is N/A here.

After this lands, contributors run \`/setup-steward\` in their agent
harness to populate the gitignored \`.apache-steward/\` snapshot and
make every \`pr-management-*\` skill invocable. See the README section
"Agent-assisted contribution (apache-steward)" for the setup flow.
vatsrahul1001 pushed a commit that referenced this pull request May 25, 2026
Backports the framework adoption from main (#66677 + #67149) so that
v3-2-test gets the same agent-driven PR-management skills that main
already uses, and so that future agentic fixes that ship as overrides
under \`.apache-steward-overrides/\` cherry-pick cleanly to v3-2-test
instead of hitting structural conflicts against the old self-hosted
\`pr-triage\` skill.

What changes:

- Remove the self-hosted \`pr-triage\` skill at \`.github/skills/pr-triage/\`
  (and its symlink \`.claude/skills/pr-triage\`). Its functionality
  moves into the apache-steward framework as \`pr-management-triage\`,
  fetched on demand via the snapshot mechanism.
- Wire up the apache-steward adoption: committed \`setup-steward\`
  bootstrap at \`.github/skills/setup-steward/\` (with a sibling
  \`.claude/skills/setup-steward\` symlink), \`.apache-steward.lock\`
  pinned to framework \`main\`, and the \`.apache-steward-overrides/\`
  directory with the three pr-management-triage config files
  (\`pr-management-config.md\`, \`pr-management-triage-ci-check-map.md\`,
  \`pr-management-triage-comment-templates.md\`) plus README and user.md.
- Refresh the \`setup-steward\` bootstrap to the latest framework main
  (apache/magpie#247 — Pattern D single-directory-symlink
  layout) so adopters of the new framework benefit from the consolidated
  install flow.
- Rewrite \`contributing-docs/25_maintainer_pr_triage.md\` to point at
  the framework skill URLs (\`apache/airflow-steward/.../pr-management-*\`)
  rather than the now-removed local skill paths.
- Add the apache-steward section to \`AGENTS.md\` and the
  "Agent-assisted contribution" section to \`README.md\`.
- Update \`.gitignore\` to allow-list \`setup-steward\` and to exclude
  the symlink families (\`security-*\`, \`pr-management-*\`, \`issue-*\`,
  \`setup-isolated-setup-*\`, \`setup-override-upstream\`,
  \`setup-shared-config-sync\`, \`list-steward-*\`) under both
  \`.claude/skills/\` and \`.github/skills/\`.
- Update \`.pre-commit-config.yaml\` to skip \`.apache-steward-overrides/\`
  and \`.github/skills/setup-steward/\` in codespell and markdownlint
  (the framework prose uses hyphenated forms codespell flags as
  misspellings, and the snapshot-internal links break markdownlint).

What does not change:

- \`maintainer-review\` and \`pr-stats\` skills were never backported to
  v3-2-test, so there's nothing to remove for them — they will simply
  show up as \`pr-management-code-review\` and \`pr-management-stats\`
  after a fresh \`/setup-steward\`.
- The \`lychee\` prek hook does not exist on v3-2-test, so its exclude
  hunk from main's adoption commit is N/A here.

After this lands, contributors run \`/setup-steward\` in their agent
harness to populate the gitignored \`.apache-steward/\` snapshot and
make every \`pr-management-*\` skill invocable. See the README section
"Agent-assisted contribution (apache-steward)" for the setup flow.
vatsrahul1001 pushed a commit that referenced this pull request May 25, 2026
Backports the framework adoption from main (#66677 + #67149) so that
v3-2-test gets the same agent-driven PR-management skills that main
already uses, and so that future agentic fixes that ship as overrides
under \`.apache-steward-overrides/\` cherry-pick cleanly to v3-2-test
instead of hitting structural conflicts against the old self-hosted
\`pr-triage\` skill.

What changes:

- Remove the self-hosted \`pr-triage\` skill at \`.github/skills/pr-triage/\`
  (and its symlink \`.claude/skills/pr-triage\`). Its functionality
  moves into the apache-steward framework as \`pr-management-triage\`,
  fetched on demand via the snapshot mechanism.
- Wire up the apache-steward adoption: committed \`setup-steward\`
  bootstrap at \`.github/skills/setup-steward/\` (with a sibling
  \`.claude/skills/setup-steward\` symlink), \`.apache-steward.lock\`
  pinned to framework \`main\`, and the \`.apache-steward-overrides/\`
  directory with the three pr-management-triage config files
  (\`pr-management-config.md\`, \`pr-management-triage-ci-check-map.md\`,
  \`pr-management-triage-comment-templates.md\`) plus README and user.md.
- Refresh the \`setup-steward\` bootstrap to the latest framework main
  (apache/magpie#247 — Pattern D single-directory-symlink
  layout) so adopters of the new framework benefit from the consolidated
  install flow.
- Rewrite \`contributing-docs/25_maintainer_pr_triage.md\` to point at
  the framework skill URLs (\`apache/airflow-steward/.../pr-management-*\`)
  rather than the now-removed local skill paths.
- Add the apache-steward section to \`AGENTS.md\` and the
  "Agent-assisted contribution" section to \`README.md\`.
- Update \`.gitignore\` to allow-list \`setup-steward\` and to exclude
  the symlink families (\`security-*\`, \`pr-management-*\`, \`issue-*\`,
  \`setup-isolated-setup-*\`, \`setup-override-upstream\`,
  \`setup-shared-config-sync\`, \`list-steward-*\`) under both
  \`.claude/skills/\` and \`.github/skills/\`.
- Update \`.pre-commit-config.yaml\` to skip \`.apache-steward-overrides/\`
  and \`.github/skills/setup-steward/\` in codespell and markdownlint
  (the framework prose uses hyphenated forms codespell flags as
  misspellings, and the snapshot-internal links break markdownlint).

What does not change:

- \`maintainer-review\` and \`pr-stats\` skills were never backported to
  v3-2-test, so there's nothing to remove for them — they will simply
  show up as \`pr-management-code-review\` and \`pr-management-stats\`
  after a fresh \`/setup-steward\`.
- The \`lychee\` prek hook does not exist on v3-2-test, so its exclude
  hunk from main's adoption commit is N/A here.

After this lands, contributors run \`/setup-steward\` in their agent
harness to populate the gitignored \`.apache-steward/\` snapshot and
make every \`pr-management-*\` skill invocable. See the README section
"Agent-assisted contribution (apache-steward)" for the setup flow.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants