Skip to content

docs: scope the terminology ban with actor rules and exemptions - #127

Open
mlehotskylf wants to merge 2 commits into
mainfrom
docs/terminology-exemptions
Open

docs: scope the terminology ban with actor rules and exemptions#127
mlehotskylf wants to merge 2 commits into
mainfrom
docs/terminology-exemptions

Conversation

@mlehotskylf

@mlehotskylf mlehotskylf commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

Why

The Terminology section added in #124 bans maintainer and apprentice but never says which occurrences are out of scope. Two consequences showed up while reviewing #125:

  1. A whole class of error passed the sweep. The enroll-program page said "Maintainers of Linux Foundation projects can enroll a program." No banned term as a role name, so the check passed — but Program Admins create and administer programs; a maintainer works with one rather than enrolling a program themselves. The word was defensible; the actor was wrong.
  2. The same false positives get re-litigated every time. Helm's maintainers: key, the apprenticeNeeds DynamoDB fallback, and the ordinary-English uses of "maintainer" were each argued from scratch, with no record of the conclusion.

Changes

All in CLAUDE.md, under Terminology:

  • New "Who does what" — Program Admins create and administer programs, usually several; open-source maintainers maintain the upstream project, do not normally create programs, and often become mentors. This is the rule that catches wrong-actor copy.
  • New "Exemptions", replacing the one-sentence legacy-docs exception:
    • descriptions of the legacy platform (unchanged in substance)
    • identifiers owned by someone else — Helm defines maintainers: in Chart.yaml, and migrate_dynamo_to_postgres.py reads apprenticeNeeds as a fallback for records predating the menteeNeeds rename
    • maintainer in its ordinary English sense — mentees are paired with maintainers (who serve as mentors) and may become maintainers themselves
  • PR checklist — the Terminology item now points at both subsections and says to check Exemptions before renaming.

Verified

Each exemption was checked against the code rather than taken from memory:

  • backend/charts/lfx-mentorship-backend/Chart.yaml:17 is the only maintainers: in the chart; no values key or template uses either banned term.
  • migrate_dynamo_to_postgres.py:504 reads p.get("menteeNeeds") or p.get("apprenticeNeeds") — a fallback, not the primary field name. An earlier draft of this text described it as simply "the DynamoDB field name"; corrected before commit.
  • 001_initial.up.sql:154 confirms member_type encodes program_admin | mentor.

Documentation only — no code, schema, or chart changes.

🤖 Generated with Claude Code

The Terminology section banned "maintainer" and "apprentice" without
saying which occurrences were out of scope, so every sweep
re-litigated the same false positives, and one class of error slipped
through entirely.

- Add "Who does what": Program Admins create and administer programs;
  open-source maintainers do not, they work with a Program Admin and
  often become mentors. UI copy claiming that maintainers enrol
  programs uses no banned term but names the wrong actor.
- Replace the single legacy-docs exception with an Exemptions list
  covering legacy descriptions, third-party identifiers (Helm's
  Chart.yaml maintainers: key, the apprenticeNeeds DynamoDB fallback
  in migrate_dynamo_to_postgres.py), and "maintainer" in its ordinary
  English sense.
- Point the PR checklist item at both subsections.

Signed-off-by: Michal Lehotsky <mlehotsky@linuxfoundation.org>
@mlehotskylf
mlehotskylf requested a review from a team as a code owner August 28, 2026 15:07
Copilot AI balanced review requested due to automatic review settings August 28, 2026 15:07

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Clarifies terminology rules to distinguish Program Admins from open-source maintainers and document valid exemptions.

Changes:

  • Adds actor-specific terminology guidance.
  • Documents legacy and third-party identifier exemptions.
  • Expands the terminology self-review checklist.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Copilot AI review requested due to automatic review settings August 28, 2026 16:13

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants