Add AI-driven prepare-providers-documentation skill#65882
Add AI-driven prepare-providers-documentation skill#65882potiuk merged 2 commits intoapache:mainfrom
Conversation
|
cc: @eladkal |
jscheffl
left a comment
There was a problem hiding this comment.
Sounds all very interesting, this classicifation is really a hard step in each providers wave.
669230c to
f53a128
Compare
|
🙏 -> I would love to merge it and test ... |
Add a Claude Code skill that replaces the manual commit-by-commit classification step in `breeze release-management prepare-provider-documentation` with AI-driven analysis. The skill inspects every PR using sub-agents, scopes multi-provider PRs to the current provider's slice, applies an explicit breaking-change checklist against the actual diff, asks the release manager only when uncertain, and covers both the initial classification and the rebase-time incremental update flow. Auto-generated build files are still regenerated by breeze under the hood, so the skill stays consistent with existing release tooling. The interactive breeze command remains documented as a fallback.
- Scope breaking-change checklist's "public symbol removed/renamed" rule to the actual public-interface paths (hooks, operators, sensors, triggers, notifications, decorators, executors, top-level package, and anything referenced from provider.yaml) so internal helpers like utils/, _internal/, or pod_manager.py don't auto-trigger BREAKING_RISK. - Extend "schema change in stored data" rule to cover the serialized state/context of BaseTrigger subclasses, so changes that would break deferred tasks running across a provider upgrade are flagged. - Document prerequisites in dev/README_RELEASE_PROVIDERS.md: the skill needs an agentic coding framework with the GitHub MCP server configured. Show install steps for Claude Code and OpenAI Codex CLI. - Generalise README references so the skill is presented as framework-neutral (loaded by Claude Code, OpenAI Codex CLI, or any MCP-compatible client that discovers SKILL.md from .claude/skills/), rather than Claude Code-exclusive.
f53a128 to
cba285d
Compare
vincbeck
left a comment
There was a problem hiding this comment.
No major concern. The skill is huge though so I might have missed some things. Happy to test it at the next provider release next week :)
I will do a dry-run before :) |
Backport successfully created: v3-2-testNote: As of Merging PRs targeted for Airflow 3.X In matter of doubt please ask in #release-management Slack channel.
|
…) (#66169) * Add AI-driven prepare-providers-documentation skill Add a Claude Code skill that replaces the manual commit-by-commit classification step in `breeze release-management prepare-provider-documentation` with AI-driven analysis. The skill inspects every PR using sub-agents, scopes multi-provider PRs to the current provider's slice, applies an explicit breaking-change checklist against the actual diff, asks the release manager only when uncertain, and covers both the initial classification and the rebase-time incremental update flow. Auto-generated build files are still regenerated by breeze under the hood, so the skill stays consistent with existing release tooling. The interactive breeze command remains documented as a fallback. * Address review feedback on prepare-providers-documentation skill - Scope breaking-change checklist's "public symbol removed/renamed" rule to the actual public-interface paths (hooks, operators, sensors, triggers, notifications, decorators, executors, top-level package, and anything referenced from provider.yaml) so internal helpers like utils/, _internal/, or pod_manager.py don't auto-trigger BREAKING_RISK. - Extend "schema change in stored data" rule to cover the serialized state/context of BaseTrigger subclasses, so changes that would break deferred tasks running across a provider upgrade are flagged. - Document prerequisites in dev/README_RELEASE_PROVIDERS.md: the skill needs an agentic coding framework with the GitHub MCP server configured. Show install steps for Claude Code and OpenAI Codex CLI. - Generalise README references so the skill is presented as framework-neutral (loaded by Claude Code, OpenAI Codex CLI, or any MCP-compatible client that discovers SKILL.md from .claude/skills/), rather than Claude Code-exclusive. (cherry picked from commit 1b3bf55) Co-authored-by: Jarek Potiuk <jarek@potiuk.com>
Summary
Adds a Claude Code skill at
.github/skills/prepare-providers-documentation/that replaces the manual commit-by-commit classification step in
breeze release-management prepare-provider-documentationwith AI-driven analysis.For each provider with pending changes, the skill spawns a sub-agent per PR
that reads the actual diff (not just the title or labels), applies an
explicit breaking-change checklist, scopes multi-provider PRs to the
current provider's slice, and escalates to the release manager only when
uncertain or when a major bump is at stake.
The skill covers both flows of the regular release cycle:
diffing PR numbers against the existing changelog, classifying only the
new commits, and explicitly confirming any version-bump escalation.
The skill keeps breeze as the source of truth for template generation:
provider.yamlandchangelog.rstare written directly by the skill,everything else (
__init__.py,README.rst,pyproject.toml,conf.py,get_provider_info.py,index.rst) is regenerated bybreeze release-management prepare-provider-documentation --reapply-templates-only.The interactive breeze command remains documented as a fallback for
non–Claude Code users or low-confidence cases.
Changes
.github/skills/prepare-providers-documentation/SKILL.md— new skill(5-phase initial flow + Incremental Update section + cross-cutting
rules + references).
.pre-commit-config.yaml— extends the existingairflow-translationsexemption in the agentic-Markdown insert-license hook so the SPDX header
isn't auto-prepended above the YAML frontmatter.
dev/README_RELEASE_PROVIDERS.md— release manager workflow now leadswith the skill for both initial classification and incremental updates;
interactive breeze stays documented as a fallback. Includes a one-time
symlink setup snippet for the local
.claude/skills/discovery path(since
.claude/is gitignored).Test plan
prek run --from-ref upstream/main --hook-stage pre-commitpasses for the changed filesprek run --from-ref upstream/main --hook-stage manualpasses for the changed files.claude/skills/prepare-providers-documentationresolves to../../.github/skills/prepare-providers-documentation/SKILL.mdWas generative AI tooling used to co-author this PR?
Generated-by: Claude Code (Opus 4.7) following the guidelines