From 4b64681c95a97421483ee315d8e6f008cc7fe0ad Mon Sep 17 00:00:00 2001 From: Justin McLean Date: Sun, 28 Jun 2026 13:55:46 +1000 Subject: [PATCH] docs(contributor-growth): add contributor-to-committer to family README and move to Mentoring mode MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `contributor-to-committer` shipped with `mode: Mentoring` in its SKILL.md and is explicitly listed as a mentoring-family skill in `mentoring-mode.md` Known Gaps, but was missing from `docs/contributor-growth/README.md` and was misclassified in the Triage table of `docs/modes.md` (which counted 31 Triage skills). Changes: - docs/contributor-growth/README.md: add Readiness-check row to Stage coverage table, add skill to the Skills table (Mentoring / experimental), add committer-readiness.md to the Adopter contract table with its fallback-to-contributor-nomination-config note, update "Five/five" → "Six/six" throughout. - docs/modes.md: remove contributor-to-committer from the Triage table (31 → 30), add it to the Mentoring table (3 → 4), update both modes-at-a-glance counts and the Mentoring section header. Validated: skill-and-tool-validate passes (179 pre-existing SOFT advisory warnings, 0 hard errors — unchanged from main). Generated-by: Claude (Opus 4.7) --- docs/contributor-growth/README.md | 16 ++++++++++------ docs/modes.md | 8 ++++---- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/docs/contributor-growth/README.md b/docs/contributor-growth/README.md index 5e6990d6..8f39a544 100644 --- a/docs/contributor-growth/README.md +++ b/docs/contributor-growth/README.md @@ -19,9 +19,10 @@ Maintainer-facing skills that span the contributor-to-committer path: welcoming first-time contributors, keeping the issue backlog newcomer- -ready, tracking contribution activity, assembling nomination evidence, -and walking nominators through post-vote onboarding. Five skills cover -the staged path from first contact through committer promotion. +ready, tracking contribution activity, checking readiness against declared +thresholds, assembling nomination evidence, and walking nominators through +post-vote onboarding. Six skills cover the staged path from first contact +through committer promotion. Why a framework skill family? The contributor-to-committer path is one of the highest-leverage levers an open-source project has for long-term @@ -37,6 +38,7 @@ them makes the adopter configuration and the evaluation story coherent. | **First contact** | [`mentoring-welcome`](../../skills/mentoring-welcome/SKILL.md) | Drafts an orientation comment for a first-time contributor on a newly opened issue or PR; detects first-time authorship via the GitHub `author_association` field and skips repeat contributors. | | **Issue on-ramp** | [`good-first-issue-author`](../../skills/good-first-issue-author/SKILL.md) | Drafts one net-new good first issue from a supplied gap or small task; a suitability gate and R1–R9 readiness checklist gate the draft; waits for maintainer confirmation before filing via `gh`. | | **Activity tracking** | [`contributor-activity-sweep`](../../skills/contributor-activity-sweep/SKILL.md) | Produces a read-only GitHub activity card (PRs authored, code reviews, issues, comments) over a configurable window. | +| **Readiness check** | [`contributor-to-committer`](../../skills/contributor-to-committer/SKILL.md) | Maps a contributor's GitHub activity against the adopter's PMC-declared committer or PMC thresholds; surfaces a traffic-light brief (Not yet / Approaching / Ready to nominate) and a gap table showing what would close each remaining gap. Read-only; never opens a nomination thread. | | **Nomination brief** | [`contributor-nomination`](../../skills/contributor-nomination/SKILL.md) | Assembles evidence prose for a committer or PMC vote thread: activity breadth, consistency, vendor-neutrality context, and a nomination-ready summary. Read-only; never posts to any list. | | **Post-vote onboarding** | [`committer-onboarding`](../../skills/committer-onboarding/SKILL.md) | Walks the nominator through ICLA check, account provisioning, permissions grant, and the welcome announcement for committer and PMC promotions at ASF TLPs and podlings. | @@ -51,10 +53,11 @@ without explicit maintainer confirmation. | [`mentoring-welcome`](../../skills/mentoring-welcome/SKILL.md) | Mentoring | experimental | | [`good-first-issue-author`](../../skills/good-first-issue-author/SKILL.md) | Mentoring | experimental | | [`contributor-activity-sweep`](../../skills/contributor-activity-sweep/SKILL.md) | Triage | experimental | +| [`contributor-to-committer`](../../skills/contributor-to-committer/SKILL.md) | Mentoring | experimental | | [`contributor-nomination`](../../skills/contributor-nomination/SKILL.md) | Triage | experimental | | [`committer-onboarding`](../../skills/committer-onboarding/SKILL.md) | Triage | experimental | -All five skills are `experimental`; no adopter has run the full +All six skills are `experimental`; no adopter has run the full contributor-to-committer path under evaluation conditions yet. ## Family boundary @@ -88,13 +91,14 @@ adopter's `/` directory: |---|---| | [`project.md`](../../projects/_template/project.md) | all skills (upstream repo slug, GitHub token context, `` reference) | | [`pmc-roster.md`](../../projects/_template/pmc-roster.md) | `contributor-nomination`, `committer-onboarding` (PMC and committer rosters, ICLA-checker URL) | -| [`contributor-nomination-config.md`](../../projects/_template/contributor-nomination-config.md) | `contributor-nomination` (activity-window length, committer / PMC thresholds, required-areas gates) | +| [`contributor-nomination-config.md`](../../projects/_template/contributor-nomination-config.md) | `contributor-nomination` (activity-window length, committer / PMC thresholds, required-areas gates); also used by `contributor-to-committer` as a fallback when `committer-readiness.md` is absent | +| [`committer-readiness.md`](../../projects/_template/committer-readiness.md) | `contributor-to-committer` (per-target threshold tables for committer/PMC readiness, assessment window; takes precedence over `contributor-nomination-config.md`) | | [`mentoring-welcome-config.md`](../../projects/_template/mentoring-welcome-config.md) | `mentoring-welcome` (tone knobs, contributing-doc links, AI-attribution footer wording) | | [`good-first-issue-config.md`](../../projects/_template/good-first-issue-config.md) | `good-first-issue-author` (issue-tracker URL, getting-started link, out-of-scope topic list) | ## Status -**Experimental.** All five skills are on main with eval suites; no +**Experimental.** All six skills are on main with eval suites; no adopter has run the full contributor-to-committer path end-to-end under evaluation conditions. diff --git a/docs/modes.md b/docs/modes.md index 732d80b9..f69cd84b 100644 --- a/docs/modes.md +++ b/docs/modes.md @@ -50,8 +50,8 @@ sequencing commitments behind them. | Mode | Purpose | Status | Skill count | |---|---|---|---| -| **Triage** | Issues, security reports, PRs: spot, classify, route, surface duplicates. Every output is a suggestion the human signs off on. | stable (security) / experimental (pr-management, issue-management, contributor-nomination, repo-health, release-management) | 31 | -| **Mentoring** | Joins issue and PR threads in a teaching register: clarifying questions, pointers to project conventions, paired examples from prior PRs, hand-off to a human when scope exceeds the agent. Also authors net-new good first issues to lower onboarding latency. | experimental | 3 | +| **Triage** | Issues, security reports, PRs: spot, classify, route, surface duplicates. Every output is a suggestion the human signs off on. | stable (security) / experimental (pr-management, issue-management, contributor-nomination, repo-health, release-management) | 30 | +| **Mentoring** | Joins issue and PR threads in a teaching register: clarifying questions, pointers to project conventions, paired examples from prior PRs, hand-off to a human when scope exceeds the agent. Also authors net-new good first issues to lower onboarding latency. | experimental | 4 | | **Drafting** | Agent drafts a fix for a well-scoped problem and opens a PR; every PR is reviewed and merged by a human committer. | stable (security-only); experimental (issue-management, audit-findings, release-management family) | 9 | | **Pairing** | Developer-side dev-cycle skills with mentorship intrinsic — multi-agent review pipelines, self-review and pre-flight patterns, scoped fix drafting under the developer's driver's seat. | experimental | 2 | | **Auto-merge** | Auto-merge restricted to objectively boring change classes (lint, dependency bumps inside an allow-list, license-header insertion, formatting, broken-link repair). | off | 0 | @@ -89,7 +89,6 @@ do not act without human review. | [`security-issue-import-via-forwarder`](../skills/security-issue-import-via-forwarder/SKILL.md) | Sub-skill of `security-issue-import` / `-invalidate` / `-sync` for the relay/forwarder case: reports relayed by an upstream broker (e.g. ASF security team) rather than arriving directly from the reporter. | experimental | | [`security-issue-import-from-scan`](../skills/security-issue-import-from-scan/SKILL.md) | Triage a security scanner's multi-finding output (via the `scan-format` adapter) into per-finding dispositions; opens tracker issues only after operator confirmation of the triage decisions. | experimental | | [`contributor-activity-sweep`](../skills/contributor-activity-sweep/SKILL.md) | Read-only GitHub activity card for a named contributor: PR authorship, code-review participation, issues, and comments over a configurable window. | experimental | -| [`contributor-to-committer`](../skills/contributor-to-committer/SKILL.md) | Read-only readiness tracker mapping a contributor's GitHub activity against the adopter's PMC-declared committer/PMC thresholds; surfaces a traffic-light brief (Not yet / Approaching / Ready to nominate) plus the specific evidence gaps that remain. | experimental | | [`pr-management-quick-merge`](../skills/pr-management-quick-merge/SKILL.md) | Identify trivial, low-risk PRs in the `ready for maintainer review` queue that pass every quality gate and touch only supplementary areas (docs, changelog, translations, tests); surfaces candidates with diff summaries and the exact merge command. | experimental | | [`ci-runner-audit`](../skills/ci-runner-audit/SKILL.md) | Read-only audit of GitHub Actions workflow runner compatibility across one repo, an explicit set, one Apache project's repos, or the full Apache GitHub org. | experimental | | [`dependency-audit`](../skills/dependency-audit/SKILL.md) | Read-only dependency vulnerability audit: detects the project's dependency manager(s), runs the appropriate audit tool, surfaces patchable findings grouped by severity, and proposes upgrades for maintainer review. | experimental | @@ -121,7 +120,7 @@ Three notes on the boundaries: ## Mentoring -**Status: experimental. 3 skills shipped.** +**Status: experimental. 4 skills shipped.** [`MISSION.md` § Mentoring](../MISSION.md#technical-scope) names this the highest-value project-side mode and the one off-the-shelf agent @@ -134,6 +133,7 @@ choices were reviewable independently from the runtime behaviour. | [`pr-management-mentor`](../skills/pr-management-mentor/SKILL.md) | Draft a teaching-register comment on a single GitHub issue or PR thread; waits for maintainer confirmation before posting. | experimental | | [`good-first-issue-author`](../skills/good-first-issue-author/SKILL.md) | Draft one net-new good first issue from a supplied gap or small task (suitability gate + readiness checklist); waits for maintainer confirmation before filing. | experimental | | [`mentoring-welcome`](../skills/mentoring-welcome/SKILL.md) | Draft a first-contact orientation comment for a first-time contributor on a newly opened issue or PR; detects first-time authorship via `author_association`, drafts a welcome with contributing-guide link and expected next steps; waits for maintainer confirmation before posting. | experimental | +| [`contributor-to-committer`](../skills/contributor-to-committer/SKILL.md) | Read-only readiness tracker mapping a contributor's GitHub activity against the adopter's PMC-declared committer/PMC thresholds; surfaces a traffic-light brief (Not yet / Approaching / Ready to nominate) plus the specific evidence gaps that remain. | experimental | | Doc | Purpose | |---|---|