myco:community-pr-review

Reviews and merges community pull requests using a fixed quality gate checklist.

777|101|Updated Apr 21, 2025
One-click install
npx skills add https://github.com/sirkirby/unifi-network-mcp --skill myco-community-pr-review
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: myco:community-pr-review
Source: https://github.com/sirkirby/unifi-network-mcp/tree/main/.agents/skills/community-pr-review
Command: npx skills add https://github.com/sirkirby/unifi-network-mcp --skill myco-community-pr-review

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Reviewing community pull requests in the unifi-mcp repository requires enforcing many project-specific rules — f-string logger bans, Ruff lint, Pydantic model wiring, doc site updates, live smoke tests against a real UniFi controller — and missing any one of them causes silent failures after merge. This Skill encodes the full maintainer workflow so every externally-authored PR goes through the same quality gates before merge.

Core Features & Use Cases

  • Quality Gate Checklist: Classifies PRs as feature-addition or governance/structural refactors, then applies Gates 0–4 covering lint, f-string loggers, Pydantic model wiring, doc site updates, generated artifact drift, and shared base model defaults.
  • Fork-Edit Merge Model: Commits fixes directly to trusted contributors' fork branches to preserve attribution and eliminate review round-trips, with an exception path for unresponsive first-time contributors.
  • Live Validation for API-Touching PRs: Runs scripts/live_smoke.py against a real UniFi controller, mutating create/update/delete cycles, and field-preservation checks that mock tests cannot catch.
  • Use Case: A maintainer is asked to review a community PR adding a new firewall tool. The Skill walks them through CI authorization for first-time contributors, the gate checklist, independent live smoke tests, and the fork-edit push to fix lint issues before merging.

Quick Start

Review the open community PR #123 in the unifi-mcp repository and run the full quality gate checklist before deciding whether to merge it.

Frequently Asked Questions about myco:community-pr-review

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I review a community pull request before merging?

Classify the PR as a feature addition or governance refactor, then run the quality gates in order: Ruff lint, f-string logger scan in manager files, Pydantic model wiring, doc site updates, and generated artifact drift checks. Post blockers as a request-changes review, not a comment.

How do I fix issues in a contributor's PR without requesting changes?

Use the fork-edit model: add the contributor's fork as a git remote, check out their branch, commit fixes directly, and push back to their branch. This preserves contributor attribution while eliminating review round-trip latency for trusted contributors.

Why are f-strings banned in logger calls?

F-string loggers eagerly evaluate all arguments even when the log level is suppressed, creating unnecessary overhead on every suppressed call. The project requires %s-style lazy formatting, and manager files are the most common place violations appear.

Why do mock tests pass but the PR still breaks against a real UniFi controller?

Mock tests give false confidence because response shapes differ between controller versions and some fields only appear with specific configurations. API-touching PRs require live smoke tests via scripts/live_smoke.py against a real controller before merge.

What should I do when a first-time contributor's PR shows no CI results?

GitHub silently queues workflows with action_required status for first-time contributors. Manually approve and run the pending workflows in the PR's Actions tab before reviewing, otherwise you review against stale code.

When should a community PR be closed instead of merged?

Close AI-bot PRs that duplicate parallel in-house work, and close unsalvageable human PRs using the close-and-redirect pattern with meaningful credit. PRs that pass mechanical gates but violate the project's design intent should also be redirected.