@bovinphang/frontend-craft 2.8.0 → 2.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +3 -3
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +378 -339
- package/CHANGELOG.zh-CN.md +377 -338
- package/CONTRIBUTING.md +371 -361
- package/CONTRIBUTING.zh-CN.md +371 -361
- package/README.md +545 -493
- package/README.openclaw.md +359 -320
- package/README.openclaw.zh-CN.md +359 -320
- package/README.zh-CN.md +545 -493
- package/agents/fec-code-reviewer.md +24 -3
- package/agents/fec-debugger.md +1 -1
- package/agents/fec-doc-updater.md +1 -1
- package/agents/fec-e2e-runner.md +1 -1
- package/agents/fec-figma-implementer.md +1 -1
- package/agents/fec-performance-optimizer.md +1 -1
- package/agents/fec-refactor-cleaner.md +4 -1
- package/agents/fec-refactoring-expert.md +81 -0
- package/agents/fec-security-reviewer.md +17 -1
- package/agents/fec-test-planner.md +1 -1
- package/agents/fec-typescript-reviewer.md +24 -8
- package/agents/fec-ui-checker.md +11 -11
- package/commands/fec-debug.md +1 -1
- package/commands/fec-refactor-plan.md +17 -0
- package/commands/fec-refactor.md +18 -0
- package/commands/fec-review.md +40 -10
- package/commands/fec-scaffold.md +1 -1
- package/commands/fec-smell.md +17 -0
- package/commands/fec-tdd.md +6 -2
- package/dist/bin/frontend-craft.js +190 -38
- package/dist/hooks/fec-run-tests.js +5 -1
- package/dist/hooks/fec-session-start.js +1 -1
- package/docs/example-prompts.md +157 -140
- package/docs/ja-JP/README.md +534 -493
- package/docs/ko-KR/README.md +534 -493
- package/docs/project-structure.md +151 -131
- package/docs/refactoring/README.md +50 -0
- package/docs/refactoring/catalog.md +105 -0
- package/docs/refactoring/smell-refactoring-matrix.md +41 -0
- package/docs/review-and-diagram-workflows.md +39 -0
- package/docs/runtimes/antigravity.md +18 -10
- package/docs/runtimes/augment.md +18 -10
- package/docs/runtimes/claude.md +191 -177
- package/docs/runtimes/claude.zh-CN.md +189 -175
- package/docs/runtimes/cline.md +18 -10
- package/docs/runtimes/codebuddy.md +18 -10
- package/docs/runtimes/codex.md +18 -10
- package/docs/runtimes/compatibility.md +27 -0
- package/docs/runtimes/copilot.md +18 -10
- package/docs/runtimes/cursor.md +18 -10
- package/docs/runtimes/gemini.md +18 -10
- package/docs/runtimes/kilo.md +18 -10
- package/docs/runtimes/openclaw.md +18 -10
- package/docs/runtimes/opencode.md +18 -10
- package/docs/runtimes/qoder.md +18 -19
- package/docs/runtimes/trae.md +18 -10
- package/docs/runtimes/windsurf.md +18 -10
- package/docs/superpowers/plans/2026-09-26-content-integrity.md +145 -0
- package/docs/superpowers/plans/2026-09-26-diagram-quality.md +170 -0
- package/docs/superpowers/specs/2026-09-26-diagram-quality-design.md +77 -0
- package/docs/superpowers/specs/2026-09-26-project-optimization-design.md +95 -0
- package/docs/zh-CN/example-prompts.md +157 -140
- package/docs/zh-CN/project-structure.md +148 -128
- package/docs/zh-CN/review-and-diagram-workflows.md +39 -0
- package/docs/zh-TW/README.md +534 -493
- package/localized/zh-CN/agents/fec-code-reviewer.md +22 -3
- package/localized/zh-CN/agents/fec-refactor-cleaner.md +3 -0
- package/localized/zh-CN/agents/fec-refactoring-expert.md +53 -0
- package/localized/zh-CN/agents/fec-security-reviewer.md +16 -0
- package/localized/zh-CN/agents/fec-typescript-reviewer.md +23 -7
- package/localized/zh-CN/commands/fec-refactor-plan.md +15 -0
- package/localized/zh-CN/commands/fec-refactor.md +14 -0
- package/localized/zh-CN/commands/fec-review.md +40 -9
- package/localized/zh-CN/commands/fec-smell.md +13 -0
- package/localized/zh-CN/commands/fec-tdd.md +4 -0
- package/localized/zh-CN/skills/eval_queries.json +244 -0
- package/localized/zh-CN/skills/fec-code-review/SKILL.md +20 -1
- package/localized/zh-CN/skills/fec-code-review/references/report-template.md +11 -1
- package/localized/zh-CN/skills/fec-code-smells/SKILL.md +33 -0
- package/localized/zh-CN/skills/fec-code-smells/references/detection-guide.md +25 -0
- package/localized/zh-CN/skills/fec-code-smells/references/smell-catalog.md +817 -0
- package/localized/zh-CN/skills/fec-code-smells/references/smell-to-refactoring-map.md +265 -0
- package/localized/zh-CN/skills/fec-image-generation/SKILL.md +31 -1
- package/localized/zh-CN/skills/fec-image-generation/assets/quality-examples/README.md +14 -0
- package/localized/zh-CN/skills/fec-image-generation/assets/quality-examples/architecture.json +121 -0
- package/localized/zh-CN/skills/fec-image-generation/assets/quality-examples/invalid-explicit.json +41 -0
- package/localized/zh-CN/skills/fec-image-generation/assets/quality-examples/sequence.json +53 -0
- package/localized/zh-CN/skills/fec-image-generation/assets/quality-examples/sequence.mmd +21 -0
- package/localized/zh-CN/skills/fec-image-generation/assets/quality-examples/workflow.json +98 -0
- package/localized/zh-CN/skills/fec-image-generation/assets/quality-examples/workflow.mmd +7 -0
- package/localized/zh-CN/skills/fec-image-generation/references/diagram-workflows.md +10 -3
- package/localized/zh-CN/skills/fec-image-generation/references/html-technical-diagrams.md +8 -1
- package/localized/zh-CN/skills/fec-image-generation/references/png-qa-autofix.md +9 -2
- package/localized/zh-CN/skills/fec-image-generation/scripts/diagram-browser.mjs +90 -0
- package/localized/zh-CN/skills/fec-image-generation/scripts/diagram-layout.mjs +176 -0
- package/localized/zh-CN/skills/fec-image-generation/scripts/export-diagram.mjs +48 -80
- package/localized/zh-CN/skills/fec-image-generation/scripts/mermaid-render.mjs +64 -0
- package/localized/zh-CN/skills/fec-image-generation/scripts/png-qa.mjs +35 -4
- package/localized/zh-CN/skills/fec-image-generation/scripts/tech-diagram-render.mjs +193 -53
- package/localized/zh-CN/skills/fec-refactor-clean/SKILL.md +3 -0
- package/localized/zh-CN/skills/fec-refactoring/SKILL.md +83 -0
- package/localized/zh-CN/skills/fec-refactoring/references/principles.md +43 -0
- package/localized/zh-CN/skills/fec-refactoring/references/refactoring-vs-feature-change.md +25 -0
- package/localized/zh-CN/skills/fec-refactoring/references/when-to-refactor.md +17 -0
- package/localized/zh-CN/skills/fec-refactoring/references/workflow.md +59 -0
- package/localized/zh-CN/skills/fec-refactoring-api/SKILL.md +25 -0
- package/localized/zh-CN/skills/fec-refactoring-api/references/api-refactorings.md +496 -0
- package/localized/zh-CN/skills/fec-refactoring-catalog/SKILL.md +21 -0
- package/localized/zh-CN/skills/fec-refactoring-catalog/references/catalog-index.md +99 -0
- package/localized/zh-CN/skills/fec-refactoring-catalog/references/composition-guide.md +49 -0
- package/localized/zh-CN/skills/fec-refactoring-catalog/references/selection-guide.md +41 -0
- package/localized/zh-CN/skills/fec-refactoring-control/SKILL.md +25 -0
- package/localized/zh-CN/skills/fec-refactoring-control/references/conditional-refactorings.md +299 -0
- package/localized/zh-CN/skills/fec-refactoring-data/SKILL.md +25 -0
- package/localized/zh-CN/skills/fec-refactoring-data/references/data-refactorings.md +248 -0
- package/localized/zh-CN/skills/fec-refactoring-encapsulation/SKILL.md +25 -0
- package/localized/zh-CN/skills/fec-refactoring-encapsulation/references/encapsulation-refactorings.md +452 -0
- package/localized/zh-CN/skills/fec-refactoring-functions/SKILL.md +25 -0
- package/localized/zh-CN/skills/fec-refactoring-functions/references/function-refactorings.md +567 -0
- package/localized/zh-CN/skills/fec-refactoring-inheritance/SKILL.md +25 -0
- package/localized/zh-CN/skills/fec-refactoring-inheritance/references/inheritance-refactorings.md +550 -0
- package/localized/zh-CN/skills/fec-refactoring-move-features/SKILL.md +25 -0
- package/localized/zh-CN/skills/fec-refactoring-move-features/references/moving-refactorings.md +453 -0
- package/localized/zh-CN/skills/fec-refactoring-validation/SKILL.md +52 -0
- package/localized/zh-CN/skills/fec-refactoring-validation/references/behavior-preservation.md +15 -0
- package/localized/zh-CN/skills/fec-refactoring-validation/references/refactoring-test-checklist.md +25 -0
- package/localized/zh-CN/skills/fec-security-review/SKILL.md +16 -0
- package/localized/zh-CN/skills/fec-security-review/references/report-template.md +10 -0
- package/localized/zh-CN/skills/fec-tdd-workflow/SKILL.md +3 -0
- package/localized/zh-CN/skills/metadata.json +408 -50
- package/localized/zh-CN/skills/relations.json +271 -3
- package/localized/zh-CN/templates/shared/rules/fec-agent-workflow.md +1 -0
- package/openclaw.plugin.json +2 -3
- package/package.json +27 -17
- package/skills/eval_queries.json +244 -0
- package/skills/fec-code-review/SKILL.md +20 -1
- package/skills/fec-code-review/references/report-template.md +11 -1
- package/skills/fec-code-smells/SKILL.md +33 -0
- package/skills/fec-code-smells/references/detection-guide.md +25 -0
- package/skills/fec-code-smells/references/smell-catalog.md +861 -0
- package/skills/fec-code-smells/references/smell-to-refactoring-map.md +265 -0
- package/skills/fec-data-fetching/SKILL.md +1 -1
- package/skills/fec-image-generation/SKILL.md +31 -1
- package/skills/fec-image-generation/assets/quality-examples/README.md +14 -0
- package/skills/fec-image-generation/assets/quality-examples/architecture.json +121 -0
- package/skills/fec-image-generation/assets/quality-examples/invalid-explicit.json +41 -0
- package/skills/fec-image-generation/assets/quality-examples/sequence.json +53 -0
- package/skills/fec-image-generation/assets/quality-examples/sequence.mmd +21 -0
- package/skills/fec-image-generation/assets/quality-examples/workflow.json +98 -0
- package/skills/fec-image-generation/assets/quality-examples/workflow.mmd +7 -0
- package/skills/fec-image-generation/references/diagram-workflows.md +10 -3
- package/skills/fec-image-generation/references/html-technical-diagrams.md +8 -1
- package/skills/fec-image-generation/references/png-qa-autofix.md +9 -2
- package/skills/fec-image-generation/scripts/diagram-browser.mjs +90 -0
- package/skills/fec-image-generation/scripts/diagram-layout.mjs +176 -0
- package/skills/fec-image-generation/scripts/export-diagram.mjs +48 -80
- package/skills/fec-image-generation/scripts/mermaid-render.mjs +64 -0
- package/skills/fec-image-generation/scripts/png-qa.mjs +35 -4
- package/skills/fec-image-generation/scripts/tech-diagram-render.mjs +193 -53
- package/skills/fec-legacy-web-standard/SKILL.md +1 -1
- package/skills/fec-refactor-clean/SKILL.md +3 -0
- package/skills/fec-refactoring/SKILL.md +83 -0
- package/skills/fec-refactoring/references/principles.md +60 -0
- package/skills/fec-refactoring/references/refactoring-vs-feature-change.md +27 -0
- package/skills/fec-refactoring/references/when-to-refactor.md +31 -0
- package/skills/fec-refactoring/references/workflow.md +90 -0
- package/skills/fec-refactoring-api/SKILL.md +25 -0
- package/skills/fec-refactoring-api/references/api-refactorings.md +496 -0
- package/skills/fec-refactoring-catalog/SKILL.md +28 -0
- package/skills/fec-refactoring-catalog/references/catalog-index.md +99 -0
- package/skills/fec-refactoring-catalog/references/composition-guide.md +49 -0
- package/skills/fec-refactoring-catalog/references/selection-guide.md +47 -0
- package/skills/fec-refactoring-control/SKILL.md +25 -0
- package/skills/fec-refactoring-control/references/conditional-refactorings.md +299 -0
- package/skills/fec-refactoring-data/SKILL.md +25 -0
- package/skills/fec-refactoring-data/references/data-refactorings.md +248 -0
- package/skills/fec-refactoring-encapsulation/SKILL.md +25 -0
- package/skills/fec-refactoring-encapsulation/references/encapsulation-refactorings.md +452 -0
- package/skills/fec-refactoring-functions/SKILL.md +25 -0
- package/skills/fec-refactoring-functions/references/function-refactorings.md +567 -0
- package/skills/fec-refactoring-inheritance/SKILL.md +25 -0
- package/skills/fec-refactoring-inheritance/references/inheritance-refactorings.md +550 -0
- package/skills/fec-refactoring-move-features/SKILL.md +25 -0
- package/skills/fec-refactoring-move-features/references/moving-refactorings.md +453 -0
- package/skills/fec-refactoring-validation/SKILL.md +59 -0
- package/skills/fec-refactoring-validation/references/behavior-preservation.md +53 -0
- package/skills/fec-refactoring-validation/references/refactoring-test-checklist.md +42 -0
- package/skills/fec-security-review/SKILL.md +16 -0
- package/skills/fec-security-review/references/report-template.md +10 -0
- package/skills/fec-tdd-workflow/SKILL.md +5 -1
- package/skills/metadata.json +434 -71
- package/skills/relations.json +264 -0
- package/templates/shared/rules/fec-agent-workflow.md +1 -0
- package/docs/superpowers/plans/2026-05-29-fec-debug.md +0 -491
- package/docs/superpowers/specs/2026-05-29-fec-debug-design.md +0 -340
|
@@ -204,7 +204,8 @@
|
|
|
204
204
|
],
|
|
205
205
|
"boundaryWorkflows": [
|
|
206
206
|
"涉及位图优先的海报、视觉概念、产品图,以及超出可编辑技术图的 PNG QA 时,使用图像生成工作流。",
|
|
207
|
-
"
|
|
207
|
+
"当优先需要可在浏览器中直接使用、带主题的单文件工作流图、序列图、数据流图或生命周期图时,使用图像生成的 HTML 技术图路线。",
|
|
208
|
+
"当图表变成运行时交互可视化、仿真、游戏场景、shader 或 3D 渲染器时,使用 Canvas/Three.js。",
|
|
208
209
|
"动效专项的矢量微交互使用 SVG 动画;静态或可编辑技术 SVG 导出使用 draw.io 图表工作室。"
|
|
209
210
|
],
|
|
210
211
|
"capabilityTags": [
|
|
@@ -263,13 +264,16 @@
|
|
|
263
264
|
],
|
|
264
265
|
"boundaryWorkflows": [
|
|
265
266
|
"涉及产品专属视觉方向、品牌调性、层级和生成资产视觉 QA 时,使用 UI 设计工作流。",
|
|
266
|
-
"当Figma、Sketch、MasterGo、Pixso
|
|
267
|
-
"
|
|
267
|
+
"当 Figma、Sketch、MasterGo、Pixso、截图或其他外部设计源是权威来源时,使用按设计实现工作流。",
|
|
268
|
+
"需要可在浏览器中直接使用、带主题的工作流图、序列图、数据流图、生命周期图、操作手册图、个人信息(PII)或数据血缘图,以及状态机图时,使用 HTML 技术图路线。",
|
|
269
|
+
"当优先需要可编辑的 .drawio 源文件、官方图形检索或在 diagrams.net 中手动编辑时,使用 draw.io 图表工作室。",
|
|
270
|
+
"当生成视觉资产变成交互式渲染器、shader 或动效资产,而不是静态图片时,使用 Canvas/Three.js 或 SVG 动画工作流。"
|
|
268
271
|
],
|
|
269
272
|
"capabilityTags": [
|
|
270
273
|
"image-generation",
|
|
271
274
|
"image-editing",
|
|
272
275
|
"diagram-generation",
|
|
276
|
+
"html-diagram",
|
|
273
277
|
"png-qa",
|
|
274
278
|
"visual-assets",
|
|
275
279
|
"autofix"
|
|
@@ -751,5 +755,269 @@
|
|
|
751
755
|
"performance",
|
|
752
756
|
"main-thread"
|
|
753
757
|
]
|
|
758
|
+
},
|
|
759
|
+
"fec-refactoring": {
|
|
760
|
+
"relatedSkills": [
|
|
761
|
+
"fec-code-smells",
|
|
762
|
+
"fec-refactoring-catalog",
|
|
763
|
+
"fec-refactoring-validation",
|
|
764
|
+
"fec-refactor-clean",
|
|
765
|
+
"fec-code-review",
|
|
766
|
+
"fec-tdd-workflow",
|
|
767
|
+
"fec-debug-framework",
|
|
768
|
+
"fec-validation-fix",
|
|
769
|
+
"fec-testing-strategy"
|
|
770
|
+
],
|
|
771
|
+
"boundaryWorkflows": [
|
|
772
|
+
"已证明未使用的代码、导出、样式、路由、fixture 或依赖使用死代码清理能力。",
|
|
773
|
+
"新增可观察行为或修复会改变行为的缺陷时使用 TDD。",
|
|
774
|
+
"故障原因未知时先使用调试流程。",
|
|
775
|
+
"重构前已经存在且原因明确的 lint、typecheck、test 或 build 失败使用验证修复。",
|
|
776
|
+
"判断 PR 是否可合并时使用代码审查,而不是直接执行结构修改。",
|
|
777
|
+
"依赖、框架、路由器、状态库或平台替换属于迁移/架构规划,不作为普通保持行为重构处理。"
|
|
778
|
+
],
|
|
779
|
+
"capabilityTags": [
|
|
780
|
+
"refactoring",
|
|
781
|
+
"behavior-preservation",
|
|
782
|
+
"workflow",
|
|
783
|
+
"validation"
|
|
784
|
+
]
|
|
785
|
+
},
|
|
786
|
+
"fec-code-smells": {
|
|
787
|
+
"relatedSkills": [
|
|
788
|
+
"fec-refactoring",
|
|
789
|
+
"fec-refactoring-catalog",
|
|
790
|
+
"fec-code-review"
|
|
791
|
+
],
|
|
792
|
+
"boundaryWorkflows": [
|
|
793
|
+
"已证明未使用的代码、导出、样式、路由、fixture 或依赖使用死代码清理能力。",
|
|
794
|
+
"新增可观察行为或修复会改变行为的缺陷时使用 TDD。",
|
|
795
|
+
"故障原因未知时先使用调试流程。",
|
|
796
|
+
"重构前已经存在且原因明确的 lint、typecheck、test 或 build 失败使用验证修复。",
|
|
797
|
+
"判断 PR 是否可合并时使用代码审查,而不是直接执行结构修改。",
|
|
798
|
+
"依赖、框架、路由器、状态库或平台替换属于迁移/架构规划,不作为普通保持行为重构处理。"
|
|
799
|
+
],
|
|
800
|
+
"capabilityTags": [
|
|
801
|
+
"code-smells",
|
|
802
|
+
"diagnosis",
|
|
803
|
+
"maintainability",
|
|
804
|
+
"evidence"
|
|
805
|
+
]
|
|
806
|
+
},
|
|
807
|
+
"fec-refactoring-catalog": {
|
|
808
|
+
"relatedSkills": [
|
|
809
|
+
"fec-refactoring",
|
|
810
|
+
"fec-code-smells",
|
|
811
|
+
"fec-refactoring-functions",
|
|
812
|
+
"fec-refactoring-encapsulation",
|
|
813
|
+
"fec-refactoring-move-features",
|
|
814
|
+
"fec-refactoring-data",
|
|
815
|
+
"fec-refactoring-control",
|
|
816
|
+
"fec-refactoring-api",
|
|
817
|
+
"fec-refactoring-inheritance",
|
|
818
|
+
"fec-refactoring-validation"
|
|
819
|
+
],
|
|
820
|
+
"boundaryWorkflows": [
|
|
821
|
+
"已证明未使用的代码、导出、样式、路由、fixture 或依赖使用死代码清理能力。",
|
|
822
|
+
"新增可观察行为或修复会改变行为的缺陷时使用 TDD。",
|
|
823
|
+
"故障原因未知时先使用调试流程。",
|
|
824
|
+
"重构前已经存在且原因明确的 lint、typecheck、test 或 build 失败使用验证修复。",
|
|
825
|
+
"判断 PR 是否可合并时使用代码审查,而不是直接执行结构修改。",
|
|
826
|
+
"依赖、框架、路由器、状态库或平台替换属于迁移/架构规划,不作为普通保持行为重构处理。"
|
|
827
|
+
],
|
|
828
|
+
"capabilityTags": [
|
|
829
|
+
"refactoring",
|
|
830
|
+
"catalog",
|
|
831
|
+
"selection",
|
|
832
|
+
"composition"
|
|
833
|
+
]
|
|
834
|
+
},
|
|
835
|
+
"fec-refactoring-functions": {
|
|
836
|
+
"relatedSkills": [
|
|
837
|
+
"fec-refactoring",
|
|
838
|
+
"fec-code-smells",
|
|
839
|
+
"fec-refactoring-catalog",
|
|
840
|
+
"fec-refactoring-validation",
|
|
841
|
+
"fec-typescript-project-standard"
|
|
842
|
+
],
|
|
843
|
+
"boundaryWorkflows": [
|
|
844
|
+
"已证明未使用的代码、导出、样式、路由、fixture 或依赖使用死代码清理能力。",
|
|
845
|
+
"新增可观察行为或修复会改变行为的缺陷时使用 TDD。",
|
|
846
|
+
"故障原因未知时先使用调试流程。",
|
|
847
|
+
"重构前已经存在且原因明确的 lint、typecheck、test 或 build 失败使用验证修复。",
|
|
848
|
+
"判断 PR 是否可合并时使用代码审查,而不是直接执行结构修改。",
|
|
849
|
+
"依赖、框架、路由器、状态库或平台替换属于迁移/架构规划,不作为普通保持行为重构处理。"
|
|
850
|
+
],
|
|
851
|
+
"capabilityTags": [
|
|
852
|
+
"refactoring",
|
|
853
|
+
"functions",
|
|
854
|
+
"parameters",
|
|
855
|
+
"decomposition"
|
|
856
|
+
]
|
|
857
|
+
},
|
|
858
|
+
"fec-refactoring-encapsulation": {
|
|
859
|
+
"relatedSkills": [
|
|
860
|
+
"fec-refactoring",
|
|
861
|
+
"fec-code-smells",
|
|
862
|
+
"fec-refactoring-catalog",
|
|
863
|
+
"fec-refactoring-validation",
|
|
864
|
+
"fec-state-management"
|
|
865
|
+
],
|
|
866
|
+
"boundaryWorkflows": [
|
|
867
|
+
"已证明未使用的代码、导出、样式、路由、fixture 或依赖使用死代码清理能力。",
|
|
868
|
+
"新增可观察行为或修复会改变行为的缺陷时使用 TDD。",
|
|
869
|
+
"故障原因未知时先使用调试流程。",
|
|
870
|
+
"重构前已经存在且原因明确的 lint、typecheck、test 或 build 失败使用验证修复。",
|
|
871
|
+
"判断 PR 是否可合并时使用代码审查,而不是直接执行结构修改。",
|
|
872
|
+
"依赖、框架、路由器、状态库或平台替换属于迁移/架构规划,不作为普通保持行为重构处理。"
|
|
873
|
+
],
|
|
874
|
+
"capabilityTags": [
|
|
875
|
+
"refactoring",
|
|
876
|
+
"encapsulation",
|
|
877
|
+
"delegation",
|
|
878
|
+
"value-object"
|
|
879
|
+
]
|
|
880
|
+
},
|
|
881
|
+
"fec-refactoring-move-features": {
|
|
882
|
+
"relatedSkills": [
|
|
883
|
+
"fec-refactoring",
|
|
884
|
+
"fec-code-smells",
|
|
885
|
+
"fec-refactoring-catalog",
|
|
886
|
+
"fec-refactoring-validation",
|
|
887
|
+
"fec-refactor-clean"
|
|
888
|
+
],
|
|
889
|
+
"boundaryWorkflows": [
|
|
890
|
+
"已证明未使用的代码、导出、样式、路由、fixture 或依赖使用死代码清理能力。",
|
|
891
|
+
"新增可观察行为或修复会改变行为的缺陷时使用 TDD。",
|
|
892
|
+
"故障原因未知时先使用调试流程。",
|
|
893
|
+
"重构前已经存在且原因明确的 lint、typecheck、test 或 build 失败使用验证修复。",
|
|
894
|
+
"判断 PR 是否可合并时使用代码审查,而不是直接执行结构修改。",
|
|
895
|
+
"依赖、框架、路由器、状态库或平台替换属于迁移/架构规划,不作为普通保持行为重构处理。"
|
|
896
|
+
],
|
|
897
|
+
"capabilityTags": [
|
|
898
|
+
"refactoring",
|
|
899
|
+
"move-function",
|
|
900
|
+
"ownership",
|
|
901
|
+
"loops"
|
|
902
|
+
]
|
|
903
|
+
},
|
|
904
|
+
"fec-refactoring-data": {
|
|
905
|
+
"relatedSkills": [
|
|
906
|
+
"fec-refactoring",
|
|
907
|
+
"fec-code-smells",
|
|
908
|
+
"fec-refactoring-catalog",
|
|
909
|
+
"fec-refactoring-validation",
|
|
910
|
+
"fec-state-management",
|
|
911
|
+
"fec-typescript-project-standard"
|
|
912
|
+
],
|
|
913
|
+
"boundaryWorkflows": [
|
|
914
|
+
"已证明未使用的代码、导出、样式、路由、fixture 或依赖使用死代码清理能力。",
|
|
915
|
+
"新增可观察行为或修复会改变行为的缺陷时使用 TDD。",
|
|
916
|
+
"故障原因未知时先使用调试流程。",
|
|
917
|
+
"重构前已经存在且原因明确的 lint、typecheck、test 或 build 失败使用验证修复。",
|
|
918
|
+
"判断 PR 是否可合并时使用代码审查,而不是直接执行结构修改。",
|
|
919
|
+
"依赖、框架、路由器、状态库或平台替换属于迁移/架构规划,不作为普通保持行为重构处理。"
|
|
920
|
+
],
|
|
921
|
+
"capabilityTags": [
|
|
922
|
+
"refactoring",
|
|
923
|
+
"data",
|
|
924
|
+
"derived-state",
|
|
925
|
+
"identity"
|
|
926
|
+
]
|
|
927
|
+
},
|
|
928
|
+
"fec-refactoring-control": {
|
|
929
|
+
"relatedSkills": [
|
|
930
|
+
"fec-refactoring",
|
|
931
|
+
"fec-code-smells",
|
|
932
|
+
"fec-refactoring-catalog",
|
|
933
|
+
"fec-refactoring-validation",
|
|
934
|
+
"fec-typescript-project-standard"
|
|
935
|
+
],
|
|
936
|
+
"boundaryWorkflows": [
|
|
937
|
+
"已证明未使用的代码、导出、样式、路由、fixture 或依赖使用死代码清理能力。",
|
|
938
|
+
"新增可观察行为或修复会改变行为的缺陷时使用 TDD。",
|
|
939
|
+
"故障原因未知时先使用调试流程。",
|
|
940
|
+
"重构前已经存在且原因明确的 lint、typecheck、test 或 build 失败使用验证修复。",
|
|
941
|
+
"判断 PR 是否可合并时使用代码审查,而不是直接执行结构修改。",
|
|
942
|
+
"依赖、框架、路由器、状态库或平台替换属于迁移/架构规划,不作为普通保持行为重构处理。"
|
|
943
|
+
],
|
|
944
|
+
"capabilityTags": [
|
|
945
|
+
"refactoring",
|
|
946
|
+
"conditionals",
|
|
947
|
+
"guard-clauses",
|
|
948
|
+
"polymorphism"
|
|
949
|
+
]
|
|
950
|
+
},
|
|
951
|
+
"fec-refactoring-api": {
|
|
952
|
+
"relatedSkills": [
|
|
953
|
+
"fec-refactoring",
|
|
954
|
+
"fec-code-smells",
|
|
955
|
+
"fec-refactoring-catalog",
|
|
956
|
+
"fec-refactoring-validation",
|
|
957
|
+
"fec-api-integration",
|
|
958
|
+
"fec-typescript-project-standard"
|
|
959
|
+
],
|
|
960
|
+
"boundaryWorkflows": [
|
|
961
|
+
"已证明未使用的代码、导出、样式、路由、fixture 或依赖使用死代码清理能力。",
|
|
962
|
+
"新增可观察行为或修复会改变行为的缺陷时使用 TDD。",
|
|
963
|
+
"故障原因未知时先使用调试流程。",
|
|
964
|
+
"重构前已经存在且原因明确的 lint、typecheck、test 或 build 失败使用验证修复。",
|
|
965
|
+
"判断 PR 是否可合并时使用代码审查,而不是直接执行结构修改。",
|
|
966
|
+
"依赖、框架、路由器、状态库或平台替换属于迁移/架构规划,不作为普通保持行为重构处理。"
|
|
967
|
+
],
|
|
968
|
+
"capabilityTags": [
|
|
969
|
+
"refactoring",
|
|
970
|
+
"api",
|
|
971
|
+
"parameters",
|
|
972
|
+
"dependencies"
|
|
973
|
+
]
|
|
974
|
+
},
|
|
975
|
+
"fec-refactoring-inheritance": {
|
|
976
|
+
"relatedSkills": [
|
|
977
|
+
"fec-refactoring",
|
|
978
|
+
"fec-code-smells",
|
|
979
|
+
"fec-refactoring-catalog",
|
|
980
|
+
"fec-refactoring-validation",
|
|
981
|
+
"fec-typescript-project-standard",
|
|
982
|
+
"fec-legacy-to-modern-migration"
|
|
983
|
+
],
|
|
984
|
+
"boundaryWorkflows": [
|
|
985
|
+
"已证明未使用的代码、导出、样式、路由、fixture 或依赖使用死代码清理能力。",
|
|
986
|
+
"新增可观察行为或修复会改变行为的缺陷时使用 TDD。",
|
|
987
|
+
"故障原因未知时先使用调试流程。",
|
|
988
|
+
"重构前已经存在且原因明确的 lint、typecheck、test 或 build 失败使用验证修复。",
|
|
989
|
+
"判断 PR 是否可合并时使用代码审查,而不是直接执行结构修改。",
|
|
990
|
+
"依赖、框架、路由器、状态库或平台替换属于迁移/架构规划,不作为普通保持行为重构处理。"
|
|
991
|
+
],
|
|
992
|
+
"capabilityTags": [
|
|
993
|
+
"refactoring",
|
|
994
|
+
"inheritance",
|
|
995
|
+
"delegation",
|
|
996
|
+
"composition"
|
|
997
|
+
]
|
|
998
|
+
},
|
|
999
|
+
"fec-refactoring-validation": {
|
|
1000
|
+
"relatedSkills": [
|
|
1001
|
+
"fec-refactoring",
|
|
1002
|
+
"fec-testing-strategy",
|
|
1003
|
+
"fec-tdd-workflow",
|
|
1004
|
+
"fec-validation-fix",
|
|
1005
|
+
"fec-debug-framework",
|
|
1006
|
+
"fec-code-review"
|
|
1007
|
+
],
|
|
1008
|
+
"boundaryWorkflows": [
|
|
1009
|
+
"已证明未使用的代码、导出、样式、路由、fixture 或依赖使用死代码清理能力。",
|
|
1010
|
+
"新增可观察行为或修复会改变行为的缺陷时使用 TDD。",
|
|
1011
|
+
"故障原因未知时先使用调试流程。",
|
|
1012
|
+
"重构前已经存在且原因明确的 lint、typecheck、test 或 build 失败使用验证修复。",
|
|
1013
|
+
"判断 PR 是否可合并时使用代码审查,而不是直接执行结构修改。",
|
|
1014
|
+
"依赖、框架、路由器、状态库或平台替换属于迁移/架构规划,不作为普通保持行为重构处理。"
|
|
1015
|
+
],
|
|
1016
|
+
"capabilityTags": [
|
|
1017
|
+
"refactoring",
|
|
1018
|
+
"validation",
|
|
1019
|
+
"behavior-preservation",
|
|
1020
|
+
"rollback"
|
|
1021
|
+
]
|
|
754
1022
|
}
|
|
755
1023
|
}
|
package/openclaw.plugin.json
CHANGED
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
"id": "frontend-craft",
|
|
3
3
|
"name": "Frontend Craft",
|
|
4
4
|
"description": "Frontend team skills, OpenClaw workspace templates, optional init tool, exec safety hooks, and design MCP reference.",
|
|
5
|
-
"version": "2.
|
|
5
|
+
"version": "2.9.0",
|
|
6
6
|
"skills": [
|
|
7
|
-
"skills"
|
|
8
|
-
"commands"
|
|
7
|
+
"skills"
|
|
9
8
|
],
|
|
10
9
|
"configSchema": {
|
|
11
10
|
"type": "object",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bovinphang/frontend-craft",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.9.0",
|
|
4
4
|
"description": "Universal frontend plugin for Claude Code, Codex, Cursor, OpenCode, Gemini CLI, Qoder, Windsurf, Copilot, OpenClaw, and more — skills, agents, commands, hooks, and MCP templates.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -53,34 +53,43 @@
|
|
|
53
53
|
],
|
|
54
54
|
"scripts": {
|
|
55
55
|
"clean": "node scripts/clean-dist.mjs",
|
|
56
|
-
"typecheck": "
|
|
56
|
+
"typecheck": "pnpm run typecheck:ts && pnpm run typecheck:skill-scripts",
|
|
57
57
|
"typecheck:ts": "tsc --noEmit -p tsconfig.json",
|
|
58
|
-
"typecheck:skill-scripts": "tsc --allowJs --checkJs --noEmit --strict --module NodeNext --moduleResolution NodeNext --target ES2022 skills/fec-ui-design/scripts/design-system.mjs skills/fec-image-generation/scripts/png-qa.mjs skills/fec-image-generation/scripts/tech-diagram-render.mjs skills/fec-image-generation/scripts/interactive-diagram-server.mjs skills/fec-image-generation/scripts/export-diagram.mjs",
|
|
59
|
-
"build": "
|
|
60
|
-
"test:only": "
|
|
61
|
-
"test": "
|
|
58
|
+
"typecheck:skill-scripts": "tsc --allowJs --checkJs --noEmit --strict --module NodeNext --moduleResolution NodeNext --target ES2022 skills/fec-ui-design/scripts/design-system.mjs skills/fec-image-generation/scripts/png-qa.mjs skills/fec-image-generation/scripts/tech-diagram-render.mjs skills/fec-image-generation/scripts/interactive-diagram-server.mjs skills/fec-image-generation/scripts/export-diagram.mjs skills/fec-image-generation/scripts/diagram-layout.mjs skills/fec-image-generation/scripts/diagram-browser.mjs skills/fec-image-generation/scripts/mermaid-render.mjs",
|
|
59
|
+
"build": "pnpm run clean && pnpm run typecheck && tsx scripts/build-dist.ts",
|
|
60
|
+
"test:only": "tsx scripts/run-tests.ts",
|
|
61
|
+
"test": "pnpm run build && pnpm run test:only",
|
|
62
62
|
"build:openclaw:bundle": "tsx scripts/openclaw/build.ts",
|
|
63
|
-
"build:openclaw": "
|
|
64
|
-
"audit:skills": "
|
|
63
|
+
"build:openclaw": "pnpm run build && pnpm run build:openclaw:bundle",
|
|
64
|
+
"audit:skills": "pnpm run build && tsx scripts/audit-skills.ts",
|
|
65
65
|
"typecheck:openclaw": "tsc --noEmit -p tsconfig.openclaw.json",
|
|
66
66
|
"check:openclaw-dist": "tsx scripts/openclaw/verify-openclaw-dist.ts",
|
|
67
|
-
"pack:openclaw": "
|
|
68
|
-
"pack:skills": "
|
|
69
|
-
"check:skills-publish": "
|
|
70
|
-
"pack:all": "
|
|
71
|
-
"prepack": "
|
|
67
|
+
"pack:openclaw": "pnpm run build:openclaw && pnpm run check:openclaw-dist && tsx scripts/openclaw/pack-openclaw.ts",
|
|
68
|
+
"pack:skills": "pnpm run build && tsx scripts/pack-skills.ts",
|
|
69
|
+
"check:skills-publish": "pnpm run build && tsx scripts/check-skills-publish.ts",
|
|
70
|
+
"pack:all": "pnpm run build && pnpm run test:only && pnpm run build:openclaw:bundle && pnpm run check:openclaw-dist && tsx scripts/openclaw/pack-openclaw.ts && tsx scripts/pack-skills.ts && tsx scripts/check-skills-publish.ts",
|
|
71
|
+
"prepack": "pnpm run build",
|
|
72
72
|
"sync:version": "tsx scripts/sync-version.ts",
|
|
73
|
-
"version": "
|
|
74
|
-
"prepublishOnly": "
|
|
73
|
+
"version": "pnpm run sync:version",
|
|
74
|
+
"prepublishOnly": "pnpm run sync:version && pnpm test",
|
|
75
|
+
"check:content": "tsx scripts/check-content.ts",
|
|
76
|
+
"lint:code": "eslint bin src scripts tests eslint.config.mjs --max-warnings=0",
|
|
77
|
+
"lint": "pnpm run lint:code && pnpm run check:content",
|
|
78
|
+
"format:check": "tsx scripts/check-format.ts"
|
|
75
79
|
},
|
|
76
80
|
"devDependencies": {
|
|
81
|
+
"@eslint/js": "9.39.5",
|
|
77
82
|
"@sinclair/typebox": "^0.34.49",
|
|
78
83
|
"@types/node": "^22.19.15",
|
|
79
84
|
"esbuild": "^0.28.0",
|
|
85
|
+
"eslint": "9.39.4",
|
|
86
|
+
"globals": "17.12.0",
|
|
80
87
|
"openclaw": "^2026.4.20",
|
|
81
88
|
"prettier": "^3.5.0",
|
|
82
89
|
"tsx": "^4.22.3",
|
|
83
|
-
"typescript": "^5.7.3"
|
|
90
|
+
"typescript": "^5.7.3",
|
|
91
|
+
"typescript-eslint": "8.70.1",
|
|
92
|
+
"yaml": "2.9.0"
|
|
84
93
|
},
|
|
85
94
|
"keywords": [
|
|
86
95
|
"frontend",
|
|
@@ -98,5 +107,6 @@
|
|
|
98
107
|
"i18n",
|
|
99
108
|
"playwright",
|
|
100
109
|
"eslint"
|
|
101
|
-
]
|
|
110
|
+
],
|
|
111
|
+
"packageManager": "pnpm@12.4.1"
|
|
102
112
|
}
|
package/skills/eval_queries.json
CHANGED
|
@@ -1009,5 +1009,249 @@
|
|
|
1009
1009
|
"Manipulate DOM and update UI",
|
|
1010
1010
|
"Write component tests"
|
|
1011
1011
|
]
|
|
1012
|
+
},
|
|
1013
|
+
"fec-refactoring": {
|
|
1014
|
+
"should_trigger": [
|
|
1015
|
+
"Keep observable behavior unchanged while restructuring this frontend module.",
|
|
1016
|
+
"Refactor this function in small verified steps without changing its output or side effects.",
|
|
1017
|
+
"Improve the structure of this React feature but preserve behavior exactly.",
|
|
1018
|
+
"Clean up the architecture of this Vue composable without adding features.",
|
|
1019
|
+
"Use a diff budget and rollback boundary for this behavior-preserving refactor.",
|
|
1020
|
+
"Restructure this TypeScript service with a green baseline before and after each step.",
|
|
1021
|
+
"Refactor this code with SAFE CAUTION DANGER risk classification.",
|
|
1022
|
+
"Plan and execute a behavior-preserving refactoring with verification after every step."
|
|
1023
|
+
],
|
|
1024
|
+
"should_not_trigger": [
|
|
1025
|
+
"Remove unused components and dependencies from this project.",
|
|
1026
|
+
"Fix this duplicate-request bug and change behavior so only one request is sent.",
|
|
1027
|
+
"Migrate this Redux store to Zustand.",
|
|
1028
|
+
"Review this PR and tell me whether it is safe to merge.",
|
|
1029
|
+
"Debug why this page renders a blank screen.",
|
|
1030
|
+
"Implement a new payment workflow using TDD.",
|
|
1031
|
+
"Upgrade Vite and update all breaking configuration changes.",
|
|
1032
|
+
"Add a new responsive dashboard from this Figma design."
|
|
1033
|
+
]
|
|
1034
|
+
},
|
|
1035
|
+
"fec-code-smells": {
|
|
1036
|
+
"should_trigger": [
|
|
1037
|
+
"Diagnose code smells in Compose.tsx but do not edit the code.",
|
|
1038
|
+
"Find structural smells in this Vue store and give evidence only.",
|
|
1039
|
+
"Is this long function actually a Long Function smell? Analyze false positives first.",
|
|
1040
|
+
"Identify duplicated code smells in these handlers without changing them.",
|
|
1041
|
+
"Assess whether these repeated switches are a real smell or a valid dispatcher.",
|
|
1042
|
+
"Find data clumps in these function signatures and report candidates.",
|
|
1043
|
+
"Diagnose Feature Envy between this component and domain service.",
|
|
1044
|
+
"Review this module for the 24 canonical code smells and rank findings by confidence."
|
|
1045
|
+
],
|
|
1046
|
+
"should_not_trigger": [
|
|
1047
|
+
"Remove unused components and dependencies from this project.",
|
|
1048
|
+
"Fix this duplicate-request bug and change behavior so only one request is sent.",
|
|
1049
|
+
"Migrate this Redux store to Zustand.",
|
|
1050
|
+
"Review this PR and tell me whether it is safe to merge.",
|
|
1051
|
+
"Debug why this page renders a blank screen.",
|
|
1052
|
+
"Implement a new payment workflow using TDD.",
|
|
1053
|
+
"Upgrade Vite and update all breaking configuration changes.",
|
|
1054
|
+
"Add a new responsive dashboard from this Figma design."
|
|
1055
|
+
]
|
|
1056
|
+
},
|
|
1057
|
+
"fec-refactoring-catalog": {
|
|
1058
|
+
"should_trigger": [
|
|
1059
|
+
"Which refactoring should I choose for this diagnosed Long Function?",
|
|
1060
|
+
"Compare Extract Function and Split Phase for this existing behavior.",
|
|
1061
|
+
"Show a safe sequence of refactorings for this Shotgun Surgery smell.",
|
|
1062
|
+
"Choose among candidates for Mutable Data without changing behavior.",
|
|
1063
|
+
"What technique should follow Replace Temp with Query here?",
|
|
1064
|
+
"Compare inverse refactorings Hide Delegate and Remove Middle Man.",
|
|
1065
|
+
"Pick the smallest canonical refactoring that fits this evidence.",
|
|
1066
|
+
"Compose a safe refactoring sequence from the 61-technique catalog."
|
|
1067
|
+
],
|
|
1068
|
+
"should_not_trigger": [
|
|
1069
|
+
"Remove unused components and dependencies from this project.",
|
|
1070
|
+
"Fix this duplicate-request bug and change behavior so only one request is sent.",
|
|
1071
|
+
"Migrate this Redux store to Zustand.",
|
|
1072
|
+
"Review this PR and tell me whether it is safe to merge.",
|
|
1073
|
+
"Debug why this page renders a blank screen.",
|
|
1074
|
+
"Implement a new payment workflow using TDD.",
|
|
1075
|
+
"Upgrade Vite and update all breaking configuration changes.",
|
|
1076
|
+
"Add a new responsive dashboard from this Figma design."
|
|
1077
|
+
]
|
|
1078
|
+
},
|
|
1079
|
+
"fec-refactoring-functions": {
|
|
1080
|
+
"should_trigger": [
|
|
1081
|
+
"Keep behavior unchanged and split this function into named operations.",
|
|
1082
|
+
"These ten parameters always travel together; how should I restructure them?",
|
|
1083
|
+
"Rename this private function and migrate callers without changing behavior.",
|
|
1084
|
+
"Extract a variable to explain this complex calculation while preserving evaluation order.",
|
|
1085
|
+
"Inline this trivial helper if the name adds no value.",
|
|
1086
|
+
"Encapsulate this shared module variable before changing its representation.",
|
|
1087
|
+
"Group these related functions around one shared data context without forcing a class.",
|
|
1088
|
+
"Split this parse normalize validate submit routine into phases."
|
|
1089
|
+
],
|
|
1090
|
+
"should_not_trigger": [
|
|
1091
|
+
"Remove unused components and dependencies from this project.",
|
|
1092
|
+
"Fix this duplicate-request bug and change behavior so only one request is sent.",
|
|
1093
|
+
"Migrate this Redux store to Zustand.",
|
|
1094
|
+
"Review this PR and tell me whether it is safe to merge.",
|
|
1095
|
+
"Debug why this page renders a blank screen.",
|
|
1096
|
+
"Implement a new payment workflow using TDD.",
|
|
1097
|
+
"Upgrade Vite and update all breaking configuration changes.",
|
|
1098
|
+
"Add a new responsive dashboard from this Figma design."
|
|
1099
|
+
]
|
|
1100
|
+
},
|
|
1101
|
+
"fec-refactoring-encapsulation": {
|
|
1102
|
+
"should_trigger": [
|
|
1103
|
+
"Encapsulate this mutable collection so components cannot splice it directly.",
|
|
1104
|
+
"Replace this repeated email string validation with a value abstraction.",
|
|
1105
|
+
"Extract this responsibility from a large service into a cohesive owner.",
|
|
1106
|
+
"Inline this class because it now only forwards one method.",
|
|
1107
|
+
"Hide this deep delegate navigation from UI clients.",
|
|
1108
|
+
"Remove this pass-through middle-man wrapper without changing behavior.",
|
|
1109
|
+
"Replace this temporary derived value with a query so extraction is easier.",
|
|
1110
|
+
"Substitute this algorithm but preserve ordering errors and output exactly."
|
|
1111
|
+
],
|
|
1112
|
+
"should_not_trigger": [
|
|
1113
|
+
"Remove unused components and dependencies from this project.",
|
|
1114
|
+
"Fix this duplicate-request bug and change behavior so only one request is sent.",
|
|
1115
|
+
"Migrate this Redux store to Zustand.",
|
|
1116
|
+
"Review this PR and tell me whether it is safe to merge.",
|
|
1117
|
+
"Debug why this page renders a blank screen.",
|
|
1118
|
+
"Implement a new payment workflow using TDD.",
|
|
1119
|
+
"Upgrade Vite and update all breaking configuration changes.",
|
|
1120
|
+
"Add a new responsive dashboard from this Figma design."
|
|
1121
|
+
]
|
|
1122
|
+
},
|
|
1123
|
+
"fec-refactoring-move-features": {
|
|
1124
|
+
"should_trigger": [
|
|
1125
|
+
"Move this function to the module that owns the data it uses.",
|
|
1126
|
+
"Move this field to its real owner while preserving serialization.",
|
|
1127
|
+
"Move these repeated statements into the called function.",
|
|
1128
|
+
"Move caller-specific policy out of this shared function.",
|
|
1129
|
+
"Replace this equivalent inline check with the existing function call.",
|
|
1130
|
+
"Slide these independent statements together before extraction.",
|
|
1131
|
+
"Split this loop into two focused passes without changing results.",
|
|
1132
|
+
"Replace this transformation loop with a clear pipeline; keep ordering the same."
|
|
1133
|
+
],
|
|
1134
|
+
"should_not_trigger": [
|
|
1135
|
+
"Remove unused components and dependencies from this project.",
|
|
1136
|
+
"Fix this duplicate-request bug and change behavior so only one request is sent.",
|
|
1137
|
+
"Migrate this Redux store to Zustand.",
|
|
1138
|
+
"Review this PR and tell me whether it is safe to merge.",
|
|
1139
|
+
"Debug why this page renders a blank screen.",
|
|
1140
|
+
"Implement a new payment workflow using TDD.",
|
|
1141
|
+
"Upgrade Vite and update all breaking configuration changes.",
|
|
1142
|
+
"Add a new responsive dashboard from this Figma design."
|
|
1143
|
+
]
|
|
1144
|
+
},
|
|
1145
|
+
"fec-refactoring-data": {
|
|
1146
|
+
"should_trigger": [
|
|
1147
|
+
"Split this reused variable so each name has one meaning.",
|
|
1148
|
+
"Rename this internal field while preserving the backend DTO key.",
|
|
1149
|
+
"Replace stored derived state with a query and check memoization semantics.",
|
|
1150
|
+
"Decide whether this shared mutable object should use value semantics.",
|
|
1151
|
+
"Change these duplicate entity snapshots to canonical references.",
|
|
1152
|
+
"Refactor this React state model without changing object-identity behavior.",
|
|
1153
|
+
"Reorganize this Vue reactive data while preserving proxy identity semantics.",
|
|
1154
|
+
"Assess reference versus value semantics for this TypeScript domain object."
|
|
1155
|
+
],
|
|
1156
|
+
"should_not_trigger": [
|
|
1157
|
+
"Remove unused components and dependencies from this project.",
|
|
1158
|
+
"Fix this duplicate-request bug and change behavior so only one request is sent.",
|
|
1159
|
+
"Migrate this Redux store to Zustand.",
|
|
1160
|
+
"Review this PR and tell me whether it is safe to merge.",
|
|
1161
|
+
"Debug why this page renders a blank screen.",
|
|
1162
|
+
"Implement a new payment workflow using TDD.",
|
|
1163
|
+
"Upgrade Vite and update all breaking configuration changes.",
|
|
1164
|
+
"Add a new responsive dashboard from this Figma design."
|
|
1165
|
+
]
|
|
1166
|
+
},
|
|
1167
|
+
"fec-refactoring-control": {
|
|
1168
|
+
"should_trigger": [
|
|
1169
|
+
"Decompose this complex conditional without changing which branch runs.",
|
|
1170
|
+
"Consolidate these conditions that all produce the same result.",
|
|
1171
|
+
"Use guard clauses to flatten this nested logic while preserving finally cleanup.",
|
|
1172
|
+
"Replace repeated variant conditionals with an appropriate strategy or typed dispatch.",
|
|
1173
|
+
"Introduce a special case for repeated unknown-contact handling.",
|
|
1174
|
+
"Introduce an assertion for this internal invariant, not user input validation.",
|
|
1175
|
+
"Simplify this nested if else without changing outputs or side-effect order.",
|
|
1176
|
+
"Choose between discriminated union dispatch and polymorphism for these repeated variants."
|
|
1177
|
+
],
|
|
1178
|
+
"should_not_trigger": [
|
|
1179
|
+
"Remove unused components and dependencies from this project.",
|
|
1180
|
+
"Fix this duplicate-request bug and change behavior so only one request is sent.",
|
|
1181
|
+
"Migrate this Redux store to Zustand.",
|
|
1182
|
+
"Review this PR and tell me whether it is safe to merge.",
|
|
1183
|
+
"Debug why this page renders a blank screen.",
|
|
1184
|
+
"Implement a new payment workflow using TDD.",
|
|
1185
|
+
"Upgrade Vite and update all breaking configuration changes.",
|
|
1186
|
+
"Add a new responsive dashboard from this Figma design."
|
|
1187
|
+
]
|
|
1188
|
+
},
|
|
1189
|
+
"fec-refactoring-api": {
|
|
1190
|
+
"should_trigger": [
|
|
1191
|
+
"Separate this query from its state-changing side effect.",
|
|
1192
|
+
"Parameterize these duplicate functions that differ only by one value.",
|
|
1193
|
+
"Remove this behavior flag and expose explicit operations.",
|
|
1194
|
+
"Preserve this whole object instead of passing six extracted fields.",
|
|
1195
|
+
"Replace this parameter with a stable query and assess hidden dependency risk.",
|
|
1196
|
+
"Replace this hidden global query with an explicit parameter for testability.",
|
|
1197
|
+
"Remove this setter because the value should be immutable after creation.",
|
|
1198
|
+
"Replace this constructor with a named factory function.",
|
|
1199
|
+
"Replace this upload function with a command because it has retry progress and audit state.",
|
|
1200
|
+
"Collapse this trivial command object back to a function."
|
|
1201
|
+
],
|
|
1202
|
+
"should_not_trigger": [
|
|
1203
|
+
"Remove unused components and dependencies from this project.",
|
|
1204
|
+
"Fix this duplicate-request bug and change behavior so only one request is sent.",
|
|
1205
|
+
"Migrate this Redux store to Zustand.",
|
|
1206
|
+
"Review this PR and tell me whether it is safe to merge.",
|
|
1207
|
+
"Debug why this page renders a blank screen.",
|
|
1208
|
+
"Implement a new payment workflow using TDD.",
|
|
1209
|
+
"Upgrade Vite and update all breaking configuration changes.",
|
|
1210
|
+
"Add a new responsive dashboard from this Figma design."
|
|
1211
|
+
]
|
|
1212
|
+
},
|
|
1213
|
+
"fec-refactoring-inheritance": {
|
|
1214
|
+
"should_trigger": [
|
|
1215
|
+
"Pull this duplicated method up in a legacy TypeScript class hierarchy.",
|
|
1216
|
+
"Push this field down because only one subtype owns it.",
|
|
1217
|
+
"Move common constructor initialization to the superclass safely.",
|
|
1218
|
+
"Replace this type-code hierarchy with an appropriate subtype or strategy model.",
|
|
1219
|
+
"Remove this subclass because it has no meaningful behavior left.",
|
|
1220
|
+
"Extract a superclass only if these legacy classes are genuinely substitutable.",
|
|
1221
|
+
"Collapse this redundant inheritance level without changing instanceof-sensitive behavior.",
|
|
1222
|
+
"Replace this inaccurate superclass relationship with delegation."
|
|
1223
|
+
],
|
|
1224
|
+
"should_not_trigger": [
|
|
1225
|
+
"Remove unused components and dependencies from this project.",
|
|
1226
|
+
"Fix this duplicate-request bug and change behavior so only one request is sent.",
|
|
1227
|
+
"Migrate this Redux store to Zustand.",
|
|
1228
|
+
"Review this PR and tell me whether it is safe to merge.",
|
|
1229
|
+
"Debug why this page renders a blank screen.",
|
|
1230
|
+
"Implement a new payment workflow using TDD.",
|
|
1231
|
+
"Upgrade Vite and update all breaking configuration changes.",
|
|
1232
|
+
"Add a new responsive dashboard from this Figma design."
|
|
1233
|
+
]
|
|
1234
|
+
},
|
|
1235
|
+
"fec-refactoring-validation": {
|
|
1236
|
+
"should_trigger": [
|
|
1237
|
+
"Define the behavior-preservation contract before this refactor.",
|
|
1238
|
+
"What safety net is enough for this CAUTION refactoring?",
|
|
1239
|
+
"Build a validation ladder for this behavior-preserving change.",
|
|
1240
|
+
"Decide PASS PARTIAL or NOT PROVEN for this refactoring evidence.",
|
|
1241
|
+
"Create characterization tests for existing behavior before restructuring.",
|
|
1242
|
+
"Define a diff budget and rollback boundary for this structural change.",
|
|
1243
|
+
"Check UI state event network and lifecycle behavior before and after refactoring.",
|
|
1244
|
+
"Validate this refactoring with green baseline and step-level rollback."
|
|
1245
|
+
],
|
|
1246
|
+
"should_not_trigger": [
|
|
1247
|
+
"Remove unused components and dependencies from this project.",
|
|
1248
|
+
"Fix this duplicate-request bug and change behavior so only one request is sent.",
|
|
1249
|
+
"Migrate this Redux store to Zustand.",
|
|
1250
|
+
"Review this PR and tell me whether it is safe to merge.",
|
|
1251
|
+
"Debug why this page renders a blank screen.",
|
|
1252
|
+
"Implement a new payment workflow using TDD.",
|
|
1253
|
+
"Upgrade Vite and update all breaking configuration changes.",
|
|
1254
|
+
"Add a new responsive dashboard from this Figma design."
|
|
1255
|
+
]
|
|
1012
1256
|
}
|
|
1013
1257
|
}
|