@nextsparkjs/ai-workflow 0.1.0-beta.100
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/LICENSE +21 -0
- package/README.md +115 -0
- package/claude/_docs/workflows-optimizations.md +359 -0
- package/claude/agents/api-tester.md +634 -0
- package/claude/agents/architecture-supervisor.md +1351 -0
- package/claude/agents/backend-developer.md +997 -0
- package/claude/agents/backend-validator.md +417 -0
- package/claude/agents/bdd-docs-writer.md +737 -0
- package/claude/agents/block-developer.md +677 -0
- package/claude/agents/code-reviewer.md +1432 -0
- package/claude/agents/db-developer.md +721 -0
- package/claude/agents/db-validator.md +407 -0
- package/claude/agents/demo-video-generator.md +493 -0
- package/claude/agents/documentation-writer.md +1268 -0
- package/claude/agents/frontend-developer.md +1234 -0
- package/claude/agents/frontend-validator.md +777 -0
- package/claude/agents/functional-validator.md +630 -0
- package/claude/agents/mock-analyst.md +387 -0
- package/claude/agents/product-manager.md +963 -0
- package/claude/agents/qa-automation.md +1762 -0
- package/claude/agents/release-manager.md +634 -0
- package/claude/agents/selectors-translator.md +262 -0
- package/claude/agents/unit-test-writer.md +785 -0
- package/claude/agents/visual-comparator.md +329 -0
- package/claude/agents/workflow-maintainer.md +352 -0
- package/claude/commands/do/README.md +88 -0
- package/claude/commands/do/create-api.md +64 -0
- package/claude/commands/do/create-entity.md +66 -0
- package/claude/commands/do/create-migration.md +64 -0
- package/claude/commands/do/create-plugin.md +56 -0
- package/claude/commands/do/create-theme.md +70 -0
- package/claude/commands/do/mock-data.md +67 -0
- package/claude/commands/do/reset-db.md +71 -0
- package/claude/commands/do/setup-scheduled-action.md +75 -0
- package/claude/commands/do/sync-code-review.md +117 -0
- package/claude/commands/do/update-selectors.md +112 -0
- package/claude/commands/do/use-skills.md +90 -0
- package/claude/commands/do/validate-blocks.md +69 -0
- package/claude/commands/how-to/README.md +261 -0
- package/claude/commands/how-to/add-metadata.md +692 -0
- package/claude/commands/how-to/add-taxonomies.md +806 -0
- package/claude/commands/how-to/add-translations.md +571 -0
- package/claude/commands/how-to/create-api.md +577 -0
- package/claude/commands/how-to/create-block.md +575 -0
- package/claude/commands/how-to/create-child-entities.md +771 -0
- package/claude/commands/how-to/create-entity.md +597 -0
- package/claude/commands/how-to/create-migrations.md +605 -0
- package/claude/commands/how-to/create-plugin.md +654 -0
- package/claude/commands/how-to/customize-app.md +481 -0
- package/claude/commands/how-to/customize-dashboard.md +553 -0
- package/claude/commands/how-to/customize-theme.md +438 -0
- package/claude/commands/how-to/define-features-flows.md +632 -0
- package/claude/commands/how-to/deploy.md +507 -0
- package/claude/commands/how-to/handle-file-uploads.md +746 -0
- package/claude/commands/how-to/implement-search.md +1001 -0
- package/claude/commands/how-to/install-plugins.md +352 -0
- package/claude/commands/how-to/manage-test-coverage.md +984 -0
- package/claude/commands/how-to/run-tests.md +400 -0
- package/claude/commands/how-to/set-app-languages.md +601 -0
- package/claude/commands/how-to/set-plans-and-permissions.md +575 -0
- package/claude/commands/how-to/set-scheduled-actions.md +527 -0
- package/claude/commands/how-to/set-user-roles-and-permissions.md +550 -0
- package/claude/commands/how-to/setup-authentication.md +388 -0
- package/claude/commands/how-to/setup-claude-code.md +440 -0
- package/claude/commands/how-to/setup-database.md +274 -0
- package/claude/commands/how-to/setup-email-providers.md +598 -0
- package/claude/commands/how-to/setup-mobile-dev.md +627 -0
- package/claude/commands/how-to/start.md +500 -0
- package/claude/commands/how-to/use-devtools.md +639 -0
- package/claude/commands/how-to/use-superadmin.md +622 -0
- package/claude/commands/session/README.md +193 -0
- package/claude/commands/session/block-create.md +190 -0
- package/claude/commands/session/block-list.md +203 -0
- package/claude/commands/session/block-update.md +192 -0
- package/claude/commands/session/block-validate.md +218 -0
- package/claude/commands/session/changelog.md +115 -0
- package/claude/commands/session/close.md +225 -0
- package/claude/commands/session/commit.md +174 -0
- package/claude/commands/session/db-entity.md +206 -0
- package/claude/commands/session/db-fix.md +212 -0
- package/claude/commands/session/db-sample.md +206 -0
- package/claude/commands/session/demo.md +178 -0
- package/claude/commands/session/doc-bdd.md +207 -0
- package/claude/commands/session/doc-feature.md +218 -0
- package/claude/commands/session/doc-read.md +225 -0
- package/claude/commands/session/execute.md +204 -0
- package/claude/commands/session/explain.md +202 -0
- package/claude/commands/session/fix-bug.md +210 -0
- package/claude/commands/session/fix-build.md +182 -0
- package/claude/commands/session/fix-test.md +189 -0
- package/claude/commands/session/pending.md +232 -0
- package/claude/commands/session/refine.md +188 -0
- package/claude/commands/session/resume.md +192 -0
- package/claude/commands/session/review.md +192 -0
- package/claude/commands/session/scope-change.md +181 -0
- package/claude/commands/session/start-blocks.md +347 -0
- package/claude/commands/session/start.md +604 -0
- package/claude/commands/session/status.md +169 -0
- package/claude/commands/session/test-fix.md +221 -0
- package/claude/commands/session/test-run.md +203 -0
- package/claude/commands/session/test-write.md +242 -0
- package/claude/commands/session/validate.md +162 -0
- package/claude/config/context.json +40 -0
- package/claude/config/github.json +69 -0
- package/claude/config/github.schema.json +106 -0
- package/claude/config/team.json +46 -0
- package/claude/config/team.schema.json +106 -0
- package/claude/config/workspace.json +43 -0
- package/claude/config/workspace.schema.json +75 -0
- package/claude/skills/README.md +228 -0
- package/claude/skills/accessibility/SKILL.md +573 -0
- package/claude/skills/api-bypass-layers/SKILL.md +550 -0
- package/claude/skills/asana-integration/SKILL.md +499 -0
- package/claude/skills/better-auth/SKILL.md +666 -0
- package/claude/skills/billing-subscriptions/SKILL.md +660 -0
- package/claude/skills/block-decision-matrix/SKILL.md +359 -0
- package/claude/skills/clickup-integration/SKILL.md +434 -0
- package/claude/skills/core-theme-responsibilities/SKILL.md +485 -0
- package/claude/skills/create-plugin/SKILL.md +425 -0
- package/claude/skills/create-theme/SKILL.md +331 -0
- package/claude/skills/cypress-api/SKILL.md +511 -0
- package/claude/skills/cypress-api/scripts/generate-api-controller.py +329 -0
- package/claude/skills/cypress-api/scripts/generate-api-test.py +930 -0
- package/claude/skills/cypress-e2e/SKILL.md +526 -0
- package/claude/skills/cypress-e2e/scripts/extract-selectors.py +383 -0
- package/claude/skills/cypress-e2e/scripts/generate-uat-test.py +788 -0
- package/claude/skills/cypress-selectors/SKILL.md +309 -0
- package/claude/skills/cypress-selectors/scripts/extract-missing.py +243 -0
- package/claude/skills/cypress-selectors/scripts/generate-block-selectors.py +283 -0
- package/claude/skills/cypress-selectors/scripts/validate-selectors.py +145 -0
- package/claude/skills/database-migrations/SKILL.md +335 -0
- package/claude/skills/database-migrations/scripts/generate-sample-data.py +284 -0
- package/claude/skills/database-migrations/scripts/validate-migration.py +323 -0
- package/claude/skills/design-system/SKILL.md +682 -0
- package/claude/skills/documentation/SKILL.md +540 -0
- package/claude/skills/entity-api/SKILL.md +482 -0
- package/claude/skills/entity-system/SKILL.md +635 -0
- package/claude/skills/entity-system/scripts/generate-child-migration.py +298 -0
- package/claude/skills/entity-system/scripts/generate-metas-migration.py +233 -0
- package/claude/skills/entity-system/scripts/generate-migration.py +382 -0
- package/claude/skills/entity-system/scripts/generate-sample-data.py +418 -0
- package/claude/skills/entity-system/scripts/scaffold-entity.py +661 -0
- package/claude/skills/github/SKILL.md +467 -0
- package/claude/skills/i18n-nextintl/SKILL.md +302 -0
- package/claude/skills/i18n-nextintl/scripts/add-translation.py +243 -0
- package/claude/skills/i18n-nextintl/scripts/extract-hardcoded.py +246 -0
- package/claude/skills/i18n-nextintl/scripts/validate-translations.py +260 -0
- package/claude/skills/impact-analysis/SKILL.md +203 -0
- package/claude/skills/jest-unit/SKILL.md +306 -0
- package/claude/skills/jest-unit/references/component-testing.md +371 -0
- package/claude/skills/jest-unit/references/mocking-patterns.md +380 -0
- package/claude/skills/jest-unit/references/service-hook-testing.md +454 -0
- package/claude/skills/jira-integration/SKILL.md +539 -0
- package/claude/skills/media-library/SKILL.md +743 -0
- package/claude/skills/mock-analysis/SKILL.md +276 -0
- package/claude/skills/monorepo-architecture/SKILL.md +162 -0
- package/claude/skills/nextjs-api-development/SKILL.md +364 -0
- package/claude/skills/nextjs-api-development/scripts/generate-crud-tests.py +456 -0
- package/claude/skills/nextjs-api-development/scripts/scaffold-endpoint.py +481 -0
- package/claude/skills/nextjs-api-development/scripts/validate-api.py +283 -0
- package/claude/skills/notion-integration/SKILL.md +641 -0
- package/claude/skills/npm-development-workflow/SKILL.md +480 -0
- package/claude/skills/page-builder-blocks/SKILL.md +530 -0
- package/claude/skills/page-builder-blocks/scripts/scaffold-block.py +444 -0
- package/claude/skills/permissions-system/SKILL.md +619 -0
- package/claude/skills/plugins/SKILL.md +340 -0
- package/claude/skills/plugins/references/plugin-templates.md +414 -0
- package/claude/skills/plugins/references/plugin-testing.md +353 -0
- package/claude/skills/plugins/references/plugin-types.md +198 -0
- package/claude/skills/plugins/scripts/scaffold-plugin.py +443 -0
- package/claude/skills/pom-patterns/SKILL.md +452 -0
- package/claude/skills/pom-patterns/scripts/generate-pom.py +392 -0
- package/claude/skills/rate-limiting/SKILL.md +342 -0
- package/claude/skills/react-best-practices/AGENTS.md +2410 -0
- package/claude/skills/react-best-practices/README.md +123 -0
- package/claude/skills/react-best-practices/SKILL.md +125 -0
- package/claude/skills/react-best-practices/metadata.json +15 -0
- package/claude/skills/react-best-practices/rules/_sections.md +46 -0
- package/claude/skills/react-best-practices/rules/_template.md +28 -0
- package/claude/skills/react-best-practices/rules/advanced-event-handler-refs.md +55 -0
- package/claude/skills/react-best-practices/rules/advanced-use-latest.md +49 -0
- package/claude/skills/react-best-practices/rules/async-api-routes.md +38 -0
- package/claude/skills/react-best-practices/rules/async-defer-await.md +80 -0
- package/claude/skills/react-best-practices/rules/async-dependencies.md +36 -0
- package/claude/skills/react-best-practices/rules/async-parallel.md +28 -0
- package/claude/skills/react-best-practices/rules/async-suspense-boundaries.md +99 -0
- package/claude/skills/react-best-practices/rules/bundle-barrel-imports.md +59 -0
- package/claude/skills/react-best-practices/rules/bundle-conditional.md +31 -0
- package/claude/skills/react-best-practices/rules/bundle-defer-third-party.md +49 -0
- package/claude/skills/react-best-practices/rules/bundle-dynamic-imports.md +35 -0
- package/claude/skills/react-best-practices/rules/bundle-preload.md +50 -0
- package/claude/skills/react-best-practices/rules/client-event-listeners.md +74 -0
- package/claude/skills/react-best-practices/rules/client-localstorage-schema.md +71 -0
- package/claude/skills/react-best-practices/rules/client-passive-event-listeners.md +48 -0
- package/claude/skills/react-best-practices/rules/client-swr-dedup.md +56 -0
- package/claude/skills/react-best-practices/rules/js-batch-dom-css.md +82 -0
- package/claude/skills/react-best-practices/rules/js-cache-function-results.md +80 -0
- package/claude/skills/react-best-practices/rules/js-cache-property-access.md +28 -0
- package/claude/skills/react-best-practices/rules/js-cache-storage.md +70 -0
- package/claude/skills/react-best-practices/rules/js-combine-iterations.md +32 -0
- package/claude/skills/react-best-practices/rules/js-early-exit.md +50 -0
- package/claude/skills/react-best-practices/rules/js-hoist-regexp.md +45 -0
- package/claude/skills/react-best-practices/rules/js-index-maps.md +37 -0
- package/claude/skills/react-best-practices/rules/js-length-check-first.md +49 -0
- package/claude/skills/react-best-practices/rules/js-min-max-loop.md +82 -0
- package/claude/skills/react-best-practices/rules/js-set-map-lookups.md +24 -0
- package/claude/skills/react-best-practices/rules/js-tosorted-immutable.md +57 -0
- package/claude/skills/react-best-practices/rules/rendering-activity.md +26 -0
- package/claude/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
- package/claude/skills/react-best-practices/rules/rendering-conditional-render.md +40 -0
- package/claude/skills/react-best-practices/rules/rendering-content-visibility.md +38 -0
- package/claude/skills/react-best-practices/rules/rendering-hoist-jsx.md +46 -0
- package/claude/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
- package/claude/skills/react-best-practices/rules/rendering-svg-precision.md +28 -0
- package/claude/skills/react-best-practices/rules/rerender-defer-reads.md +39 -0
- package/claude/skills/react-best-practices/rules/rerender-dependencies.md +45 -0
- package/claude/skills/react-best-practices/rules/rerender-derived-state.md +29 -0
- package/claude/skills/react-best-practices/rules/rerender-functional-setstate.md +74 -0
- package/claude/skills/react-best-practices/rules/rerender-lazy-state-init.md +58 -0
- package/claude/skills/react-best-practices/rules/rerender-memo.md +44 -0
- package/claude/skills/react-best-practices/rules/rerender-transitions.md +40 -0
- package/claude/skills/react-best-practices/rules/server-after-nonblocking.md +73 -0
- package/claude/skills/react-best-practices/rules/server-cache-lru.md +41 -0
- package/claude/skills/react-best-practices/rules/server-cache-react.md +76 -0
- package/claude/skills/react-best-practices/rules/server-parallel-fetching.md +83 -0
- package/claude/skills/react-best-practices/rules/server-serialization.md +38 -0
- package/claude/skills/react-patterns/SKILL.md +688 -0
- package/claude/skills/registry-system/SKILL.md +331 -0
- package/claude/skills/scheduled-actions/SKILL.md +671 -0
- package/claude/skills/scope-enforcement/SKILL.md +542 -0
- package/claude/skills/scope-enforcement/scripts/validate-scope.py +357 -0
- package/claude/skills/server-actions/SKILL.md +493 -0
- package/claude/skills/service-layer/SKILL.md +587 -0
- package/claude/skills/session-management/SKILL.md +266 -0
- package/claude/skills/session-management/scripts/create-session.py +166 -0
- package/claude/skills/session-management/scripts/iteration-close.sh +105 -0
- package/claude/skills/session-management/scripts/iteration-init.sh +180 -0
- package/claude/skills/session-management/scripts/session-archive.sh +87 -0
- package/claude/skills/session-management/scripts/session-close.sh +133 -0
- package/claude/skills/session-management/scripts/session-init.sh +225 -0
- package/claude/skills/session-management/scripts/session-list.sh +163 -0
- package/claude/skills/session-management/scripts/split-plan.sh +116 -0
- package/claude/skills/shadcn-components/SKILL.md +586 -0
- package/claude/skills/shadcn-theming/SKILL.md +446 -0
- package/claude/skills/suspense-loading/SKILL.md +280 -0
- package/claude/skills/tailwind-theming/SKILL.md +507 -0
- package/claude/skills/tanstack-query/SKILL.md +608 -0
- package/claude/skills/test-coverage/SKILL.md +239 -0
- package/claude/skills/web-design-guidelines/SKILL.md +39 -0
- package/claude/skills/zod-validation/SKILL.md +537 -0
- package/claude/templates/blocks/progress.md +86 -0
- package/claude/templates/iteration/changes.md +61 -0
- package/claude/templates/iteration/progress.md +55 -0
- package/claude/templates/log.md +31 -0
- package/claude/templates/story/context.md +77 -0
- package/claude/templates/story/pendings.md +37 -0
- package/claude/templates/story/plan.md +299 -0
- package/claude/templates/story/requirements.md +109 -0
- package/claude/templates/story/scope.json +10 -0
- package/claude/templates/story/tests.md +91 -0
- package/claude/templates/task/progress.md +58 -0
- package/claude/templates/task/requirements.md +54 -0
- package/claude/workflows/README.md +154 -0
- package/claude/workflows/blocks.md +614 -0
- package/claude/workflows/story.md +1207 -0
- package/claude/workflows/task.md +927 -0
- package/claude/workflows/tweak.md +527 -0
- package/cursor/.gitkeep +0 -0
- package/package.json +35 -0
- package/scripts/postinstall.mjs +198 -0
- package/scripts/setup.mjs +282 -0
- package/scripts/sync.mjs +209 -0
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
# /session:scope-change
|
|
2
|
+
|
|
3
|
+
Handle a scope change by creating a new iteration.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Syntax
|
|
8
|
+
|
|
9
|
+
```
|
|
10
|
+
/session:scope-change <reason> [description]
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Parameters
|
|
16
|
+
|
|
17
|
+
| Parameter | Description |
|
|
18
|
+
|-----------|-------------|
|
|
19
|
+
| `reason` | `scope-change` \| `blocked` \| `review-feedback` \| `continuation` |
|
|
20
|
+
| `description` | Brief description of the change (optional) |
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## When to Use
|
|
25
|
+
|
|
26
|
+
| Situation | Reason |
|
|
27
|
+
|-----------|--------|
|
|
28
|
+
| Scope changed (new ACs, fields, etc.) | `scope-change` |
|
|
29
|
+
| There's a blocker that requires replanning | `blocked` |
|
|
30
|
+
| Code review requires major changes | `review-feedback` |
|
|
31
|
+
| Resuming after a long pause | `continuation` |
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## Flow
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
39
|
+
│ /session:scope-change │
|
|
40
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
41
|
+
│ │
|
|
42
|
+
│ 1. Verify active session (must be story) │
|
|
43
|
+
│ ↓ │
|
|
44
|
+
│ 2. Document change │
|
|
45
|
+
│ - What changed? │
|
|
46
|
+
│ - Why? │
|
|
47
|
+
│ - How does it affect the plan? │
|
|
48
|
+
│ ↓ │
|
|
49
|
+
│ 3. Execute iteration-init.sh │
|
|
50
|
+
│ - Close current iteration │
|
|
51
|
+
│ - Create new iteration │
|
|
52
|
+
│ - Update symlinks │
|
|
53
|
+
│ ↓ │
|
|
54
|
+
│ 4. Create scope-change.md (if reason=scope-change) │
|
|
55
|
+
│ ↓ │
|
|
56
|
+
│ 5. Ask whether to update plan/requirements │
|
|
57
|
+
│ ↓ │
|
|
58
|
+
│ 6. Update task manager (if enabled) │
|
|
59
|
+
│ ↓ │
|
|
60
|
+
│ 7. Show next step │
|
|
61
|
+
│ │
|
|
62
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
## Usage Example
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
/session:scope-change scope-change "add variants field"
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Output:
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
🔄 SCOPE CHANGE
|
|
77
|
+
|
|
78
|
+
Session: stories/2026-01-11-new-products-entity
|
|
79
|
+
Current iteration: 01-initial (60% completed)
|
|
80
|
+
|
|
81
|
+
─────────────────────────────────────────
|
|
82
|
+
|
|
83
|
+
📝 DOCUMENTING CHANGE
|
|
84
|
+
|
|
85
|
+
What changed?
|
|
86
|
+
> Need to add "variants" field to products
|
|
87
|
+
|
|
88
|
+
Why?
|
|
89
|
+
> New client requirement for products with variants
|
|
90
|
+
|
|
91
|
+
How does it affect the plan?
|
|
92
|
+
> Requires updating migration, API and UI
|
|
93
|
+
|
|
94
|
+
─────────────────────────────────────────
|
|
95
|
+
|
|
96
|
+
Closing iteration 01-initial...
|
|
97
|
+
✓ Iteration closed
|
|
98
|
+
|
|
99
|
+
Creating iteration 02-scope-change-add-variants-field...
|
|
100
|
+
✓ Iteration created
|
|
101
|
+
|
|
102
|
+
─────────────────────────────────────────
|
|
103
|
+
|
|
104
|
+
📁 FILES CREATED
|
|
105
|
+
|
|
106
|
+
iterations/02-scope-change-add-variants-field/
|
|
107
|
+
├── scope-change.md (change documentation)
|
|
108
|
+
├── progress.md (new progress)
|
|
109
|
+
└── changes.md (new changes)
|
|
110
|
+
|
|
111
|
+
─────────────────────────────────────────
|
|
112
|
+
|
|
113
|
+
Update requirements.md with new ACs? [Yes/No]
|
|
114
|
+
Update plan.md? [Yes/No]
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## scope-change.md
|
|
120
|
+
|
|
121
|
+
File that documents the change:
|
|
122
|
+
|
|
123
|
+
```markdown
|
|
124
|
+
# Scope Change: 02-scope-change-add-variants-field
|
|
125
|
+
|
|
126
|
+
**Date:** 2026-01-14 15:30
|
|
127
|
+
**Previous Iteration:** 01-initial
|
|
128
|
+
**Reason:** scope-change
|
|
129
|
+
|
|
130
|
+
## What Changed
|
|
131
|
+
|
|
132
|
+
Need to add "variants" field to the products entity.
|
|
133
|
+
|
|
134
|
+
## Why
|
|
135
|
+
|
|
136
|
+
New client requirement for products with variants
|
|
137
|
+
(e.g., sizes, colors).
|
|
138
|
+
|
|
139
|
+
## Impact on Plan
|
|
140
|
+
|
|
141
|
+
### Affected phases:
|
|
142
|
+
- Phase 5: db-developer → New migration
|
|
143
|
+
- Phase 7: backend-developer → Update API
|
|
144
|
+
- Phase 11: frontend-developer → New UI for variants
|
|
145
|
+
|
|
146
|
+
### Additional estimate:
|
|
147
|
+
- Original T-Shirt: L
|
|
148
|
+
- Increment: +S
|
|
149
|
+
- New T-Shirt: L (high)
|
|
150
|
+
|
|
151
|
+
## Updated Acceptance Criteria
|
|
152
|
+
|
|
153
|
+
- AC5: [NEW] User can create product variants
|
|
154
|
+
- AC6: [NEW] Variants have unique SKU
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## Task Manager Integration
|
|
160
|
+
|
|
161
|
+
If `taskManager.enabled`:
|
|
162
|
+
|
|
163
|
+
```
|
|
164
|
+
📋 UPDATING TASK
|
|
165
|
+
|
|
166
|
+
ClickUp: #abc123
|
|
167
|
+
|
|
168
|
+
Posting scope change comment...
|
|
169
|
+
✓ Comment posted
|
|
170
|
+
|
|
171
|
+
Add new ACs as subtasks? [Yes/No]
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
---
|
|
175
|
+
|
|
176
|
+
## Related Commands
|
|
177
|
+
|
|
178
|
+
| Command | Action |
|
|
179
|
+
|---------|--------|
|
|
180
|
+
| `/session:status` | View status with iterations |
|
|
181
|
+
| `/session:execute` | Continue from new iteration |
|
|
@@ -0,0 +1,347 @@
|
|
|
1
|
+
# /session:start:blocks
|
|
2
|
+
|
|
3
|
+
Start a new BLOCKS workflow session for mock-driven block development.
|
|
4
|
+
|
|
5
|
+
**Aliases:** `/blocks`
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Required Skills
|
|
10
|
+
|
|
11
|
+
Before executing, read these skills for context:
|
|
12
|
+
- `.claude/skills/page-builder-blocks/SKILL.md` - Block file structure and patterns
|
|
13
|
+
- `.claude/skills/mock-analysis/SKILL.md` - Mock parsing patterns
|
|
14
|
+
- `.claude/skills/design-system/SKILL.md` - Token mapping
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## Syntax
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
/session:start:blocks [description]
|
|
22
|
+
/blocks [description]
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Behavior
|
|
28
|
+
|
|
29
|
+
The BLOCKS workflow is specifically designed for page builder block development from design mocks. It requires a mock and uses visual validation.
|
|
30
|
+
|
|
31
|
+
**Key differences from TASK/STORY:**
|
|
32
|
+
- Mock is **required** (not optional)
|
|
33
|
+
- Block-specific discovery (7 questions with block focus)
|
|
34
|
+
- No PM or Architecture phases
|
|
35
|
+
- Visual validation with retry loop
|
|
36
|
+
- 4 phases total
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## Flow
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
44
|
+
│ /session:start:blocks │
|
|
45
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
46
|
+
│ │
|
|
47
|
+
│ PHASE A: DISCOVERY (BLOCKS-specific, 7 questions) │
|
|
48
|
+
│ ───────────────────────────────────────────────── │
|
|
49
|
+
│ 1. Ask BLOCKS questions: │
|
|
50
|
+
│ ├── Task Manager? │
|
|
51
|
+
│ ├── Block type? (hero/features/cta/etc) │
|
|
52
|
+
│ ├── New block or variant? │
|
|
53
|
+
│ ├── Mock source? (Stitch/UXPilot/Figma/Other) │
|
|
54
|
+
│ ├── Specific requirements? (optional) │
|
|
55
|
+
│ ├── Testing? │
|
|
56
|
+
│ └── Documentation? │
|
|
57
|
+
│ ↓ │
|
|
58
|
+
│ PHASE B: SESSION CREATION │
|
|
59
|
+
│ ───────────────────────────── │
|
|
60
|
+
│ 2. Create session folder: │
|
|
61
|
+
│ └── blocks/YYYY-MM-DD-block-name/mocks/ │
|
|
62
|
+
│ ↓ │
|
|
63
|
+
│ PHASE C: MOCK UPLOAD PAUSE │
|
|
64
|
+
│ ────────────────────────────── │
|
|
65
|
+
│ 3. Display upload instructions │
|
|
66
|
+
│ 4. Wait for user confirmation ("ready") │
|
|
67
|
+
│ 5. Validate mock files exist │
|
|
68
|
+
│ ↓ │
|
|
69
|
+
│ PHASE D: EXECUTION │
|
|
70
|
+
│ ────────────────────── │
|
|
71
|
+
│ 6. Phase 1: mock-analyst → analysis.json, ds-mapping.json │
|
|
72
|
+
│ 7. Phase 2: block-developer → block files │
|
|
73
|
+
│ 8. Phase 3: visual-comparator → PASS/WARNING/FAIL │
|
|
74
|
+
│ └── If FAIL: retry loop (max 3) │
|
|
75
|
+
│ ↓ │
|
|
76
|
+
│ DONE: Ready for commit │
|
|
77
|
+
│ │
|
|
78
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## Discovery Questions
|
|
84
|
+
|
|
85
|
+
BLOCKS workflow asks 7 questions (consistent with TASK/STORY):
|
|
86
|
+
|
|
87
|
+
```
|
|
88
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
89
|
+
│ BLOCKS DISCOVERY (7 questions) │
|
|
90
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
91
|
+
│ │
|
|
92
|
+
│ 1. TASK MANAGER │
|
|
93
|
+
│ Is there an existing task in a project management system? │
|
|
94
|
+
│ [1] No │
|
|
95
|
+
│ [2] Yes, ClickUp │
|
|
96
|
+
│ [3] Yes, Jira │
|
|
97
|
+
│ [4] Yes, Linear │
|
|
98
|
+
│ [5] Yes, Asana │
|
|
99
|
+
│ │
|
|
100
|
+
│ 2. BLOCK TYPE │
|
|
101
|
+
│ What type of block is this? │
|
|
102
|
+
│ [1] Hero / Banner │
|
|
103
|
+
│ [2] Features / Grid │
|
|
104
|
+
│ [3] CTA / Call to Action │
|
|
105
|
+
│ [4] Testimonials / Reviews │
|
|
106
|
+
│ [5] Pricing / Plans │
|
|
107
|
+
│ [6] FAQ / Accordion │
|
|
108
|
+
│ [7] Footer / Header │
|
|
109
|
+
│ [8] Other (describe) │
|
|
110
|
+
│ │
|
|
111
|
+
│ 3. BLOCK DECISION │
|
|
112
|
+
│ Is this a new block or modification? │
|
|
113
|
+
│ [1] New block (create from scratch) │
|
|
114
|
+
│ [2] Variant of existing block (specify which) │
|
|
115
|
+
│ [3] Modification to existing block (specify which) │
|
|
116
|
+
│ │
|
|
117
|
+
│ 4. MOCK SOURCE │
|
|
118
|
+
│ Where was the mock created? │
|
|
119
|
+
│ [1] Stitch │
|
|
120
|
+
│ [2] UXPilot │
|
|
121
|
+
│ [3] Figma │
|
|
122
|
+
│ [4] Other │
|
|
123
|
+
│ │
|
|
124
|
+
│ 5. SPECIFIC REQUIREMENTS (optional) │
|
|
125
|
+
│ Any specific requirements? │
|
|
126
|
+
│ - Animation requirements │
|
|
127
|
+
│ - Responsive behavior │
|
|
128
|
+
│ - Accessibility needs │
|
|
129
|
+
│ - Other considerations │
|
|
130
|
+
│ │
|
|
131
|
+
│ 6. TESTING │
|
|
132
|
+
│ What testing is needed? │
|
|
133
|
+
│ [1] Visual validation only │
|
|
134
|
+
│ [2] Visual + Cypress component test │
|
|
135
|
+
│ [3] Visual + Unit tests │
|
|
136
|
+
│ │
|
|
137
|
+
│ 7. DOCUMENTATION │
|
|
138
|
+
│ What documentation is needed? │
|
|
139
|
+
│ [1] None │
|
|
140
|
+
│ [2] Update block catalog │
|
|
141
|
+
│ [3] Create usage guide │
|
|
142
|
+
│ │
|
|
143
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
## Mock Upload Pause
|
|
149
|
+
|
|
150
|
+
After creating the session folder, Claude pauses with this message:
|
|
151
|
+
|
|
152
|
+
```
|
|
153
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
154
|
+
│ MOCK UPLOAD REQUIRED │
|
|
155
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
156
|
+
│ │
|
|
157
|
+
│ Session created at: │
|
|
158
|
+
│ .claude/sessions/blocks/YYYY-MM-DD-block-name/ │
|
|
159
|
+
│ │
|
|
160
|
+
│ Please upload your mock files to: │
|
|
161
|
+
│ .claude/sessions/blocks/YYYY-MM-DD-block-name/mocks/ │
|
|
162
|
+
│ │
|
|
163
|
+
│ Expected files (auto-detected): │
|
|
164
|
+
│ ├── HTML: code.html, index.html, or any *.html │
|
|
165
|
+
│ ├── Screenshot: screen.png, or any *.png, *.jpg │
|
|
166
|
+
│ └── Optional: assets/, tailwind.config.js │
|
|
167
|
+
│ │
|
|
168
|
+
│ Reply "ready" when files are uploaded. │
|
|
169
|
+
│ │
|
|
170
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
### Mock Validation
|
|
174
|
+
|
|
175
|
+
When user responds "ready":
|
|
176
|
+
|
|
177
|
+
```
|
|
178
|
+
Validation:
|
|
179
|
+
├── [REQUIRED] At least one image file (*.png, *.jpg)
|
|
180
|
+
├── [RECOMMENDED] At least one HTML file (*.html)
|
|
181
|
+
└── [OPTIONAL] Tailwind config, assets folder
|
|
182
|
+
|
|
183
|
+
If validation fails:
|
|
184
|
+
├── No image: ERROR - Cannot proceed
|
|
185
|
+
├── No HTML: WARNING - Limited analysis, continue
|
|
186
|
+
└── Empty folder: ERROR - Ask user to upload
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
## Example Usage
|
|
192
|
+
|
|
193
|
+
### Example 1: New Hero Block from Stitch
|
|
194
|
+
|
|
195
|
+
```
|
|
196
|
+
User: /session:start:blocks Hero block with terminal animation
|
|
197
|
+
|
|
198
|
+
Claude asks:
|
|
199
|
+
├── Task Manager? → ClickUp (abc123)
|
|
200
|
+
├── Block type? → Hero / Banner
|
|
201
|
+
├── Block decision? → New block
|
|
202
|
+
├── Mock source? → Stitch
|
|
203
|
+
├── Requirements? → Terminal animation, dark theme
|
|
204
|
+
├── Testing? → Visual validation only
|
|
205
|
+
└── Documentation? → Update block catalog
|
|
206
|
+
|
|
207
|
+
Claude creates:
|
|
208
|
+
└── blocks/2026-01-12-hero-terminal/mocks/
|
|
209
|
+
|
|
210
|
+
Claude displays:
|
|
211
|
+
"Upload your mock to blocks/2026-01-12-hero-terminal/mocks/"
|
|
212
|
+
"Reply 'ready' when done."
|
|
213
|
+
|
|
214
|
+
User: ready
|
|
215
|
+
|
|
216
|
+
Claude validates mocks/ → files found
|
|
217
|
+
|
|
218
|
+
Claude executes:
|
|
219
|
+
├── Phase 1: mock-analyst analyzes
|
|
220
|
+
├── Phase 2: block-developer creates hero-terminal block
|
|
221
|
+
├── Phase 3: visual-comparator validates
|
|
222
|
+
│ └── Attempt 1: PASS
|
|
223
|
+
└── DONE: Block ready for commit
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
### Example 2: Pricing Block Variant
|
|
227
|
+
|
|
228
|
+
```
|
|
229
|
+
User: /blocks Pricing table variant with toggle
|
|
230
|
+
|
|
231
|
+
Claude asks:
|
|
232
|
+
├── Task Manager? → No
|
|
233
|
+
├── Block type? → Pricing / Plans
|
|
234
|
+
├── Block decision? → Variant of existing (pricing)
|
|
235
|
+
├── Mock source? → Figma
|
|
236
|
+
├── Requirements? → Monthly/yearly toggle
|
|
237
|
+
├── Testing? → Visual + Cypress component test
|
|
238
|
+
└── Documentation? → None
|
|
239
|
+
|
|
240
|
+
Claude creates folder, waits for upload...
|
|
241
|
+
|
|
242
|
+
User: ready
|
|
243
|
+
|
|
244
|
+
Claude executes:
|
|
245
|
+
├── Phase 1: mock-analyst identifies differences from existing
|
|
246
|
+
├── Phase 2: block-developer creates pricing-toggle variant
|
|
247
|
+
├── Phase 3: visual-comparator validates
|
|
248
|
+
│ ├── Attempt 1: FAIL (toggle not aligned)
|
|
249
|
+
│ ├── Phase 2 fix: adjust toggle positioning
|
|
250
|
+
│ ├── Attempt 2: WARNING (minor color difference)
|
|
251
|
+
│ └── User: accept
|
|
252
|
+
└── DONE: Variant ready for commit
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
---
|
|
256
|
+
|
|
257
|
+
## Session Files Created
|
|
258
|
+
|
|
259
|
+
```
|
|
260
|
+
.claude/sessions/blocks/YYYY-MM-DD-block-name/
|
|
261
|
+
├── mocks/ # User uploads here
|
|
262
|
+
│ ├── code.html
|
|
263
|
+
│ ├── screen.png
|
|
264
|
+
│ └── assets/
|
|
265
|
+
├── analysis.json # From mock-analyst
|
|
266
|
+
├── ds-mapping.json # From mock-analyst
|
|
267
|
+
├── block-plan.json # Block decision
|
|
268
|
+
└── progress.md # Status tracking
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
---
|
|
272
|
+
|
|
273
|
+
## Escalation
|
|
274
|
+
|
|
275
|
+
If during discovery Claude determines BLOCKS is not appropriate:
|
|
276
|
+
|
|
277
|
+
```
|
|
278
|
+
Escalation triggers:
|
|
279
|
+
├── Multiple blocks needed → "Consider STORY workflow for full page"
|
|
280
|
+
├── API integration required → "Consider TASK workflow"
|
|
281
|
+
├── Database changes needed → "Consider STORY workflow"
|
|
282
|
+
└── No mock available → "BLOCKS requires mock. Use TASK instead?"
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
---
|
|
286
|
+
|
|
287
|
+
## Error Handling
|
|
288
|
+
|
|
289
|
+
### No Mock Uploaded
|
|
290
|
+
|
|
291
|
+
```
|
|
292
|
+
If user says "ready" but mocks/ is empty:
|
|
293
|
+
|
|
294
|
+
"No files found in mocks/ folder.
|
|
295
|
+
Please upload at least:
|
|
296
|
+
- A screenshot (*.png or *.jpg)
|
|
297
|
+
- Optionally, the HTML export (*.html)
|
|
298
|
+
|
|
299
|
+
Reply 'ready' when files are uploaded."
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
### Visual Validation Fails 3 Times
|
|
303
|
+
|
|
304
|
+
```
|
|
305
|
+
After 3 failed attempts:
|
|
306
|
+
|
|
307
|
+
"Visual validation failed after 3 attempts.
|
|
308
|
+
|
|
309
|
+
Issues found:
|
|
310
|
+
1. [Specific issue 1]
|
|
311
|
+
2. [Specific issue 2]
|
|
312
|
+
|
|
313
|
+
Options:
|
|
314
|
+
[1] Accept current implementation
|
|
315
|
+
[2] Continue with manual adjustments
|
|
316
|
+
[3] Escalate to TASK workflow for more complex handling"
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
---
|
|
320
|
+
|
|
321
|
+
## Related Commands
|
|
322
|
+
|
|
323
|
+
| Command | Purpose |
|
|
324
|
+
|---------|---------|
|
|
325
|
+
| `/session:start` | Auto-detect workflow |
|
|
326
|
+
| `/session:start:task` | Start TASK workflow |
|
|
327
|
+
| `/session:start:story` | Start STORY workflow |
|
|
328
|
+
| `/session:status` | Check progress |
|
|
329
|
+
| `/session:commit` | Prepare commit |
|
|
330
|
+
|
|
331
|
+
---
|
|
332
|
+
|
|
333
|
+
## Related Documentation
|
|
334
|
+
|
|
335
|
+
- `workflows/blocks.md` - Full BLOCKS workflow documentation
|
|
336
|
+
- `skills/page-builder-blocks/SKILL.md` - Block patterns
|
|
337
|
+
- `skills/mock-analysis/SKILL.md` - Mock parsing
|
|
338
|
+
- `skills/design-system/SKILL.md` - Token mapping
|
|
339
|
+
|
|
340
|
+
---
|
|
341
|
+
|
|
342
|
+
## Version History
|
|
343
|
+
|
|
344
|
+
| Version | Changes |
|
|
345
|
+
|---------|---------|
|
|
346
|
+
| v1.0 | Initial version - BLOCKS workflow command |
|
|
347
|
+
| v1.1 | Expanded to 7 questions (added Task Manager, Testing, Documentation) |
|