NO-ISSUE: feat(dev): add frontend skill with PatternFly ai-helpers dependency - #24
NO-ISSUE: feat(dev): add frontend skill with PatternFly ai-helpers dependency#24quay-devel wants to merge 4 commits into
Conversation
…pendency Adds /dev:frontend skill for Quay React frontend context, covering data flow patterns, Vitest testing conventions, and where Quay overrides PF defaults (SuspenseLoader, state management, axios config). Declares patternfly/ai-helpers react plugin as a Lola dependency so PF6 component knowledge is available automatically. The /code skill now auto-detects web/ changes and invokes /frontend before implementing. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
WalkthroughAdds a new Dev plugin skill ChangesFrontend Dev Skill Registration
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@plugins/dev/skills/frontend/SKILL.md`:
- Around line 86-88: The fenced data-flow block containing "Component → Hook
(src/hooks/UseX.ts) → Resource (src/resources/XResource.ts) → Axios → API" is
unlabeled and triggers markdownlint MD040; update that backtick fence to include
a language label (e.g., change ``` to ```text) so the block is explicitly marked
as text while leaving the inner content unchanged.
- Around line 110-122: The test references axios.post but never imports axios,
causing a ReferenceError; add an import for the mocked module (e.g., import
axios from 'src/libs/axios') alongside the existing imports so
vi.mock('src/libs/axios') provides the axios object used in the assertion
(affecting the vi.mocked(axios.post) call in the test).
🪄 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: Organization UI
Review profile: CHILL
Plan: Enterprise
Run ID: a829cd11-9135-49e0-a72f-55c156af9649
📒 Files selected for processing (6)
PLUGINS.mddocs/data.jsonplugins/dev/README.mdplugins/dev/lola.yamlplugins/dev/skills/code/SKILL.mdplugins/dev/skills/frontend/SKILL.md
📜 Review details
🧰 Additional context used
🪛 markdownlint-cli2 (0.22.1)
plugins/dev/skills/frontend/SKILL.md
[warning] 86-86: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🔇 Additional comments (6)
plugins/dev/lola.yaml (1)
1-3: Dependency declaration is clean and appropriately scoped.This wiring matches the new frontend skill intent and keeps existing hooks intact.
plugins/dev/skills/frontend/SKILL.md (1)
35-83: Quay override guidance is clear and actionable.The Suspense/Vitest/state-layering/Axios sections are specific enough to prevent PF-default drift during frontend work.
docs/data.json (1)
26-30: Skill metadata entry is consistent and complete.Name/id/description match the new
/dev:frontendbehavior and auto-invocation intent.PLUGINS.md (1)
17-17: Plugins index update looks good.The new
/dev:frontendentry is clear and aligned with the skill contract.plugins/dev/README.md (1)
17-17: README skill table update is accurate.The new row is concise and consistent with the frontend skill behavior.
plugins/dev/skills/code/SKILL.md (1)
33-35: Frontend auto-detect step is a good workflow guardrail.It adds the right context-loading trigger before implementation begins.
Add language label to fenced data-flow block (MD040) and add missing axios import to the Vitest example snippet. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Per review feedback from jbpratt — include the accessibility and design foundations modules from patternfly/ai-helpers alongside react. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Summary
/dev:frontendskill that loads Quay-specific React frontend contextpatternfly/ai-helpersreact plugin as a Lola dependency so PatternFly 6 component knowledge is available/dev:codeand invoke/frontendwhen tickets touchweb/Root Cause / Rationale
The dev plugin had no frontend-specific context. Agents working on Quay's React frontend (
web/) lacked knowledge of Quay's conventions that diverge from PatternFly defaults (SuspenseLoader pattern, Vitest instead of Jest, state management layering, custom Axios instance). By adding this skill and the PF Lola dependency, agents get both generic PatternFly 6 knowledge and Quay-specific overrides in one package.Changes
plugins/dev/skills/frontend/SKILL.md— New skill covering: Quay overrides (SuspenseLoader, Vitest, state management, Axios), data flow pattern (Component → Hook → Resource → Axios), testing patterns (Vitest unit tests, Playwright E2E)plugins/dev/lola.yaml— Addedpatternfly/ai-helpersreact plugin as a Lola dependencyplugins/dev/skills/code/SKILL.md— Added frontend auto-detect block to Step 1plugins/dev/README.md— Added/dev:frontendto skills tableTest Plan
JIRA
N/A — NO-ISSUE enhancement
Backport
Automation