specweave 0.1.9 → 0.3.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.md +600 -0
- package/README.md +245 -81
- package/bin/install-all.sh +1 -1
- package/bin/install-commands.sh +3 -3
- package/bin/specweave.js +39 -9
- package/dist/adapters/adapter-base.d.ts +1 -1
- package/dist/adapters/adapter-base.d.ts.map +1 -1
- package/dist/adapters/adapter-base.js +6 -41
- package/dist/adapters/adapter-base.js.map +1 -1
- package/dist/adapters/adapter-interface.js +1 -2
- package/dist/adapters/adapter-interface.js.map +1 -1
- package/dist/adapters/adapter-loader.d.ts +86 -0
- package/dist/adapters/adapter-loader.d.ts.map +1 -0
- package/dist/adapters/adapter-loader.js +216 -0
- package/dist/adapters/adapter-loader.js.map +1 -0
- package/dist/adapters/agents-md-generator.d.ts +48 -0
- package/dist/adapters/agents-md-generator.d.ts.map +1 -0
- package/dist/adapters/agents-md-generator.js +132 -0
- package/dist/adapters/agents-md-generator.js.map +1 -0
- package/dist/adapters/claude/adapter.d.ts +2 -2
- package/dist/adapters/claude/adapter.d.ts.map +1 -1
- package/dist/adapters/claude/adapter.js +5 -42
- package/dist/adapters/claude/adapter.js.map +1 -1
- package/dist/adapters/claude-md-generator.d.ts +78 -0
- package/dist/adapters/claude-md-generator.d.ts.map +1 -0
- package/dist/adapters/claude-md-generator.js +246 -0
- package/dist/adapters/claude-md-generator.js.map +1 -0
- package/dist/adapters/codex/adapter.d.ts +50 -0
- package/dist/adapters/codex/adapter.d.ts.map +1 -0
- package/dist/adapters/codex/adapter.js +316 -0
- package/dist/adapters/codex/adapter.js.map +1 -0
- package/dist/adapters/copilot/adapter.d.ts +10 -9
- package/dist/adapters/copilot/adapter.d.ts.map +1 -1
- package/dist/adapters/copilot/adapter.js +35 -100
- package/dist/adapters/copilot/adapter.js.map +1 -1
- package/dist/adapters/cursor/adapter.d.ts +8 -6
- package/dist/adapters/cursor/adapter.d.ts.map +1 -1
- package/dist/adapters/cursor/adapter.js +47 -130
- package/dist/adapters/cursor/adapter.js.map +1 -1
- package/dist/adapters/doc-generator.d.ts +69 -0
- package/dist/adapters/doc-generator.d.ts.map +1 -0
- package/dist/adapters/doc-generator.js +247 -0
- package/dist/adapters/doc-generator.js.map +1 -0
- package/dist/adapters/gemini/adapter.d.ts +50 -0
- package/dist/adapters/gemini/adapter.d.ts.map +1 -0
- package/dist/adapters/gemini/adapter.js +281 -0
- package/dist/adapters/gemini/adapter.js.map +1 -0
- package/dist/adapters/generic/adapter.d.ts +7 -4
- package/dist/adapters/generic/adapter.d.ts.map +1 -1
- package/dist/adapters/generic/adapter.js +60 -59
- package/dist/adapters/generic/adapter.js.map +1 -1
- package/dist/cli/commands/init.d.ts +3 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +272 -170
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/install.d.ts.map +1 -1
- package/dist/cli/commands/install.js +22 -58
- package/dist/cli/commands/install.js.map +1 -1
- package/dist/cli/commands/list.d.ts.map +1 -1
- package/dist/cli/commands/list.js +27 -64
- package/dist/cli/commands/list.js.map +1 -1
- package/dist/core/credentials-manager.d.ts +90 -0
- package/dist/core/credentials-manager.d.ts.map +1 -0
- package/dist/core/credentials-manager.js +271 -0
- package/dist/core/credentials-manager.js.map +1 -0
- package/dist/core/project-structure-detector.d.ts +92 -0
- package/dist/core/project-structure-detector.d.ts.map +1 -0
- package/dist/core/project-structure-detector.js +289 -0
- package/dist/core/project-structure-detector.js.map +1 -0
- package/dist/core/rfc-generator-v2.d.ts +149 -0
- package/dist/core/rfc-generator-v2.d.ts.map +1 -0
- package/dist/core/rfc-generator-v2.js +399 -0
- package/dist/core/rfc-generator-v2.js.map +1 -0
- package/dist/core/rfc-generator.d.ts +147 -0
- package/dist/core/rfc-generator.d.ts.map +1 -0
- package/dist/core/rfc-generator.js +434 -0
- package/dist/core/rfc-generator.js.map +1 -0
- package/dist/integrations/ado/ado-client.d.ts +123 -0
- package/dist/integrations/ado/ado-client.d.ts.map +1 -0
- package/dist/integrations/ado/ado-client.js +398 -0
- package/dist/integrations/ado/ado-client.js.map +1 -0
- package/dist/integrations/jira/jira-client.d.ts +139 -0
- package/dist/integrations/jira/jira-client.d.ts.map +1 -0
- package/dist/integrations/jira/jira-client.js +386 -0
- package/dist/integrations/jira/jira-client.js.map +1 -0
- package/dist/integrations/jira/jira-incremental-mapper.d.ts +75 -0
- package/dist/integrations/jira/jira-incremental-mapper.d.ts.map +1 -0
- package/dist/integrations/jira/jira-incremental-mapper.js +474 -0
- package/dist/integrations/jira/jira-incremental-mapper.js.map +1 -0
- package/dist/integrations/jira/jira-mapper.d.ts +105 -0
- package/dist/integrations/jira/jira-mapper.d.ts.map +1 -0
- package/dist/integrations/jira/jira-mapper.js +494 -0
- package/dist/integrations/jira/jira-mapper.js.map +1 -0
- package/dist/testing/test-generator.d.ts +117 -0
- package/dist/testing/test-generator.d.ts.map +1 -0
- package/dist/testing/test-generator.js +370 -0
- package/dist/testing/test-generator.js.map +1 -0
- package/dist/utils/auto-install.d.ts +3 -0
- package/dist/utils/auto-install.d.ts.map +1 -1
- package/dist/utils/auto-install.js +16 -82
- package/dist/utils/auto-install.js.map +1 -1
- package/dist/utils/esm-helpers.d.ts +50 -0
- package/dist/utils/esm-helpers.d.ts.map +1 -0
- package/dist/utils/esm-helpers.js +57 -0
- package/dist/utils/esm-helpers.js.map +1 -0
- package/package.json +16 -7
- package/src/adapters/README.md +1 -2
- package/src/adapters/adapter-base.ts +6 -3
- package/src/adapters/adapter-loader.ts +261 -0
- package/src/adapters/agents-md-generator.ts +162 -0
- package/src/adapters/claude/README.md +6 -14
- package/src/adapters/claude/adapter.ts +4 -4
- package/src/adapters/claude-md-generator.ts +311 -0
- package/src/adapters/codex/README.md +105 -0
- package/src/adapters/codex/adapter.ts +333 -0
- package/src/adapters/copilot/adapter.ts +36 -65
- package/src/adapters/cursor/README.md +0 -2
- package/src/adapters/cursor/adapter.ts +46 -92
- package/src/adapters/doc-generator.ts +331 -0
- package/src/adapters/gemini/README.md +97 -0
- package/src/adapters/gemini/adapter.ts +298 -0
- package/src/adapters/generic/adapter.ts +61 -57
- package/src/adapters/registry.yaml +86 -25
- package/src/agents/devops/AGENT.md +16 -18
- package/src/agents/docs-writer/AGENT.md +2 -2
- package/src/agents/pm/AGENT.md +1 -50
- package/src/commands/README.md +134 -111
- package/src/commands/{build.md → specweave.do.md} +141 -69
- package/src/commands/{done.md → specweave.done.md} +3 -3
- package/src/commands/{inc.md → specweave.inc.md} +4 -4
- package/src/commands/{increment.md → specweave.increment.md} +143 -76
- package/src/commands/specweave.md +430 -0
- package/src/commands/specweave.next.md +495 -0
- package/src/commands/{progress.md → specweave.progress.md} +12 -12
- package/src/commands/specweave.sync-docs.md +665 -0
- package/src/commands/specweave.sync-github.md +269 -0
- package/src/commands/specweave.sync-jira.md +197 -0
- package/src/commands/{validate.md → specweave.validate.md} +4 -4
- package/src/hooks/README.md +19 -29
- package/src/hooks/post-task-completion.sh +25 -30
- package/src/skills/ado-sync/README.md +1 -36
- package/src/skills/bmad-method-expert/SKILL.md +1 -3
- package/src/skills/brownfield-analyzer/SKILL.md +429 -23
- package/src/skills/brownfield-onboarder/SKILL.md +221 -8
- package/src/skills/context-loader/SKILL.md +239 -617
- package/src/skills/context-optimizer/SKILL.md +0 -30
- package/src/skills/github-sync/SKILL.md +1 -19
- package/src/skills/increment-planner/SKILL.md +64 -18
- package/src/skills/increment-quality-judge/SKILL.md +1 -36
- package/src/skills/jira-sync/README.md +1 -38
- package/src/skills/role-orchestrator/README.md +1 -22
- package/src/skills/role-orchestrator/SKILL.md +1 -59
- package/src/skills/skill-router/SKILL.md +0 -18
- package/src/skills/spec-kit-expert/SKILL.md +1 -3
- package/src/skills/specweave-detector/SKILL.md +225 -275
- package/src/skills/task-builder/README.md +1 -7
- package/src/templates/AGENTS.md.template +334 -0
- package/src/templates/CLAUDE.md.template +131 -298
- package/src/templates/README.md.template +115 -23
- package/src/templates/environments/minimal/README.md +0 -1
- package/INSTALL.md +0 -848
- package/SPECWEAVE.md +0 -743
- package/src/adapters/copilot/.github/copilot/instructions.md +0 -376
- package/src/adapters/cursor/.cursorrules +0 -325
- package/src/adapters/generic/SPECWEAVE-MANUAL.md +0 -676
- package/src/commands/create-project.md +0 -528
- package/src/commands/generate-docs.md +0 -623
- package/src/commands/review-docs.md +0 -331
- package/src/commands/sync-github.md +0 -115
- package/src/skills/ado-sync/test-cases/test-1.yaml +0 -9
- package/src/skills/ado-sync/test-cases/test-2.yaml +0 -8
- package/src/skills/ado-sync/test-cases/test-3.yaml +0 -9
- package/src/skills/bmad-method-expert/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/bmad-method-expert/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/bmad-method-expert/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/brownfield-analyzer/test-cases/test-1-basic-analysis.yaml +0 -48
- package/src/skills/brownfield-analyzer/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/brownfield-analyzer/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/brownfield-onboarder/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/brownfield-onboarder/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/brownfield-onboarder/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/calendar-system/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/calendar-system/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/calendar-system/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/context-loader/test-cases/test-1-basic-loading.yaml +0 -39
- package/src/skills/context-loader/test-cases/test-2-token-budget-exceeded.yaml +0 -44
- package/src/skills/context-loader/test-cases/test-3-section-anchors.yaml +0 -45
- package/src/skills/context-optimizer/test-cases/test-1-bug-fix-narrow.yaml +0 -97
- package/src/skills/context-optimizer/test-cases/test-2-feature-focused.yaml +0 -109
- package/src/skills/context-optimizer/test-cases/test-3-architecture-broad.yaml +0 -98
- package/src/skills/cost-optimizer/test-cases/test-1-basic-comparison.yaml +0 -75
- package/src/skills/cost-optimizer/test-cases/test-2-budget-constraint.yaml +0 -52
- package/src/skills/cost-optimizer/test-cases/test-3-scale-requirement.yaml +0 -63
- package/src/skills/cost-optimizer/test-results/README.md +0 -46
- package/src/skills/design-system-architect/test-cases/test-1-token-structure.yaml +0 -23
- package/src/skills/design-system-architect/test-cases/test-2-component-hierarchy.yaml +0 -24
- package/src/skills/design-system-architect/test-cases/test-3-accessibility-checklist.yaml +0 -23
- package/src/skills/diagrams-architect/test-cases/test-1-c4-context.yaml +0 -13
- package/src/skills/diagrams-architect/test-cases/test-2-sequence-diagram.yaml +0 -13
- package/src/skills/diagrams-architect/test-cases/test-3-er-diagram.yaml +0 -13
- package/src/skills/diagrams-generator/test-cases/test-1.yaml +0 -9
- package/src/skills/diagrams-generator/test-cases/test-2.yaml +0 -9
- package/src/skills/diagrams-generator/test-cases/test-3.yaml +0 -8
- package/src/skills/docs-updater/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/docs-updater/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/docs-updater/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/dotnet-backend/test-cases/test-1-rest-api.yaml +0 -14
- package/src/skills/dotnet-backend/test-cases/test-2-authentication.yaml +0 -13
- package/src/skills/dotnet-backend/test-cases/test-3-minimal-api.yaml +0 -13
- package/src/skills/e2e-playwright/test-cases/TC-001-basic-navigation.yaml +0 -54
- package/src/skills/e2e-playwright/test-cases/TC-002-form-interaction.yaml +0 -64
- package/src/skills/e2e-playwright/test-cases/TC-003-specweave-integration.yaml +0 -74
- package/src/skills/e2e-playwright/test-cases/TC-004-accessibility-check.yaml +0 -98
- package/src/skills/figma-designer/test-cases/test-1-design-system.yaml +0 -13
- package/src/skills/figma-designer/test-cases/test-2-component-library.yaml +0 -13
- package/src/skills/figma-designer/test-cases/test-3-responsive-layout.yaml +0 -13
- package/src/skills/figma-implementer/test-cases/test-1-design-to-react.yaml +0 -13
- package/src/skills/figma-implementer/test-cases/test-2-storybook.yaml +0 -13
- package/src/skills/figma-implementer/test-cases/test-3-design-tokens.yaml +0 -13
- package/src/skills/figma-mcp-connector/test-cases/test-1-read-file-desktop.yaml +0 -22
- package/src/skills/figma-mcp-connector/test-cases/test-2-read-file-framelink.yaml +0 -21
- package/src/skills/figma-mcp-connector/test-cases/test-3-error-handling.yaml +0 -18
- package/src/skills/figma-to-code/test-cases/test-1-token-generation.yaml +0 -29
- package/src/skills/figma-to-code/test-cases/test-2-component-generation.yaml +0 -27
- package/src/skills/figma-to-code/test-cases/test-3-typescript-generation.yaml +0 -28
- package/src/skills/frontend/test-cases/test-1-react-component.yaml +0 -13
- package/src/skills/frontend/test-cases/test-2-form-validation.yaml +0 -13
- package/src/skills/frontend/test-cases/test-3-state-management.yaml +0 -13
- package/src/skills/github-sync/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/github-sync/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/github-sync/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/hetzner-provisioner/test-cases/test-1-basic-provision.yaml +0 -71
- package/src/skills/hetzner-provisioner/test-cases/test-2-postgres-provision.yaml +0 -85
- package/src/skills/hetzner-provisioner/test-cases/test-3-ssl-config.yaml +0 -126
- package/src/skills/hetzner-provisioner/test-results/README.md +0 -259
- package/src/skills/increment-planner/test-cases/test-1-basic-feature.yaml +0 -27
- package/src/skills/increment-planner/test-cases/test-2-complex-feature.yaml +0 -30
- package/src/skills/increment-planner/test-cases/test-3-auto-numbering.yaml +0 -24
- package/src/skills/increment-quality-judge/test-cases/test-1-good-spec.yaml +0 -95
- package/src/skills/increment-quality-judge/test-cases/test-2-poor-spec.yaml +0 -108
- package/src/skills/increment-quality-judge/test-cases/test-3-export-suggestions.yaml +0 -87
- package/src/skills/jira-sync/test-cases/test-1.yaml +0 -9
- package/src/skills/jira-sync/test-cases/test-2.yaml +0 -9
- package/src/skills/jira-sync/test-cases/test-3.yaml +0 -10
- package/src/skills/nextjs/test-cases/test-1-app-router.yaml +0 -13
- package/src/skills/nextjs/test-cases/test-2-server-actions.yaml +0 -13
- package/src/skills/nextjs/test-cases/test-3-api-routes.yaml +0 -13
- package/src/skills/nodejs-backend/test-cases/test-1-express-api.yaml +0 -13
- package/src/skills/nodejs-backend/test-cases/test-2-prisma-orm.yaml +0 -13
- package/src/skills/nodejs-backend/test-cases/test-3-authentication.yaml +0 -13
- package/src/skills/notification-system/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/notification-system/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/notification-system/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/python-backend/test-cases/test-1-fastapi-crud.yaml +0 -13
- package/src/skills/python-backend/test-cases/test-2-sqlalchemy.yaml +0 -13
- package/src/skills/python-backend/test-cases/test-3-authentication.yaml +0 -13
- package/src/skills/role-orchestrator/test-cases/test-1-simple-product.yaml +0 -98
- package/src/skills/role-orchestrator/test-cases/test-2-quality-gate-failure.yaml +0 -73
- package/src/skills/role-orchestrator/test-cases/test-3-security-workflow.yaml +0 -121
- package/src/skills/role-orchestrator/test-cases/test-4-parallel-execution.yaml +0 -145
- package/src/skills/role-orchestrator/test-cases/test-5-feedback-loops.yaml +0 -149
- package/src/skills/skill-creator/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/skill-creator/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/skill-creator/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/skill-router/test-cases/test-1-basic-routing.yaml +0 -33
- package/src/skills/skill-router/test-cases/test-2-ambiguous-request.yaml +0 -42
- package/src/skills/skill-router/test-cases/test-3-nested-orchestration.yaml +0 -50
- package/src/skills/spec-driven-brainstorming/test-cases/TC-001-simple-idea-to-design.yaml +0 -148
- package/src/skills/spec-driven-brainstorming/test-cases/TC-002-complex-ultrathink-design.yaml +0 -190
- package/src/skills/spec-driven-brainstorming/test-cases/TC-003-unclear-requirements-socratic.yaml +0 -233
- package/src/skills/spec-driven-debugging/test-cases/TC-001-simple-auth-bug.yaml +0 -212
- package/src/skills/spec-driven-debugging/test-cases/TC-002-race-condition-ultrathink.yaml +0 -461
- package/src/skills/spec-driven-debugging/test-cases/TC-003-brownfield-missing-spec.yaml +0 -366
- package/src/skills/spec-kit-expert/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/spec-kit-expert/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/spec-kit-expert/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/specweave-ado-mapper/test-cases/test-1-export-to-ado.yaml +0 -13
- package/src/skills/specweave-ado-mapper/test-cases/test-2-import-from-ado.yaml +0 -13
- package/src/skills/specweave-ado-mapper/test-cases/test-3-bidirectional-sync.yaml +0 -13
- package/src/skills/specweave-detector/test-cases/test-1-basic-detection.yaml +0 -37
- package/src/skills/specweave-detector/test-cases/test-2-missing-config.yaml +0 -37
- package/src/skills/specweave-detector/test-cases/test-3-non-specweave-project.yaml +0 -34
- package/src/skills/specweave-jira-mapper/test-cases/test-1-export-to-jira.yaml +0 -13
- package/src/skills/specweave-jira-mapper/test-cases/test-2-import-from-jira.yaml +0 -13
- package/src/skills/specweave-jira-mapper/test-cases/test-3-sync-status.yaml +0 -13
- package/src/skills/stripe-integrator/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/stripe-integrator/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/stripe-integrator/test-cases/test-3-placeholder.yaml +0 -12
- package/src/skills/task-builder/test-cases/test-1-placeholder.yaml +0 -12
- package/src/skills/task-builder/test-cases/test-2-placeholder.yaml +0 -12
- package/src/skills/task-builder/test-cases/test-3-placeholder.yaml +0 -12
- package/src/templates/config.yaml +0 -351
- /package/src/commands/{list-increments.md → specweave.list-increments.md} +0 -0
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: "Component Hierarchy Validation"
|
|
3
|
-
description: "Test validation of Atomic Design hierarchy"
|
|
4
|
-
input:
|
|
5
|
-
components:
|
|
6
|
-
atoms:
|
|
7
|
-
- "Button"
|
|
8
|
-
- "Input"
|
|
9
|
-
molecules:
|
|
10
|
-
- "FormField"
|
|
11
|
-
organisms:
|
|
12
|
-
- "Navigation"
|
|
13
|
-
expected_output:
|
|
14
|
-
type: "validation_result"
|
|
15
|
-
valid: true
|
|
16
|
-
hierarchy_correct: true
|
|
17
|
-
validation:
|
|
18
|
-
- "Atoms are smallest components"
|
|
19
|
-
- "Molecules compose atoms"
|
|
20
|
-
- "Organisms compose molecules/atoms"
|
|
21
|
-
success_criteria:
|
|
22
|
-
- "Hierarchy follows Atomic Design"
|
|
23
|
-
- "No circular dependencies"
|
|
24
|
-
---
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: "Accessibility Checklist Validation"
|
|
3
|
-
description: "Test validation of accessibility requirements"
|
|
4
|
-
input:
|
|
5
|
-
component: "Button"
|
|
6
|
-
accessibility:
|
|
7
|
-
aria_label: true
|
|
8
|
-
keyboard_navigation: true
|
|
9
|
-
color_contrast: 4.6
|
|
10
|
-
touch_target: "44x44"
|
|
11
|
-
expected_output:
|
|
12
|
-
type: "validation_result"
|
|
13
|
-
valid: true
|
|
14
|
-
wcag_compliant: true
|
|
15
|
-
validation:
|
|
16
|
-
- "ARIA labels present"
|
|
17
|
-
- "Keyboard navigation supported"
|
|
18
|
-
- "Color contrast >= 4.5:1"
|
|
19
|
-
- "Touch targets >= 44x44px"
|
|
20
|
-
success_criteria:
|
|
21
|
-
- "WCAG 2.1 AA compliance"
|
|
22
|
-
- "No accessibility violations"
|
|
23
|
-
---
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
name: "Create C4 Context Diagram"
|
|
2
|
-
description: "Test creating a C4 Level 1 context diagram for a system"
|
|
3
|
-
user_input: "Create a C4 context diagram for an e-commerce platform"
|
|
4
|
-
expected_behavior:
|
|
5
|
-
- Generates valid Mermaid C4Context diagram
|
|
6
|
-
- Includes system boundary
|
|
7
|
-
- Shows external actors (users, external systems)
|
|
8
|
-
- Shows relationships and dependencies
|
|
9
|
-
validation:
|
|
10
|
-
- Diagram starts with C4Context keyword
|
|
11
|
-
- Contains Person/System elements
|
|
12
|
-
- Includes Boundary definition
|
|
13
|
-
- Has BiRel or Rel relationship arrows
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
name: "Create Sequence Diagram"
|
|
2
|
-
description: "Test creating a sequence diagram for API authentication flow"
|
|
3
|
-
user_input: "Create a sequence diagram for OAuth 2.0 authentication flow"
|
|
4
|
-
expected_behavior:
|
|
5
|
-
- Generates valid Mermaid sequence diagram
|
|
6
|
-
- Shows participants (client, auth server, resource server)
|
|
7
|
-
- Includes authentication steps in correct order
|
|
8
|
-
- Shows token exchange flow
|
|
9
|
-
validation:
|
|
10
|
-
- Diagram starts with sequenceDiagram keyword
|
|
11
|
-
- Contains participant declarations
|
|
12
|
-
- Has sequential messages (->>, -->)
|
|
13
|
-
- Includes notes for clarity
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
name: "Create Entity Relationship Diagram"
|
|
2
|
-
description: "Test creating an ER diagram for database schema"
|
|
3
|
-
user_input: "Create an ER diagram for a multi-tenant SaaS database"
|
|
4
|
-
expected_behavior:
|
|
5
|
-
- Generates valid Mermaid ER diagram
|
|
6
|
-
- Shows entities (tables)
|
|
7
|
-
- Shows relationships with cardinality
|
|
8
|
-
- Includes key attributes
|
|
9
|
-
validation:
|
|
10
|
-
- Diagram starts with erDiagram keyword
|
|
11
|
-
- Contains entity definitions
|
|
12
|
-
- Has relationships (||--o{, etc.)
|
|
13
|
-
- Shows primary/foreign key fields
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: "Detect C4 Level 3 (LLD)"
|
|
3
|
-
description: "Tests if diagrams-generator correctly identifies LLD component diagrams"
|
|
4
|
-
input:
|
|
5
|
-
prompt: "Create component diagram for Auth Service"
|
|
6
|
-
expected_output:
|
|
7
|
-
diagram_type: "C4Component"
|
|
8
|
-
document_type: "LLD"
|
|
9
|
-
---
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: "Save to Correct Location"
|
|
3
|
-
description: "Tests if diagrams are saved to correct paths (HLD vs LLD)"
|
|
4
|
-
input:
|
|
5
|
-
prompt: "Create component diagram for Payment Service"
|
|
6
|
-
expected_output:
|
|
7
|
-
file_location: ".specweave/docs/internal/architecture/diagrams/payments/component-payment-service.mmd"
|
|
8
|
-
---
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
name: "Create ASP.NET Core REST API"
|
|
2
|
-
description: "Test creating a REST API controller with Entity Framework"
|
|
3
|
-
user_input: "Create a REST API for managing products with CRUD operations"
|
|
4
|
-
expected_behavior:
|
|
5
|
-
- Generates ASP.NET Core controller with appropriate attributes
|
|
6
|
-
- Includes Entity Framework DbContext integration
|
|
7
|
-
- Implements CRUD endpoints (GET, POST, PUT, DELETE)
|
|
8
|
-
- Includes async/await pattern
|
|
9
|
-
- Adds proper HTTP status codes
|
|
10
|
-
validation:
|
|
11
|
-
- Uses [ApiController] and [Route] attributes
|
|
12
|
-
- Controller inherits from ControllerBase
|
|
13
|
-
- Methods use async Task<ActionResult> pattern
|
|
14
|
-
- Includes dependency injection for DbContext
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
name: "Implement JWT Authentication"
|
|
2
|
-
description: "Test implementing JWT authentication in ASP.NET Core"
|
|
3
|
-
user_input: "Add JWT token-based authentication to my API"
|
|
4
|
-
expected_behavior:
|
|
5
|
-
- Configures JWT authentication in Program.cs/Startup.cs
|
|
6
|
-
- Creates login endpoint that generates JWT tokens
|
|
7
|
-
- Includes claims-based authorization
|
|
8
|
-
- Protects endpoints with [Authorize] attribute
|
|
9
|
-
validation:
|
|
10
|
-
- Uses Microsoft.AspNetCore.Authentication.JwtBearer
|
|
11
|
-
- Configures token validation parameters
|
|
12
|
-
- Generates tokens with claims
|
|
13
|
-
- Implements token refresh logic
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
name: "Create Minimal API"
|
|
2
|
-
description: "Test creating .NET 6+ minimal API endpoints"
|
|
3
|
-
user_input: "Create a minimal API for user management"
|
|
4
|
-
expected_behavior:
|
|
5
|
-
- Uses app.MapGet/MapPost/MapPut/MapDelete
|
|
6
|
-
- Implements endpoints in Program.cs
|
|
7
|
-
- Includes route parameters and query strings
|
|
8
|
-
- Uses dependency injection
|
|
9
|
-
validation:
|
|
10
|
-
- No controller classes needed
|
|
11
|
-
- Uses lambda expressions for endpoints
|
|
12
|
-
- Implements proper HTTP verbs
|
|
13
|
-
- Includes validation and error handling
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
id: TC-001
|
|
2
|
-
name: Basic Navigation Test
|
|
3
|
-
description: Verify that the skill can navigate to a webpage and capture a screenshot
|
|
4
|
-
priority: high
|
|
5
|
-
category: functional
|
|
6
|
-
|
|
7
|
-
preconditions:
|
|
8
|
-
- Playwright is installed
|
|
9
|
-
- Chromium browser is available
|
|
10
|
-
- Development server is running on localhost:3000
|
|
11
|
-
|
|
12
|
-
test_steps:
|
|
13
|
-
- step: 1
|
|
14
|
-
action: Create test script that navigates to localhost:3000
|
|
15
|
-
expected: Test script is created in /tmp/
|
|
16
|
-
|
|
17
|
-
- step: 2
|
|
18
|
-
action: Execute test script via execute.js
|
|
19
|
-
expected: Browser launches and navigates to homepage
|
|
20
|
-
|
|
21
|
-
- step: 3
|
|
22
|
-
action: Capture full-page screenshot
|
|
23
|
-
expected: Screenshot is saved to /tmp/ with timestamp
|
|
24
|
-
|
|
25
|
-
- step: 4
|
|
26
|
-
action: Verify page title
|
|
27
|
-
expected: Page title is captured and logged to console
|
|
28
|
-
|
|
29
|
-
- step: 5
|
|
30
|
-
action: Close browser
|
|
31
|
-
expected: Browser closes cleanly without errors
|
|
32
|
-
|
|
33
|
-
acceptance_criteria:
|
|
34
|
-
- Browser launches in visible mode (headless: false)
|
|
35
|
-
- Navigation completes successfully
|
|
36
|
-
- Screenshot file is created with correct naming pattern
|
|
37
|
-
- Console output shows execution steps
|
|
38
|
-
- No errors are thrown during execution
|
|
39
|
-
|
|
40
|
-
test_data:
|
|
41
|
-
url: http://localhost:3000
|
|
42
|
-
expected_title: SpecWeave
|
|
43
|
-
screenshot_pattern: /tmp/homepage-*.png
|
|
44
|
-
|
|
45
|
-
expected_results:
|
|
46
|
-
- Browser opens visibly
|
|
47
|
-
- Page loads within 10 seconds
|
|
48
|
-
- Screenshot file exists and is valid PNG
|
|
49
|
-
- Console shows "✅ Test passed" message
|
|
50
|
-
- Process exits with code 0
|
|
51
|
-
|
|
52
|
-
notes: |
|
|
53
|
-
This is the most basic test case to verify core functionality.
|
|
54
|
-
All other tests depend on this working correctly.
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
id: TC-002
|
|
2
|
-
name: Form Interaction Test
|
|
3
|
-
description: Verify that the skill can interact with form elements using helper utilities
|
|
4
|
-
priority: high
|
|
5
|
-
category: functional
|
|
6
|
-
|
|
7
|
-
preconditions:
|
|
8
|
-
- TC-001 passes
|
|
9
|
-
- Test page has a login form with email and password fields
|
|
10
|
-
- safeType and safeClick utilities are available
|
|
11
|
-
|
|
12
|
-
test_steps:
|
|
13
|
-
- step: 1
|
|
14
|
-
action: Navigate to login page
|
|
15
|
-
expected: Login form is visible
|
|
16
|
-
|
|
17
|
-
- step: 2
|
|
18
|
-
action: Use safeType() to enter email address
|
|
19
|
-
expected: Email field is filled with test email
|
|
20
|
-
|
|
21
|
-
- step: 3
|
|
22
|
-
action: Use safeType() to enter password
|
|
23
|
-
expected: Password field is filled (masked)
|
|
24
|
-
|
|
25
|
-
- step: 4
|
|
26
|
-
action: Use safeClick() to submit form
|
|
27
|
-
expected: Form submission is triggered
|
|
28
|
-
|
|
29
|
-
- step: 5
|
|
30
|
-
action: Wait for navigation or success message
|
|
31
|
-
expected: User is redirected or sees success state
|
|
32
|
-
|
|
33
|
-
- step: 6
|
|
34
|
-
action: Capture screenshot of result
|
|
35
|
-
expected: Screenshot shows post-login state
|
|
36
|
-
|
|
37
|
-
acceptance_criteria:
|
|
38
|
-
- safeType() handles focus and clearing automatically
|
|
39
|
-
- safeType() verifies text was entered correctly
|
|
40
|
-
- safeClick() waits for element to be visible
|
|
41
|
-
- Form submission completes without timeout
|
|
42
|
-
- Screenshots capture both pre and post submission states
|
|
43
|
-
|
|
44
|
-
test_data:
|
|
45
|
-
email: test@example.com
|
|
46
|
-
password: testpassword123
|
|
47
|
-
login_url: http://localhost:3000/login
|
|
48
|
-
expected_redirect: /dashboard
|
|
49
|
-
|
|
50
|
-
expected_results:
|
|
51
|
-
- Email field contains entered value
|
|
52
|
-
- Password field is masked
|
|
53
|
-
- Form submits successfully
|
|
54
|
-
- Navigation completes within 10 seconds
|
|
55
|
-
- Success state is reached
|
|
56
|
-
|
|
57
|
-
error_scenarios:
|
|
58
|
-
- If email field not found: Error message with selector details
|
|
59
|
-
- If click times out: Retry up to 3 times
|
|
60
|
-
- If verification fails: Clear error about mismatch
|
|
61
|
-
|
|
62
|
-
notes: |
|
|
63
|
-
Tests the core interaction utilities that make Playwright easier to use.
|
|
64
|
-
safeType() and safeClick() should handle common edge cases automatically.
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
id: TC-003
|
|
2
|
-
name: SpecWeave Integration Test
|
|
3
|
-
description: Verify that the skill detects SpecWeave context and generates test reports in increment folders
|
|
4
|
-
priority: medium
|
|
5
|
-
category: integration
|
|
6
|
-
|
|
7
|
-
preconditions:
|
|
8
|
-
- TC-001 and TC-002 pass
|
|
9
|
-
- Running in a SpecWeave project (.specweave/ directory exists)
|
|
10
|
-
- Active increment with in-progress status exists
|
|
11
|
-
- Increment has reports/ directory
|
|
12
|
-
|
|
13
|
-
test_steps:
|
|
14
|
-
- step: 1
|
|
15
|
-
action: Execute test from within SpecWeave project
|
|
16
|
-
expected: Executor detects SpecWeave context
|
|
17
|
-
|
|
18
|
-
- step: 2
|
|
19
|
-
action: Check console output for SpecWeave detection message
|
|
20
|
-
expected: "🔷 SpecWeave project detected" is logged
|
|
21
|
-
|
|
22
|
-
- step: 3
|
|
23
|
-
action: Verify active increment detection
|
|
24
|
-
expected: "📦 Active increment: 0001-feature-name" is logged
|
|
25
|
-
|
|
26
|
-
- step: 4
|
|
27
|
-
action: Run test that generates results
|
|
28
|
-
expected: Test executes and collects results
|
|
29
|
-
|
|
30
|
-
- step: 5
|
|
31
|
-
action: Generate test report using generateTestReport()
|
|
32
|
-
expected: Markdown report is created
|
|
33
|
-
|
|
34
|
-
- step: 6
|
|
35
|
-
action: Save report using saveTestReport()
|
|
36
|
-
expected: Report is saved to .specweave/increments/{id}/reports/
|
|
37
|
-
|
|
38
|
-
acceptance_criteria:
|
|
39
|
-
- detectSpecWeaveContext() correctly identifies SpecWeave projects
|
|
40
|
-
- Active increment is detected by checking tasks.md status
|
|
41
|
-
- Test reports follow SpecWeave format (see SKILL.md)
|
|
42
|
-
- Reports are saved to correct increment folder
|
|
43
|
-
- Report includes all sections (summary, results, performance, accessibility)
|
|
44
|
-
|
|
45
|
-
test_data:
|
|
46
|
-
project_root: /path/to/specweave-project
|
|
47
|
-
increment_id: "0001-test-feature"
|
|
48
|
-
increment_status: in-progress
|
|
49
|
-
report_filename: e2e-test-report.md
|
|
50
|
-
|
|
51
|
-
expected_results:
|
|
52
|
-
- isSpecweaveProject: true
|
|
53
|
-
- activeIncrement: "0001-test-feature"
|
|
54
|
-
- Report file exists at: .specweave/increments/0001-test-feature/reports/e2e-test-report.md
|
|
55
|
-
- Report contains proper Markdown formatting
|
|
56
|
-
- Report includes timestamp and test results
|
|
57
|
-
|
|
58
|
-
report_sections_required:
|
|
59
|
-
- Test Summary (total, passed, failed, skipped)
|
|
60
|
-
- Test Results (individual test details)
|
|
61
|
-
- Performance Metrics (page load, interactions)
|
|
62
|
-
- Accessibility Issues (grouped by type)
|
|
63
|
-
- Recommendations (actionable items)
|
|
64
|
-
|
|
65
|
-
edge_cases:
|
|
66
|
-
- No active increment: Should still work, just without increment context
|
|
67
|
-
- Multiple in-progress increments: Use the first one found
|
|
68
|
-
- reports/ directory missing: Create it automatically
|
|
69
|
-
- Running outside SpecWeave: Should work normally without SpecWeave features
|
|
70
|
-
|
|
71
|
-
notes: |
|
|
72
|
-
This test verifies the SpecWeave-specific enhancements that differentiate
|
|
73
|
-
this skill from the original playwright-skill. The ability to automatically
|
|
74
|
-
detect context and generate reports in the right place is a key feature.
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
id: TC-004
|
|
2
|
-
name: Accessibility Check Test
|
|
3
|
-
description: Verify that the skill can perform basic accessibility checks on web pages
|
|
4
|
-
priority: medium
|
|
5
|
-
category: accessibility
|
|
6
|
-
|
|
7
|
-
preconditions:
|
|
8
|
-
- TC-001 passes
|
|
9
|
-
- Test page has various HTML elements (images, forms, buttons, links)
|
|
10
|
-
- checkAccessibility() utility is available
|
|
11
|
-
|
|
12
|
-
test_steps:
|
|
13
|
-
- step: 1
|
|
14
|
-
action: Navigate to test page
|
|
15
|
-
expected: Page loads successfully
|
|
16
|
-
|
|
17
|
-
- step: 2
|
|
18
|
-
action: Call checkAccessibility(page)
|
|
19
|
-
expected: Function runs without errors
|
|
20
|
-
|
|
21
|
-
- step: 3
|
|
22
|
-
action: Verify detection of images without alt text
|
|
23
|
-
expected: Missing alt text issues are reported
|
|
24
|
-
|
|
25
|
-
- step: 4
|
|
26
|
-
action: Verify detection of form inputs without labels
|
|
27
|
-
expected: Missing label issues are reported
|
|
28
|
-
|
|
29
|
-
- step: 5
|
|
30
|
-
action: Verify detection of buttons without accessible text
|
|
31
|
-
expected: Missing button text issues are reported
|
|
32
|
-
|
|
33
|
-
- step: 6
|
|
34
|
-
action: Log all accessibility issues to console
|
|
35
|
-
expected: Clear, actionable issue descriptions are shown
|
|
36
|
-
|
|
37
|
-
acceptance_criteria:
|
|
38
|
-
- All four accessibility checks run successfully
|
|
39
|
-
- Issues are grouped by type (missing-alt, missing-label, etc.)
|
|
40
|
-
- Each issue includes element HTML snippet
|
|
41
|
-
- Each issue includes clear message explaining the problem
|
|
42
|
-
- Function returns array of issue objects
|
|
43
|
-
|
|
44
|
-
test_data:
|
|
45
|
-
test_scenarios:
|
|
46
|
-
- scenario: Image without alt
|
|
47
|
-
html: <img src="test.png">
|
|
48
|
-
expected_issue: missing-alt
|
|
49
|
-
|
|
50
|
-
- scenario: Input without label
|
|
51
|
-
html: <input type="text" name="test">
|
|
52
|
-
expected_issue: missing-label
|
|
53
|
-
|
|
54
|
-
- scenario: Button without text
|
|
55
|
-
html: <button></button>
|
|
56
|
-
expected_issue: missing-button-text
|
|
57
|
-
|
|
58
|
-
- scenario: Link without text
|
|
59
|
-
html: <a href="/test"></a>
|
|
60
|
-
expected_issue: missing-link-text
|
|
61
|
-
|
|
62
|
-
expected_results:
|
|
63
|
-
- checkAccessibility() returns array
|
|
64
|
-
- Each issue has: type, element, message
|
|
65
|
-
- Element snippets are truncated to 100 chars
|
|
66
|
-
- Hidden inputs are ignored
|
|
67
|
-
- ARIA labels are recognized as valid alternatives
|
|
68
|
-
|
|
69
|
-
issue_format:
|
|
70
|
-
type: string # e.g., "missing-alt"
|
|
71
|
-
element: string # HTML snippet (max 100 chars)
|
|
72
|
-
message: string # Human-readable description
|
|
73
|
-
|
|
74
|
-
valid_alternatives:
|
|
75
|
-
for_images:
|
|
76
|
-
- alt attribute
|
|
77
|
-
- aria-label attribute
|
|
78
|
-
|
|
79
|
-
for_inputs:
|
|
80
|
-
- Wrapped in <label>
|
|
81
|
-
- Associated via <label for="id">
|
|
82
|
-
- aria-label attribute
|
|
83
|
-
- aria-labelledby attribute
|
|
84
|
-
|
|
85
|
-
for_buttons:
|
|
86
|
-
- Text content
|
|
87
|
-
- aria-label attribute
|
|
88
|
-
- Alt text on child image
|
|
89
|
-
|
|
90
|
-
for_links:
|
|
91
|
-
- Text content
|
|
92
|
-
- aria-label attribute
|
|
93
|
-
- Alt text on child image
|
|
94
|
-
|
|
95
|
-
notes: |
|
|
96
|
-
Basic accessibility checks help catch common issues early.
|
|
97
|
-
This is not a replacement for full accessibility audits but provides
|
|
98
|
-
quick feedback during development.
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
name: "Create Design System Foundation"
|
|
2
|
-
description: "Test creating design tokens and base components in Figma"
|
|
3
|
-
user_input: "Create a design system with color palette, typography, and spacing"
|
|
4
|
-
expected_behavior:
|
|
5
|
-
- Defines color tokens (primary, secondary, neutral, semantic)
|
|
6
|
-
- Sets up typography scale (headings, body, captions)
|
|
7
|
-
- Creates spacing tokens (4px, 8px, 16px, etc.)
|
|
8
|
-
- Organizes tokens in Figma variables
|
|
9
|
-
validation:
|
|
10
|
-
- Uses Figma variables for colors
|
|
11
|
-
- Defines text styles for typography
|
|
12
|
-
- Creates spacing components
|
|
13
|
-
- Follows naming conventions (color/primary/500)
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
name: "Build Component Library"
|
|
2
|
-
description: "Test creating reusable UI components using atomic design"
|
|
3
|
-
user_input: "Create a button component library with all variants"
|
|
4
|
-
expected_behavior:
|
|
5
|
-
- Creates button component with variants (primary, secondary, ghost)
|
|
6
|
-
- Implements states (default, hover, active, disabled)
|
|
7
|
-
- Uses auto-layout for responsive sizing
|
|
8
|
-
- Includes icon support
|
|
9
|
-
validation:
|
|
10
|
-
- Component uses variants
|
|
11
|
-
- States implemented as component properties
|
|
12
|
-
- Uses auto-layout
|
|
13
|
-
- Properly linked to design tokens
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
name: "Design Responsive Layout"
|
|
2
|
-
description: "Test creating responsive layouts with constraints"
|
|
3
|
-
user_input: "Design a responsive dashboard layout for desktop and mobile"
|
|
4
|
-
expected_behavior:
|
|
5
|
-
- Creates frames for different breakpoints (mobile, tablet, desktop)
|
|
6
|
-
- Uses auto-layout for flexible content
|
|
7
|
-
- Implements proper constraints
|
|
8
|
-
- Shows responsive behavior
|
|
9
|
-
validation:
|
|
10
|
-
- Multiple frames for breakpoints
|
|
11
|
-
- Auto-layout on parent containers
|
|
12
|
-
- Constraints set appropriately
|
|
13
|
-
- Components adapt to different widths
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
name: "Convert Figma Design to React Component"
|
|
2
|
-
description: "Test converting a Figma component to production React code"
|
|
3
|
-
user_input: "Convert this Figma button component to React with TypeScript"
|
|
4
|
-
expected_behavior:
|
|
5
|
-
- Extracts design tokens (colors, spacing, typography)
|
|
6
|
-
- Generates React component with proper props
|
|
7
|
-
- Implements all variants from Figma
|
|
8
|
-
- Includes Tailwind CSS or CSS modules
|
|
9
|
-
validation:
|
|
10
|
-
- Component matches Figma design pixel-perfect
|
|
11
|
-
- Props match Figma variants
|
|
12
|
-
- Uses design tokens correctly
|
|
13
|
-
- Includes TypeScript interfaces
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
name: "Create Storybook Stories for Figma Components"
|
|
2
|
-
description: "Test generating Storybook stories from Figma components"
|
|
3
|
-
user_input: "Create Storybook stories for my button component from Figma"
|
|
4
|
-
expected_behavior:
|
|
5
|
-
- Generates .stories.tsx file
|
|
6
|
-
- Creates stories for each variant
|
|
7
|
-
- Includes controls for interactive props
|
|
8
|
-
- Matches Figma design exactly
|
|
9
|
-
validation:
|
|
10
|
-
- Stories show all variants
|
|
11
|
-
- Controls allow testing different states
|
|
12
|
-
- Visual regression tests possible
|
|
13
|
-
- Documentation includes usage examples
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
name: "Extract and Implement Design Tokens"
|
|
2
|
-
description: "Test extracting design tokens from Figma and generating code"
|
|
3
|
-
user_input: "Extract all design tokens from this Figma file"
|
|
4
|
-
expected_behavior:
|
|
5
|
-
- Extracts colors, typography, spacing, shadows, borders
|
|
6
|
-
- Generates token files (JSON, CSS variables, or TypeScript)
|
|
7
|
-
- Creates Tailwind config if needed
|
|
8
|
-
- Maintains consistency with Figma
|
|
9
|
-
validation:
|
|
10
|
-
- All token categories extracted
|
|
11
|
-
- Proper naming conventions
|
|
12
|
-
- Values match Figma exactly
|
|
13
|
-
- Tokens are importable and usable
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: "Read Figma File - Official Desktop MCP"
|
|
3
|
-
description: "Test reading Figma file via official desktop MCP"
|
|
4
|
-
input:
|
|
5
|
-
figma_url: "https://figma.com/file/ABC123"
|
|
6
|
-
mcp_type: "official_desktop"
|
|
7
|
-
mcp_url: "http://127.0.0.1:3845/mcp"
|
|
8
|
-
expected_output:
|
|
9
|
-
type: "figma_file_metadata"
|
|
10
|
-
fields:
|
|
11
|
-
- "fileId"
|
|
12
|
-
- "name"
|
|
13
|
-
- "components"
|
|
14
|
-
- "variables"
|
|
15
|
-
validation:
|
|
16
|
-
- "File ID extracted correctly"
|
|
17
|
-
- "Components array populated"
|
|
18
|
-
- "Variables object exists"
|
|
19
|
-
success_criteria:
|
|
20
|
-
- "File read successfully"
|
|
21
|
-
- "No authentication errors"
|
|
22
|
-
---
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: "Read Figma File - Community Framelink MCP"
|
|
3
|
-
description: "Test reading Figma file via community Framelink MCP"
|
|
4
|
-
input:
|
|
5
|
-
figma_url: "https://figma.com/file/ABC123"
|
|
6
|
-
mcp_type: "community_framelink"
|
|
7
|
-
expected_output:
|
|
8
|
-
type: "figma_file_metadata"
|
|
9
|
-
fields:
|
|
10
|
-
- "fileId"
|
|
11
|
-
- "name"
|
|
12
|
-
- "components"
|
|
13
|
-
- "variables"
|
|
14
|
-
validation:
|
|
15
|
-
- "File ID extracted correctly"
|
|
16
|
-
- "Components array populated"
|
|
17
|
-
- "Framelink-specific optimizations applied"
|
|
18
|
-
success_criteria:
|
|
19
|
-
- "File read successfully"
|
|
20
|
-
- "Context reduced for AI accuracy"
|
|
21
|
-
---
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: "Error Handling - Invalid Token"
|
|
3
|
-
description: "Test error handling for invalid Figma token"
|
|
4
|
-
input:
|
|
5
|
-
figma_url: "https://figma.com/file/ABC123"
|
|
6
|
-
token: "invalid_token"
|
|
7
|
-
expected_output:
|
|
8
|
-
type: "error"
|
|
9
|
-
error_code: "AUTHENTICATION_FAILED"
|
|
10
|
-
message: "Invalid Figma access token"
|
|
11
|
-
validation:
|
|
12
|
-
- "Error detected correctly"
|
|
13
|
-
- "Clear error message provided"
|
|
14
|
-
- "Suggests solution (check FIGMA_ACCESS_TOKEN)"
|
|
15
|
-
success_criteria:
|
|
16
|
-
- "Error handled gracefully"
|
|
17
|
-
- "User guidance provided"
|
|
18
|
-
---
|