Skip to content

feat(skills): add verify composition skill and lock /ship to explicit invocation - #641

Merged
baleen37 merged 5 commits into
mainfrom
lively-voyage-wall
May 1, 2026
Merged

feat(skills): add verify composition skill and lock /ship to explicit invocation#641
baleen37 merged 5 commits into
mainfrom
lively-voyage-wall

Conversation

@baleen37

@baleen37 baleen37 commented May 1, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add browser-testing-with-devtools and debugging-and-error-recovery skills (mirrored from addyosmani/agent-skills) as the two "Verify — prove it works" practices.
  • Add new /verify composition skill that sequences root-cause triage (Phase 1) and Chrome DevTools runtime verification (Phase 2), then emits a PASS/PARTIAL/FAIL report. Marked disable-model-invocation: true so it only runs on explicit user request.
  • Lock /ship to explicit invocation by adding disable-model-invocation: true so phrases like "ship it" / "release" / "deploy" no longer auto-trigger the skill.

Changes

  • plugins/me/skills/ship/SKILL.md — frontmatter now includes disable-model-invocation: true.
  • plugins/me/skills/verify/SKILL.md — new composition skill.
  • plugins/me/skills/browser-testing-with-devtools/SKILL.md — new.
  • plugins/me/skills/debugging-and-error-recovery/SKILL.md — new.

Test plan

  • /ship no longer auto-triggers on the phrase "ship it" in a fresh session.
  • /verify runs only when invoked explicitly via slash command.
  • /verify resolves links to the two underlying skills correctly.

Summary by CodeRabbit

Release Notes

  • New Features

    • Added skill guides for browser testing with DevTools, CI/CD practices, debugging and error recovery, deprecation and migration, documentation standards, and git workflow
    • Introduced /verify skill for end-to-end verification with browser runtime validation
  • Refactor

    • Restructured /ship to run specialist reviews in parallel instead of sequentially
    • Replaced /land-and-deploy skill with new /shipping-and-launch guidance focused on reversible, observable, incremental deployments

Test User added 5 commits May 2, 2026 02:43
BREAKING CHANGE: /ship now loads a launch checklist (feature flags,
staged rollout, monitoring, rollback) instead of an automated review
gate workflow. /land-and-deploy is removed.
New /ship-review skill: spawns code-reviewer, security-auditor, and
test-engineer subagents in parallel, then merges into a GO/NO-GO
decision with rollback plan. Adapted from addyosmani/agent-skills
commands/ship.md. Explicit-invocation only — does not auto-trigger
from "ship"/"release"/"deploy" keywords (those stay with /ship).
Add independent skills covering trunk-based git workflow, CI/CD pipeline
design, deprecation and migration patterns, ADRs and documentation, and
launch readiness with feature flag lifecycle.
- ship: addyosmani /ship command 내용으로 교체 (3-persona 병렬 fan-out → GO/NO-GO + rollback)
- ship-review: 삭제 (ship과 중복, explicit-only 가드 때문에 동작 어색)

BREAKING CHANGE: /ship 호출 시 기존 배포 체크리스트 대신 fan-out 리뷰가 실행됨. 체크리스트는 shipping-and-launch skill 참조.
… invocation

- Add browser-testing-with-devtools and debugging-and-error-recovery skills
  (mirrored from addyosmani/agent-skills) as the two "Verify" practices.
- Add /verify composition skill that runs root-cause triage then runtime
  verification and emits a PASS/PARTIAL/FAIL report.
- Mark /ship as disable-model-invocation so it only runs on explicit
  user request, not on phrases like "ship it" or "release".
@baleen37
baleen37 enabled auto-merge (squash) May 1, 2026 18:25
@coderabbitai

coderabbitai Bot commented May 1, 2026

Copy link
Copy Markdown
📝 Walkthrough

Walkthrough

This PR introduces a comprehensive skill library covering development practices (debugging, CI/CD, git workflow, documentation, deprecation management) and restructures the ship/deploy workflow from individual specialist checklists to a parallel subagent orchestrator. It adds browser-testing and verify composition skills while removing the land-and-deploy skill and supporting specialist reference documentation.

Changes

Cohort / File(s) Summary
Foundational Skills
plugins/me/skills/browser-testing-with-devtools/SKILL.md, plugins/me/skills/ci-cd-and-automation/SKILL.md, plugins/me/skills/debugging-and-error-recovery/SKILL.md, plugins/me/skills/deprecation-and-migration/SKILL.md, plugins/me/skills/documentation-and-adrs/SKILL.md, plugins/me/skills/git-workflow-and-versioning/SKILL.md
New skill guides defining best practices for browser testing, CI/CD pipelines, systematic debugging, deprecation workflows, documentation standards (ADRs and API docs), and git branching conventions.
Ship Workflow Restructure
plugins/me/skills/ship/SKILL.md
Rewritten from sequential specialist reviews to parallel fan-out orchestration using subagents (code-reviewer, security-auditor, test-engineer) with consolidated go/no-go decision logic requiring explicit rollback plans; Critical findings default to NO-GO.
Deleted Ship References
plugins/me/skills/ship/references/*
Removed review-checklist, test-triage, and all specialist checklists (api-contract, data-migration, maintainability, performance, red-team, security, testing) that previously defined individual review scopes and output formats.
Deployment Lifecycle
plugins/me/skills/shipping-and-launch/SKILL.md, plugins/me/skills/verify/SKILL.md
New shipping-and-launch skill documenting reversible, incremental deployments with feature-flag lifecycle and rollback constraints; new verify composition skill sequencing debugging-and-error-recovery and browser-testing phases with structured reporting.
Deleted Workflows & Tests
plugins/me/skills/land-and-deploy/SKILL.md, tests/me/me-specific.bats
Removed the land-and-deploy skill (previously handled post-merge CI gate and deployment waiting); deleted obsolete test checks for ship self-containment, reference files, and land-and-deploy presence.

Sequence Diagram

sequenceDiagram
    actor User
    participant Verify as /verify Composition
    participant Debug as debugging-and-error-recovery
    participant Browser as browser-testing-with-devtools
    participant Report as Verification Report

    User->>Verify: Trigger verify
    activate Verify
    
    Verify->>Debug: Phase 1: Execute debug workflow
    activate Debug
    Debug->>Debug: Reproduce → Localize → Reduce → Fix → Guard
    Debug-->>Verify: Return debug evidence
    deactivate Debug
    
    Verify->>Browser: Phase 2: Browser validation (if applicable)
    activate Browser
    Browser->>Browser: Inspect DOM, Console, Network, Performance
    Browser->>Browser: Visual & Accessibility checks
    Browser-->>Verify: Return browser evidence
    deactivate Browser
    
    Verify->>Report: Merge phase results
    activate Report
    Report->>Report: Verdict: PASS/PARTIAL/FAIL
    Report->>Report: Attach per-phase evidence
    deactivate Report
    
    Report-->>User: Structured verification report
    deactivate Verify
Loading

Estimated Code Review Effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Possibly Related PRs

Poem

🐰 Ship workflows dance in parallel streams,
No more long checklists, just orchestrated dreams—
Debugged, tested, verified with care,
Launch reversibly, monitor the air! 🚀

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title clearly and concisely summarizes the two main changes: adding a verify composition skill and restricting /ship to explicit invocation.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch lively-voyage-wall

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
Review rate limit: 0/1 reviews remaining, refill in 60 minutes.

Comment @coderabbitai help to get the list of available commands and usage tips.

auto-merge was automatically disabled May 1, 2026 18:26

Repository rule violations found

@coderabbitai coderabbitai Bot 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.

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@plugins/me/skills/browser-testing-with-devtools/SKILL.md`:
- Line 82: Several fenced code blocks in SKILL.md that contain workflow/ASCII
step lists (for example the block starting with "1. REPRODUCE") are unlabeled
and trigger markdownlint MD040; update each unlabeled triple-backtick fence to
include the text language tag (change ``` to ```text) so the step/ASCII blocks
are explicitly marked, and apply the same change to the other similar blocks
noted in the review (the remaining unlabeled workflow/ASCII fenced blocks
throughout the document).

In `@plugins/me/skills/debugging-and-error-recovery/SKILL.md`:
- Line 25: Several fenced code blocks in SKILL.md are missing language tokens
and blank lines causing MD040/MD031 warnings; update each fenced block to
include an explicit language (use ```text for decision-tree/plain examples) and
ensure there is a blank line before and after every triple-backtick fence.
Search SKILL.md for bare fences (``` ) and replace them with fenced blocks like
```text (or the appropriate language for code snippets), and add a blank line
immediately above and below each fence so all blocks follow the suggested
pattern and clear the markdownlint errors MD040/MD031.

In `@plugins/me/skills/documentation-and-adrs/SKILL.md`:
- Around line 16-33: The ADR template's opening fenced code block (the triple
backticks around the ADR content that includes "ADR-NNN: <Title>") lacks a
language identifier causing markdownlint MD040; update the opening fence to
include a language token (e.g., change the leading "```" to "```md") so the
block containing "ADR-NNN: <Title>" is fenced as Markdown and the linter passes.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 0a9a443b-4a7c-4334-b85c-c832fea3dc52

📥 Commits

Reviewing files that changed from the base of the PR and between d601754 and 749e1f0.

📒 Files selected for processing (20)
  • plugins/me/skills/browser-testing-with-devtools/SKILL.md
  • plugins/me/skills/ci-cd-and-automation/SKILL.md
  • plugins/me/skills/debugging-and-error-recovery/SKILL.md
  • plugins/me/skills/deprecation-and-migration/SKILL.md
  • plugins/me/skills/documentation-and-adrs/SKILL.md
  • plugins/me/skills/git-workflow-and-versioning/SKILL.md
  • plugins/me/skills/land-and-deploy/SKILL.md
  • plugins/me/skills/ship/SKILL.md
  • plugins/me/skills/ship/references/review-checklist.md
  • plugins/me/skills/ship/references/specialists/api-contract.md
  • plugins/me/skills/ship/references/specialists/data-migration.md
  • plugins/me/skills/ship/references/specialists/maintainability.md
  • plugins/me/skills/ship/references/specialists/performance.md
  • plugins/me/skills/ship/references/specialists/red-team.md
  • plugins/me/skills/ship/references/specialists/security.md
  • plugins/me/skills/ship/references/specialists/testing.md
  • plugins/me/skills/ship/references/test-triage.md
  • plugins/me/skills/shipping-and-launch/SKILL.md
  • plugins/me/skills/verify/SKILL.md
  • tests/me/me-specific.bats
💤 Files with no reviewable changes (11)
  • plugins/me/skills/ship/references/specialists/performance.md
  • plugins/me/skills/ship/references/specialists/data-migration.md
  • plugins/me/skills/ship/references/specialists/testing.md
  • plugins/me/skills/ship/references/specialists/security.md
  • plugins/me/skills/ship/references/specialists/maintainability.md
  • plugins/me/skills/ship/references/specialists/api-contract.md
  • plugins/me/skills/ship/references/test-triage.md
  • plugins/me/skills/land-and-deploy/SKILL.md
  • plugins/me/skills/ship/references/review-checklist.md
  • tests/me/me-specific.bats
  • plugins/me/skills/ship/references/specialists/red-team.md


When processing browser data, maintain clear boundaries:

```

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Please add language tags to unlabeled fenced blocks.

The listed sections trigger markdownlint MD040. Use ```text for workflow/ASCII blocks so the file is lint-clean and consistent.

Suggested pattern
-```
+```text
 1. REPRODUCE
 ...
-```
+```

Also applies to: 99-99, 128-128, 152-152, 208-208, 226-226, 248-248

🧰 Tools
🪛 markdownlint-cli2 (0.22.1)

[warning] 82-82: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@plugins/me/skills/browser-testing-with-devtools/SKILL.md` at line 82, Several
fenced code blocks in SKILL.md that contain workflow/ASCII step lists (for
example the block starting with "1. REPRODUCE") are unlabeled and trigger
markdownlint MD040; update each unlabeled triple-backtick fence to include the
text language tag (change ``` to ```text) so the step/ASCII blocks are
explicitly marked, and apply the same change to the other similar blocks noted
in the review (the remaining unlabeled workflow/ASCII fenced blocks throughout
the document).


When anything unexpected happens:

```

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Address markdownlint fence warnings in this file.

Several fenced blocks are missing a language token and a couple need blank lines around fences. Consolidating these to ```text (for decision trees) and keeping blank lines around all fences will clear MD040/MD031 warnings.

Suggested pattern
-```
+```text
 ...
-```
+```
 For test failures:
+
 ```bash
 # Run the specific failing test
 npm test -- --grep "test name"
 ...
</details>


Also applies to: 44-44, 55-55, 76-76, 91-91, 102-102, 125-125, 176-176, 190-190, 201-201

<details>
<summary>🧰 Tools</summary>

<details>
<summary>🪛 markdownlint-cli2 (0.22.1)</summary>

[warning] 25-25: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

</details>

</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

Verify each finding against the current code and only fix it if needed.

In @plugins/me/skills/debugging-and-error-recovery/SKILL.md at line 25, Several
fenced code blocks in SKILL.md are missing language tokens and blank lines
causing MD040/MD031 warnings; update each fenced block to include an explicit
language (use text for decision-tree/plain examples) and ensure there is a blank line before and after every triple-backtick fence. Search SKILL.md for bare fences ( ) and replace them with fenced blocks like ```text (or the
appropriate language for code snippets), and add a blank line immediately above
and below each fence so all blocks follow the suggested pattern and clear the
markdownlint errors MD040/MD031.


</details>

<!-- fingerprinting:phantom:triton:hawk:bcdd6a95-6c47-4434-99a2-1cba58cdfe40 -->

<!-- d98c2f50 -->

<!-- This is an auto-generated comment by CodeRabbit -->

Comment on lines +16 to +33
```
# ADR-NNN: <Title>

## Status
Proposed | Accepted | Superseded by ADR-XXX

## Context
What problem? What constraints? What did we know at the time?

## Decision
What we chose.

## Consequences
What this enables, what it costs, what it forecloses.

## Alternatives Considered
What else we looked at and why we didn't pick it.
```

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Add a language identifier to the ADR template code fence.

markdownlint MD040 is triggered here because the fenced block has no language tag. Add one (e.g., md) to keep lint green.

Proposed fix
-```
+```md
 # ADR-NNN: <Title>
@@
-```
+```
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
```
# ADR-NNN: <Title>
## Status
Proposed | Accepted | Superseded by ADR-XXX
## Context
What problem? What constraints? What did we know at the time?
## Decision
What we chose.
## Consequences
What this enables, what it costs, what it forecloses.
## Alternatives Considered
What else we looked at and why we didn't pick it.
```
🧰 Tools
🪛 markdownlint-cli2 (0.22.1)

[warning] 16-16: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@plugins/me/skills/documentation-and-adrs/SKILL.md` around lines 16 - 33, The
ADR template's opening fenced code block (the triple backticks around the ADR
content that includes "ADR-NNN: <Title>") lacks a language identifier causing
markdownlint MD040; update the opening fence to include a language token (e.g.,
change the leading "```" to "```md") so the block containing "ADR-NNN: <Title>"
is fenced as Markdown and the linter passes.

@baleen37
baleen37 merged commit 33845ff into main May 1, 2026
5 checks passed
@baleen37
baleen37 deleted the lively-voyage-wall branch May 1, 2026 18:28
baleen-release-app Bot pushed a commit that referenced this pull request May 1, 2026
# [17.0.0](v16.19.0...v17.0.0) (2026-05-01)

### Features

* **skills:** add verify composition skill and lock /ship to explicit invocation ([#641](#641)) ([33845ff](33845ff))

### BREAKING CHANGES

* **skills:** /ship now loads a launch checklist (feature flags,
staged rollout, monitoring, rollback) instead of an automated review
gate workflow. /land-and-deploy is removed.

* feat(ship-review): add explicit-only fan-out review skill

New /ship-review skill: spawns code-reviewer, security-auditor, and
test-engineer subagents in parallel, then merges into a GO/NO-GO
decision with rollback plan. Adapted from addyosmani/agent-skills
commands/ship.md. Explicit-invocation only — does not auto-trigger
from "ship"/"release"/"deploy" keywords (those stay with /ship).

* feat(skills): add five engineering practice skills to me plugin

Add independent skills covering trunk-based git workflow, CI/CD pipeline
design, deprecation and migration patterns, ADRs and documentation, and
launch readiness with feature flag lifecycle.

* refactor(ship)!: replace ship skill with addyosmani fan-out orchestrator

- ship: addyosmani /ship command 내용으로 교체 (3-persona 병렬 fan-out → GO/NO-GO + rollback)
- ship-review: 삭제 (ship과 중복, explicit-only 가드 때문에 동작 어색)
* **skills:** /ship 호출 시 기존 배포 체크리스트 대신 fan-out 리뷰가 실행됨. 체크리스트는 shipping-and-launch skill 참조.

* feat(skills): add verify composition skill and lock /ship to explicit invocation

- Add browser-testing-with-devtools and debugging-and-error-recovery skills
  (mirrored from addyosmani/agent-skills) as the two "Verify" practices.
- Add /verify composition skill that runs root-cause triage then runtime
  verification and emits a PASS/PARTIAL/FAIL report.
- Mark /ship as disable-model-invocation so it only runs on explicit
  user request, not on phrases like "ship it" or "release".
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.

1 participant