--- name: contributing-upstream description: "Prepare upstream open source issues, PRs, and comments." --- # Contributing Upstream Upstream contribution is a maintainer-load negotiation. Before writing an issue, PR, or public comment, learn the repository's contribution contract and current maintainer posture. A repository can carry its own rules for this: in `AGENTS.md`, in its contributing docs, or in a project skill such as `contributing-`. Look for them first. Where they differ from this skill, they win. ## When to Use - Investigating whether to open an upstream issue or PR - Preparing comments on an existing upstream issue or PR - Preparing commits for an upstream PR - Writing PR titles and descriptions - Deciding whether a finding belongs upstream at all - Reviewing agent-assisted work before submitting it to someone else's tracker ## Core Rule Read upstream instructions before opening anything. Minimum first pass: - `README.md` - `CONTRIBUTING.md` - `AGENTS.md`, `CLAUDE.md`, `GEMINI.md`, or equivalent agent instructions - `.github/ISSUE_TEMPLATE/*`, `.github/PULL_REQUEST_TEMPLATE*`, and `.github/config.yml` - `CODE_OF_CONDUCT.md`, `SECURITY.md`, `SUPPORT.md`, `GOVERNANCE.md`, or `MAINTAINERS.md` when present - relevant package README/docs/changelog for the code you touched - pinned issues, recent maintainer comments, labels, releases, and project status notices Also check inherited community-health files from an org-level `.github` repo when GitHub surfaces them. ## Observation First When asked to "check", "observe", or "research" an upstream account/thread: - Do not comment, react, subscribe, edit, close, reopen, label, or otherwise write. - Use public repo data and docs first. - Treat `OWNER`, `MEMBER`, or `COLLABORATOR` author association as a strong signal that the comment is authoritative. - Cross-check authority with recent merges, top-contributor position, pinned repos, CODEOWNERS, maintainer docs, and org membership. - State uncertainty when exact permissions are not public. ## Contribution Gate Scan Before recommending or creating an issue/PR, answer: - Are new contributors allowed to open issues or PRs? - Is prior approval required? - Are issues/PRs auto-closed under certain conditions? - Are weekends, refactors, freezes, or releases declared no-triage periods? - Are agent-generated issues, bulk submissions, or low-signal reports explicitly banned? - Which validation commands are required, and are any commands forbidden? - Does the project require issue templates, reproduction repos, logs, tests, screenshots, or benchmarks? If the docs say not to open a PR without approval, do not open one. If they say issues from new contributors are auto-closed, write the issue as a concise maintainer-ready artifact and expect silence unless reopened. ## Agent-Assisted Work The human account owns the submission. Never use a coding agent as a reason to lower the bar. Before filing: - Reproduce the problem yourself or clearly state that you cannot. - Verify the issue is not explained by docs, build steps, install steps, or known current status. - Prefer the documented setup exactly, even when local agent instructions differ. - If local instructions conflict with upstream docs, upstream docs win for upstream submissions. - Remove agent transcript noise, speculative root causes, and generic "suggested fixes" unless evidence supports them. - Keep the report short enough for a maintainer to read in one screen unless the template requires more. Avoid filing issues that only say "my agent could not validate this." Turn that into a local note unless it demonstrates a real user-facing failure from the documented workflow. ## Issue Shape A good upstream issue is: - concrete: one bug, request, or question - current: checked against latest docs and releases - reproducible: includes exact command/path/version/logs when relevant - respectful of project scope: explains why it belongs in this repo - concise: no agent chatter, no long theory dump Use the project's issue template exactly. If no template exists: ```markdown ## Problem [What breaks or what is missing.] ## Reproduction [Minimal steps, commands, versions, relevant logs.] ## Expected [What should happen.] ## Context [Why this matters, and whether you can help implement it.] ``` ## PR Shape Do not open a PR unless the repo allows it and the change has an obvious review path. Before PR: - Read contribution docs and package-specific docs. - Search existing issues/PRs. - Keep one logical change per PR. - Run required validation exactly as documented. - Self-review the diff for unrelated changes, secrets, generated noise, and formatting churn. - Include tests for behavior changes unless maintainers' docs say otherwise. ## Commit Format (Conventional Commits) ``` ():