At the Maintainers Summit, Ted asked whether the stable trees have a way
to deal with incorrect Fixes tags. Hannes estimated that 15-20% of them
are wrong, often because the author ran git blame and took the first
commit that touched the line [1]. We use LLM workflows to find the
commit that actually introduced a bug, and others asked us to share
them.

This series adds them as agent skills under agents/skills/, together
with a skill for writing commit messages:

 - find-fixes determines the commit for a Fixes tag, following the
   history past code moves and refactors.

 - stable-tag decides whether a fix should go to stable and generates the
   tag. It follows the criteria AUTOSEL applies in practice, finds the
   first release with the bug using git tag --contains, and checks that
   the fix applies there, adding prerequisites or a version floor if
   needed.

 - find-siblings looks for the same bug elsewhere in the tree and
   verifies each candidate.

 - commit-message writes, rewrites, or reviews a commit message or cover
   letter, and writes the signed tag and email text for a pull request.
   It follows the P: profiles that get_maintainer.pl reports for the
   changed files, reads the related list discussions with lei when it is
   available, and keeps the text short and in the imperative voice.

The skills are read-only and return a result with evidence. The calling
workflow writes the commit, creates the tag, and sends the mail.
coding-assistants.rst tells agents when to use each skill.

I tested the skills with two different agents on an array of upstream
commits and pull requests.

Changes since v1:
 - Switch the MAINTAINERS list to [email protected] (Leon,
   Konstantin).
 - Add the stable-tag, find-siblings, and commit-message skills.
 - find-fixes: point to the stable-tag skill for stable decisions.

v1: https://lore.kernel.org/r/[email protected]
[1] https://lore.kernel.org/r/[email protected]
[2] 
https://lore.kernel.org/r/CAHk-=wgXU50=kgznzc1jdxssxg9z+djg1_2yu-fnxpztue4...@mail.gmail.com

Sasha Levin (5):
  agents: add infrastructure for agent resources
  agents: add a skill to determine Fixes tags
  agents: add a skill to determine stable tags
  agents: add a skill to find other instances of a fixed bug
  agents: add a skill to write commit messages

 Documentation/process/coding-assistants.rst   |  79 +++++-
 MAINTAINERS                                   |   6 +
 agents/skills/commit-message/SKILL.md         |  29 +++
 agents/skills/commit-message/guide.rst        | 200 +++++++++++++++
 agents/skills/commit-message/pull-request.rst | 113 +++++++++
 agents/skills/find-fixes/SKILL.md             |  23 ++
 agents/skills/find-fixes/guide.rst            | 178 ++++++++++++++
 agents/skills/find-siblings/SKILL.md          |  22 ++
 agents/skills/find-siblings/guide.rst         | 138 +++++++++++
 agents/skills/stable-tag/SKILL.md             |  25 ++
 agents/skills/stable-tag/guide.rst            | 229 ++++++++++++++++++
 11 files changed, 1039 insertions(+), 3 deletions(-)
 create mode 100644 agents/skills/commit-message/SKILL.md
 create mode 100644 agents/skills/commit-message/guide.rst
 create mode 100644 agents/skills/commit-message/pull-request.rst
 create mode 100644 agents/skills/find-fixes/SKILL.md
 create mode 100644 agents/skills/find-fixes/guide.rst
 create mode 100644 agents/skills/find-siblings/SKILL.md
 create mode 100644 agents/skills/find-siblings/guide.rst
 create mode 100644 agents/skills/stable-tag/SKILL.md
 create mode 100644 agents/skills/stable-tag/guide.rst


base-commit: 3857c2fe5449541e24afc5efdb0f81a8a8f9a3a0
--
2.53.0


Reply via email to