@fredcallagan/arn-spark 5.1.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/plugin.json +9 -0
- package/.opencode/plugins/arn-spark.js +272 -0
- package/package.json +17 -0
- package/plugins/arn-spark/.claude-plugin/plugin.json +9 -0
- package/plugins/arn-spark/LICENSE +21 -0
- package/plugins/arn-spark/README.md +25 -0
- package/plugins/arn-spark/agents/arn-spark-brand-strategist.md +299 -0
- package/plugins/arn-spark/agents/arn-spark-dev-env-builder.md +228 -0
- package/plugins/arn-spark/agents/arn-spark-doctor.md +92 -0
- package/plugins/arn-spark/agents/arn-spark-forensic-investigator.md +181 -0
- package/plugins/arn-spark/agents/arn-spark-market-researcher.md +232 -0
- package/plugins/arn-spark/agents/arn-spark-marketing-pm.md +225 -0
- package/plugins/arn-spark/agents/arn-spark-persona-architect.md +259 -0
- package/plugins/arn-spark/agents/arn-spark-persona-impersonator.md +183 -0
- package/plugins/arn-spark/agents/arn-spark-product-strategist.md +191 -0
- package/plugins/arn-spark/agents/arn-spark-prototype-builder.md +497 -0
- package/plugins/arn-spark/agents/arn-spark-scaffolder.md +228 -0
- package/plugins/arn-spark/agents/arn-spark-spike-runner.md +209 -0
- package/plugins/arn-spark/agents/arn-spark-style-capture.md +196 -0
- package/plugins/arn-spark/agents/arn-spark-tech-evaluator.md +229 -0
- package/plugins/arn-spark/agents/arn-spark-ui-interactor.md +235 -0
- package/plugins/arn-spark/agents/arn-spark-use-case-writer.md +280 -0
- package/plugins/arn-spark/agents/arn-spark-ux-judge.md +215 -0
- package/plugins/arn-spark/agents/arn-spark-ux-specialist.md +200 -0
- package/plugins/arn-spark/agents/arn-spark-visual-sketcher.md +285 -0
- package/plugins/arn-spark/agents/arn-spark-visual-test-engineer.md +224 -0
- package/plugins/arn-spark/references/copilot-tools.md +62 -0
- package/plugins/arn-spark/skills/arn-brainstorming/SKILL.md +520 -0
- package/plugins/arn-spark/skills/arn-brainstorming/references/add-feature-flow.md +155 -0
- package/plugins/arn-spark/skills/arn-spark-arch-vision/SKILL.md +226 -0
- package/plugins/arn-spark/skills/arn-spark-arch-vision/references/architecture-vision-template.md +153 -0
- package/plugins/arn-spark/skills/arn-spark-arch-vision/references/technology-evaluation-guide.md +86 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype/SKILL.md +471 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype/references/clickable-prototype-criteria.md +65 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype/references/journey-template.md +62 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype/references/review-report-template.md +75 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype/references/showcase-capture-guide.md +213 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype-teams/SKILL.md +642 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype-teams/references/debate-protocol.md +242 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype-teams/references/debate-review-report-template.md +161 -0
- package/plugins/arn-spark/skills/arn-spark-clickable-prototype-teams/references/expert-interaction-review-template.md +152 -0
- package/plugins/arn-spark/skills/arn-spark-concept-review/SKILL.md +350 -0
- package/plugins/arn-spark/skills/arn-spark-concept-review/references/conflict-resolution-protocol.md +145 -0
- package/plugins/arn-spark/skills/arn-spark-concept-review/references/review-report-template.md +185 -0
- package/plugins/arn-spark/skills/arn-spark-dev-setup/SKILL.md +366 -0
- package/plugins/arn-spark/skills/arn-spark-dev-setup/references/dev-setup-checklist.md +84 -0
- package/plugins/arn-spark/skills/arn-spark-dev-setup/references/dev-setup-template.md +205 -0
- package/plugins/arn-spark/skills/arn-spark-discover/SKILL.md +303 -0
- package/plugins/arn-spark/skills/arn-spark-discover/references/competitive-landscape-template.md +87 -0
- package/plugins/arn-spark/skills/arn-spark-discover/references/discovery-questions.md +120 -0
- package/plugins/arn-spark/skills/arn-spark-discover/references/persona-profile-template.md +97 -0
- package/plugins/arn-spark/skills/arn-spark-discover/references/product-concept-template.md +253 -0
- package/plugins/arn-spark/skills/arn-spark-ensure-config/SKILL.md +23 -0
- package/plugins/arn-spark/skills/arn-spark-ensure-config/references/ensure-config.md +388 -0
- package/plugins/arn-spark/skills/arn-spark-ensure-config/references/step-0-fast-path.md +25 -0
- package/plugins/arn-spark/skills/arn-spark-ensure-config/scripts/cache-check.sh +127 -0
- package/plugins/arn-spark/skills/arn-spark-feature-extract/SKILL.md +483 -0
- package/plugins/arn-spark/skills/arn-spark-feature-extract/references/feature-backlog-template.md +176 -0
- package/plugins/arn-spark/skills/arn-spark-feature-extract/references/feature-entry-template.md +209 -0
- package/plugins/arn-spark/skills/arn-spark-help/SKILL.md +149 -0
- package/plugins/arn-spark/skills/arn-spark-help/references/pipeline-map.md +211 -0
- package/plugins/arn-spark/skills/arn-spark-init/SKILL.md +312 -0
- package/plugins/arn-spark/skills/arn-spark-init/references/agent-models-presets/all-opus.md +23 -0
- package/plugins/arn-spark/skills/arn-spark-init/references/agent-models-presets/balanced.md +23 -0
- package/plugins/arn-spark/skills/arn-spark-init/references/bkt-setup.md +55 -0
- package/plugins/arn-spark/skills/arn-spark-init/references/jira-mcp-setup.md +61 -0
- package/plugins/arn-spark/skills/arn-spark-init/references/platform-labels.md +97 -0
- package/plugins/arn-spark/skills/arn-spark-naming/SKILL.md +275 -0
- package/plugins/arn-spark/skills/arn-spark-naming/references/creative-brief-template.md +146 -0
- package/plugins/arn-spark/skills/arn-spark-naming/references/naming-methodology.md +237 -0
- package/plugins/arn-spark/skills/arn-spark-naming/references/naming-report-template.md +122 -0
- package/plugins/arn-spark/skills/arn-spark-naming/references/trademark-databases.md +88 -0
- package/plugins/arn-spark/skills/arn-spark-naming/references/whois-server-map.md +164 -0
- package/plugins/arn-spark/skills/arn-spark-naming/scripts/whois-check.js +502 -0
- package/plugins/arn-spark/skills/arn-spark-naming/scripts/whois-check.py +533 -0
- package/plugins/arn-spark/skills/arn-spark-prototype-lock/SKILL.md +260 -0
- package/plugins/arn-spark/skills/arn-spark-prototype-lock/references/lock-report-template.md +68 -0
- package/plugins/arn-spark/skills/arn-spark-prototype-lock/references/pretooluse-hook-template.json +35 -0
- package/plugins/arn-spark/skills/arn-spark-prototype-lock/references/prototype-guardrail-rules.md +38 -0
- package/plugins/arn-spark/skills/arn-spark-report/SKILL.md +144 -0
- package/plugins/arn-spark/skills/arn-spark-report/references/issue-template.md +81 -0
- package/plugins/arn-spark/skills/arn-spark-report/references/spark-knowledge-base.md +293 -0
- package/plugins/arn-spark/skills/arn-spark-scaffold/SKILL.md +239 -0
- package/plugins/arn-spark/skills/arn-spark-scaffold/references/scaffold-checklist.md +79 -0
- package/plugins/arn-spark/skills/arn-spark-scaffold/references/scaffold-summary-template.md +74 -0
- package/plugins/arn-spark/skills/arn-spark-spike/SKILL.md +209 -0
- package/plugins/arn-spark/skills/arn-spark-spike/references/spike-report-template.md +123 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype/SKILL.md +362 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype/references/review-report-template.md +65 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype/references/showcase-capture-guide.md +153 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype/references/static-prototype-criteria.md +54 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype-teams/SKILL.md +518 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype-teams/references/debate-protocol.md +230 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype-teams/references/debate-review-report-template.md +148 -0
- package/plugins/arn-spark/skills/arn-spark-static-prototype-teams/references/expert-visual-review-template.md +130 -0
- package/plugins/arn-spark/skills/arn-spark-stress-competitive/SKILL.md +166 -0
- package/plugins/arn-spark/skills/arn-spark-stress-competitive/references/competitive-report-template.md +139 -0
- package/plugins/arn-spark/skills/arn-spark-stress-competitive/references/gap-analysis-framework.md +111 -0
- package/plugins/arn-spark/skills/arn-spark-stress-interview/SKILL.md +257 -0
- package/plugins/arn-spark/skills/arn-spark-stress-interview/references/interview-protocol.md +140 -0
- package/plugins/arn-spark/skills/arn-spark-stress-interview/references/interview-report-template.md +165 -0
- package/plugins/arn-spark/skills/arn-spark-stress-interview/references/persona-casting-spec.md +138 -0
- package/plugins/arn-spark/skills/arn-spark-stress-premortem/SKILL.md +181 -0
- package/plugins/arn-spark/skills/arn-spark-stress-premortem/references/premortem-protocol.md +112 -0
- package/plugins/arn-spark/skills/arn-spark-stress-premortem/references/premortem-report-template.md +158 -0
- package/plugins/arn-spark/skills/arn-spark-stress-prfaq/SKILL.md +206 -0
- package/plugins/arn-spark/skills/arn-spark-stress-prfaq/references/prfaq-report-template.md +139 -0
- package/plugins/arn-spark/skills/arn-spark-stress-prfaq/references/prfaq-workflow.md +118 -0
- package/plugins/arn-spark/skills/arn-spark-style-explore/SKILL.md +281 -0
- package/plugins/arn-spark/skills/arn-spark-style-explore/references/style-brief-template.md +198 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases/SKILL.md +359 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases/references/expert-review-template.md +94 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases/references/review-protocol.md +150 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases/references/use-case-index-template.md +108 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases/references/use-case-template.md +125 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases-teams/SKILL.md +306 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases-teams/references/debate-protocol.md +272 -0
- package/plugins/arn-spark/skills/arn-spark-use-cases-teams/references/review-report-template.md +112 -0
- package/plugins/arn-spark/skills/arn-spark-visual-readiness/SKILL.md +293 -0
- package/plugins/arn-spark/skills/arn-spark-visual-readiness/references/readiness-checklist.md +196 -0
- package/plugins/arn-spark/skills/arn-spark-visual-sketch/SKILL.md +376 -0
- package/plugins/arn-spark/skills/arn-spark-visual-sketch/references/aesthetic-philosophy.md +210 -0
- package/plugins/arn-spark/skills/arn-spark-visual-sketch/references/sketch-gallery-guide.md +282 -0
- package/plugins/arn-spark/skills/arn-spark-visual-sketch/references/visual-direction-template.md +174 -0
- package/plugins/arn-spark/skills/arn-spark-visual-strategy/SKILL.md +447 -0
- package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/baseline-capture-script-template.js +89 -0
- package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/journey-schema.md +375 -0
- package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/spike-checklist.md +122 -0
- package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/strategy-layers-guide.md +132 -0
- package/plugins/arn-spark/skills/arn-spark-visual-strategy/references/visual-strategy-template.md +141 -0
package/plugins/arn-spark/skills/arn-spark-feature-extract/references/feature-backlog-template.md
ADDED
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
# Feature Backlog Index Template
|
|
2
|
+
|
|
3
|
+
This template defines the structure for the feature backlog index document written by the `arn-spark-feature-extract` skill. The index is saved to `features/feature-backlog.md` under the project's Vision directory. Individual feature entries are saved as separate files (`F-NNN-kebab-name.md`) in the same `features/` directory.
|
|
4
|
+
|
|
5
|
+
The index is a lightweight navigation and tracking document. It contains the Feature Tracker table (local source of truth for dependency resolution and status tracking), a Feature Index with links to individual feature files, journey mappings, and implementation ordering. The detailed feature content lives in the individual files.
|
|
6
|
+
|
|
7
|
+
## Instructions for arn-spark-feature-extract
|
|
8
|
+
|
|
9
|
+
When populating this template:
|
|
10
|
+
|
|
11
|
+
- Generate the Feature Tracker table after finalizing all features -- it is the local source of truth for dependency resolution and issue tracking
|
|
12
|
+
- The Feature Index table provides one row per feature with a relative link to the individual feature file
|
|
13
|
+
- Group features by functional area in the Feature Index (matching the functional area grouping in individual files)
|
|
14
|
+
- Include the journey-to-feature mapping table to ensure complete coverage
|
|
15
|
+
- The Issue Body Template at the bottom defines the format for uploading features to GitHub/Jira
|
|
16
|
+
- Individual feature files are written using the feature entry template (`feature-entry-template.md`) -- see that template for field-level guidance
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Template
|
|
21
|
+
|
|
22
|
+
```markdown
|
|
23
|
+
# [Product Name] - Feature Backlog
|
|
24
|
+
|
|
25
|
+
Generated by `/arn-spark-feature-extract` on [date].
|
|
26
|
+
|
|
27
|
+
## Summary
|
|
28
|
+
|
|
29
|
+
| Priority | Count |
|
|
30
|
+
|----------|-------|
|
|
31
|
+
| Must-have | [N] |
|
|
32
|
+
| Should-have | [N] |
|
|
33
|
+
| Nice-to-have | [N] |
|
|
34
|
+
| **Total** | **[N]** |
|
|
35
|
+
|
|
36
|
+
**Journey coverage:** [N] of [M] user journeys fully mapped to features.
|
|
37
|
+
**Feature files:** [N] individual feature files in this directory.
|
|
38
|
+
|
|
39
|
+
## Feature Tracker
|
|
40
|
+
|
|
41
|
+
[Local source of truth for dependency resolution and issue tracking. This table enables `/arn-code-pick-issue` to find unblocked features without network calls, and `/arn-code-ship` to update status after PRs are created.]
|
|
42
|
+
|
|
43
|
+
| ID | Feature | Priority | Deps | Phase | Issue | Status |
|
|
44
|
+
|----|---------|----------|------|-------|-------|--------|
|
|
45
|
+
| F-001 | [Feature Name] | Must-have | None | Foundation | -- | pending |
|
|
46
|
+
| F-002 | [Feature Name] | Must-have | F-001 | Foundation | -- | pending |
|
|
47
|
+
| F-003 | [Feature Name] | Should-have | F-001, F-002 | Core | -- | pending |
|
|
48
|
+
| ... | ... | ... | ... | ... | ... | ... |
|
|
49
|
+
|
|
50
|
+
**Column definitions:**
|
|
51
|
+
- **ID:** Feature identifier (F-NNN), matches the individual feature file
|
|
52
|
+
- **Priority:** Must-have / Should-have / Nice-to-have
|
|
53
|
+
- **Deps:** Comma-separated feature IDs that must be `done` before this feature can start, or `None`
|
|
54
|
+
- **Phase:** Implementation phase from the Implementation Order Suggestion: Foundation, Core, Enhancement, or Polish
|
|
55
|
+
- **Issue:** Issue tracker reference: GitHub issue number (`#42`), Jira key (`PROJ-42`), or `--` if not uploaded
|
|
56
|
+
- **Status:** `pending` (not started), `in-progress` (being worked on), `done` (shipped), `decomposed` (XL feature split into sub-features by `arn-code-feature-spec` -- not directly pickable; parent is marked `done` when all sub-features are `done`)
|
|
57
|
+
|
|
58
|
+
**Sub-feature rows (added by `arn-code-feature-spec` when decomposing XL features):**
|
|
59
|
+
|
|
60
|
+
When `arn-code-feature-spec` decomposes an XL feature, it adds sub-feature rows to the Feature Tracker and sets the parent's status to `decomposed`. Sub-features use dot notation (`F-NNN.N`):
|
|
61
|
+
|
|
62
|
+
| ID | Feature | Priority | Deps | Phase | Issue | Status |
|
|
63
|
+
|----|---------|----------|------|-------|-------|--------|
|
|
64
|
+
| F-005 | Ambient Portal Communication | Must-have | F-001, F-002 | Core | #42 | decomposed |
|
|
65
|
+
| F-005.1 | Audio Pipeline | Must-have | F-001 | Core | #43 | pending |
|
|
66
|
+
| F-005.2 | Signaling | Must-have | F-002 | Core | #44 | pending |
|
|
67
|
+
| F-005.3 | Portal UI Integration | Must-have | F-005.1, F-005.2 | Core | #45 | pending |
|
|
68
|
+
|
|
69
|
+
- Sub-feature IDs use the parent's ID with a dot suffix: `F-NNN.N`
|
|
70
|
+
- Sub-feature priority inherits from the parent unless overridden during spec
|
|
71
|
+
- Sub-feature deps can reference sibling sub-features (for ordering) or external features
|
|
72
|
+
- The parent row's status is `decomposed` and its Issue column keeps the original parent issue reference
|
|
73
|
+
- `/arn-code-pick-issue` skips `decomposed` rows and shows sub-features as pickable items
|
|
74
|
+
- `/arn-code-ship` marks individual sub-features as `done`; when ALL sub-features of a parent are `done`, the parent is also marked `done`
|
|
75
|
+
|
|
76
|
+
## Feature Index
|
|
77
|
+
|
|
78
|
+
### [Functional Area 1]
|
|
79
|
+
|
|
80
|
+
| ID | Feature | Priority | Complexity | File |
|
|
81
|
+
|----|---------|----------|------------|------|
|
|
82
|
+
| F-001 | [Feature Name] | Must-have | M | [F-001-feature-name.md](./F-001-feature-name.md) |
|
|
83
|
+
| F-002 | [Feature Name] | Must-have | L | [F-002-feature-name.md](./F-002-feature-name.md) |
|
|
84
|
+
|
|
85
|
+
### [Functional Area 2]
|
|
86
|
+
|
|
87
|
+
| ID | Feature | Priority | Complexity | File |
|
|
88
|
+
|----|---------|----------|------------|------|
|
|
89
|
+
| F-003 | [Feature Name] | Should-have | M | [F-003-feature-name.md](./F-003-feature-name.md) |
|
|
90
|
+
| ... | ... | ... | ... | ... |
|
|
91
|
+
|
|
92
|
+
[Repeat for each functional area. For decomposed XL features, list the parent in its functional area, then sub-features grouped below:]
|
|
93
|
+
|
|
94
|
+
| ID | Feature | Priority | Complexity | File |
|
|
95
|
+
|----|---------|----------|------------|------|
|
|
96
|
+
| F-005 | Ambient Portal Communication | Must-have | XL | [F-005-ambient-portal.md](./F-005-ambient-portal.md) |
|
|
97
|
+
| F-005.1 | -- Audio Pipeline | Must-have | M | (spec: `FEATURE_F-005.1_audio-pipeline.md`) |
|
|
98
|
+
| F-005.2 | -- Signaling | Must-have | M | (spec: `FEATURE_F-005.2_signaling.md`) |
|
|
99
|
+
| F-005.3 | -- Portal UI Integration | Must-have | L | (spec: `FEATURE_F-005.3_portal-ui.md`) |
|
|
100
|
+
|
|
101
|
+
## Journey-to-Feature Mapping
|
|
102
|
+
|
|
103
|
+
[Maps each user journey to the features that implement it. Ensures no journey is left without implementing features and no feature is orphaned from a journey.]
|
|
104
|
+
|
|
105
|
+
| Journey | Steps | Features |
|
|
106
|
+
|---------|-------|----------|
|
|
107
|
+
| [Journey name] | [total steps] | F-001, F-003, F-007 |
|
|
108
|
+
| [Journey name] | [total steps] | F-002, F-004 |
|
|
109
|
+
| ... | ... | ... |
|
|
110
|
+
|
|
111
|
+
**Unmapped journeys:** [Any journeys not fully covered by features -- these represent gaps]
|
|
112
|
+
**Orphaned features:** [Any features not referenced by any journey -- these may be infrastructure or may indicate missing journeys]
|
|
113
|
+
|
|
114
|
+
## Implementation Order Suggestion
|
|
115
|
+
|
|
116
|
+
[A suggested sequence for implementing features, considering dependencies, priorities, and journey completeness. This is a recommendation, not a mandate. The Phase column in the Feature Tracker is derived from this section.]
|
|
117
|
+
|
|
118
|
+
1. **Foundation:** [Features that establish core infrastructure, typically must-haves with no dependencies. These enable other features but may not complete any journey on their own.]
|
|
119
|
+
2. **Core experience:** [Features that deliver the primary user value. Completing this phase should make at least the main user journey functional end-to-end.]
|
|
120
|
+
3. **Enhancement:** [Should-have features that round out the experience. Additional journeys become functional.]
|
|
121
|
+
4. **Polish:** [Nice-to-have features that add refinement.]
|
|
122
|
+
|
|
123
|
+
## Deferred Items
|
|
124
|
+
|
|
125
|
+
[Items that came up during extraction but were explicitly excluded from the backlog. These are not features for v1 -- they are noted here for future reference.]
|
|
126
|
+
|
|
127
|
+
| Item | Reason for Deferral | Revisit When |
|
|
128
|
+
|------|-------------------|--------------|
|
|
129
|
+
| [Item] | [Why it is not in v1] | [Condition that would trigger reconsideration] |
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
---
|
|
133
|
+
|
|
134
|
+
## Issue Body Template
|
|
135
|
+
|
|
136
|
+
When uploading features as issues to GitHub/Jira (Step 7 of `arn-spark-feature-extract`), use this lean template for the issue body. Include repo links so the full detail is always accessible from the issue. The issue body matches the lean F-NNN file -- it does not expand UC content inline.
|
|
137
|
+
|
|
138
|
+
Read the content from the individual feature file. Construct repo links using the platform and repo URL from the `## Arness` config in arness.md.
|
|
139
|
+
|
|
140
|
+
```markdown
|
|
141
|
+
### F-[NNN]: [Feature Name]
|
|
142
|
+
|
|
143
|
+
**Priority:** [Must-have / Should-have / Nice-to-have]
|
|
144
|
+
**Complexity:** [S / M / L / XL]
|
|
145
|
+
**Phase:** [Foundation / Core / Enhancement / Polish]
|
|
146
|
+
**Dependencies:** [F-NNN: Name (ISSUE-KEY), ... / None]
|
|
147
|
+
|
|
148
|
+
#### Description
|
|
149
|
+
[Full description from feature file]
|
|
150
|
+
|
|
151
|
+
#### Journey Summary
|
|
152
|
+
[Brief journey summary from feature file -- 2-3 sentences, not full steps]
|
|
153
|
+
|
|
154
|
+
#### Acceptance Criteria
|
|
155
|
+
[Full acceptance criteria from feature file]
|
|
156
|
+
|
|
157
|
+
#### Components
|
|
158
|
+
[Library and product-specific components with references]
|
|
159
|
+
|
|
160
|
+
#### Technical Notes
|
|
161
|
+
[Technical notes from feature file]
|
|
162
|
+
|
|
163
|
+
---
|
|
164
|
+
|
|
165
|
+
**Full detail:** [Feature file](REPO-BROWSE-URL/[vision-dir]/features/F-NNN-name.md)
|
|
166
|
+
**Use cases:** [UC-NNN: Title](REPO-BROWSE-URL/[use-cases-dir]/UC-NNN-name.md), [UC-NNN: Title](REPO-BROWSE-URL/[use-cases-dir]/UC-NNN-name.md)
|
|
167
|
+
|
|
168
|
+
*Generated by `/arn-spark-feature-extract` from the feature backlog.*
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
**Repo link construction:**
|
|
172
|
+
- Read Platform from `## Arness` config: `github`, `bitbucket`, or `none`
|
|
173
|
+
- For GitHub: `https://github.com/<owner>/<repo>/blob/main/`
|
|
174
|
+
- For Bitbucket: `https://bitbucket.org/<workspace>/<repo>/src/main/`
|
|
175
|
+
- Append the relative path to the feature file or UC file
|
|
176
|
+
- If platform is `none` or URL cannot be determined: omit repo links, add "See local files for full detail." instead
|
package/plugins/arn-spark/skills/arn-spark-feature-extract/references/feature-entry-template.md
ADDED
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
# Feature Entry Template
|
|
2
|
+
|
|
3
|
+
This template defines the structure for individual feature files written by the `arn-spark-feature-extract` skill. Each feature is saved as a separate file (`F-NNN-kebab-name.md`) in the `features/` directory under the project's Vision directory.
|
|
4
|
+
|
|
5
|
+
A feature entry captures lean context -- description, journey summary, UI behavior unique to the feature, validated components, use case references, debate insights, technical notes, and acceptance criteria -- with references to upstream UC documents. `arn-code-feature-spec` expands these references at spec time by reading the referenced UC documents directly, so feature files avoid duplicating UC content.
|
|
6
|
+
|
|
7
|
+
## Instructions for arn-spark-feature-extract
|
|
8
|
+
|
|
9
|
+
When populating this template for each feature:
|
|
10
|
+
|
|
11
|
+
- Extract the feature from ALL available artifacts: product concept, architecture vision, style brief, spike results, static prototype results (including showcase), clickable prototype results (including showcase and screen manifest), use cases (including postconditions and business rules), user journey definitions, debate reports (from teams variants), and visual grounding assets
|
|
12
|
+
- Each feature should be a user-facing capability, not a technical task (e.g., "Voice communication between paired devices" not "Implement WebRTC peer connection")
|
|
13
|
+
- **Journey summary, UI behavior, and components are mandatory fields** -- journey summary captures the user flow briefly with UC references; UI behavior describes only interactions unique to this feature (not already described in the UC); components list the validated building blocks
|
|
14
|
+
- Priority must be justified -- not every feature is must-have
|
|
15
|
+
- Complexity estimates are relative within the project (S/M/L/XL) and based on the architecture vision's stack
|
|
16
|
+
- The "Source" field tracks where the feature was identified, for traceability
|
|
17
|
+
- Features marked "Ready for spec: Yes" must have description, journey summary (with UC references), UI behavior, and components filled in with enough detail for `arn-code-feature-spec` to start (it will read the referenced UC documents for full behavioral detail)
|
|
18
|
+
- XL features should be flagged for decomposition -- either split into separate backlog features, or if the UX specialist determines it is one coherent user-facing capability, kept whole with a `## Decomposition Hints` section providing suggested sub-feature boundaries for `arn-code-feature-spec` to decompose at spec time
|
|
19
|
+
- When use cases exist, reference them with step ranges and BR identifiers -- do not inline postconditions or business rules verbatim (arn-code-feature-spec reads the UC documents directly at spec time)
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## Template
|
|
24
|
+
|
|
25
|
+
```markdown
|
|
26
|
+
# F-[NNN]: [Feature Name]
|
|
27
|
+
|
|
28
|
+
**Priority:** [Must-have / Should-have / Nice-to-have]
|
|
29
|
+
**Complexity:** [S / M / L / XL]
|
|
30
|
+
**Phase:** [Foundation / Core / Enhancement / Polish]
|
|
31
|
+
**Dependencies:** [F-NNN, F-NNN / None]
|
|
32
|
+
**Status:** pending
|
|
33
|
+
|
|
34
|
+
## Description
|
|
35
|
+
|
|
36
|
+
[2-4 sentences describing what the feature does from the user's perspective. What can the user do that they could not do before? What problem does it solve?]
|
|
37
|
+
|
|
38
|
+
## Journey Steps
|
|
39
|
+
|
|
40
|
+
[Brief summary of the user journey this feature covers (2-3 sentences), with references to UC documents for full step-by-step detail:]
|
|
41
|
+
|
|
42
|
+
**Journey: [Journey Name]**
|
|
43
|
+
[2-3 sentence summary of what happens in this journey segment. E.g., "User discovers peers via mDNS, selects one, sends a pairing request, and upon acceptance exchanges Ed25519 identities to establish a permanent pairing."]
|
|
44
|
+
**UC references:** UC-NNN steps N-M, UC-NNN
|
|
45
|
+
|
|
46
|
+
[If the feature spans multiple journeys, list each with a brief summary and UC references. If no UC exists for this feature, provide 3-5 inline step descriptions instead.]
|
|
47
|
+
|
|
48
|
+
## UI Behavior
|
|
49
|
+
|
|
50
|
+
[Describe only the UI interactions and visual details that are unique to this feature and NOT already described in the referenced UC documents. Focus on:]
|
|
51
|
+
|
|
52
|
+
- [Prototype-specific details: animations, transitions, visual effects not in the UC]
|
|
53
|
+
- [Component-level interactions: how specific UI components behave (hover states, expand/collapse, etc.)]
|
|
54
|
+
- [Feedback mechanisms: sounds, haptic, toast notifications, loading states]
|
|
55
|
+
- [Edge case UI states: empty states, error states, disabled states]
|
|
56
|
+
- [Layout and positioning details from the prototype that the UC does not specify]
|
|
57
|
+
|
|
58
|
+
[If the UC's Main Success Scenario already describes the core flow, do not rewrite it here. Reference it: "Core flow follows UC-NNN steps N-M. Additional UI details:"]
|
|
59
|
+
|
|
60
|
+
## Components
|
|
61
|
+
|
|
62
|
+
[Validated UI components this feature uses, split by tier:]
|
|
63
|
+
|
|
64
|
+
- **Library:** [Component name] ([variants]) -- [static showcase reference]. E.g., "Button (primary, secondary) -- static showcase v3 section 3"
|
|
65
|
+
- **Library:** [Component name] ([variants]) -- [static showcase reference]
|
|
66
|
+
- **Product-specific:** [Component name] -- [clickable screen reference]. E.g., "DeviceListItem -- clickable v2 screen 04-main-dashboard"
|
|
67
|
+
|
|
68
|
+
[If no prototypes exist: "None -- no validated components available"]
|
|
69
|
+
|
|
70
|
+
## Animation
|
|
71
|
+
|
|
72
|
+
[Animation behaviors for this feature, described in platform-agnostic intent language. Reference the style brief's Animation and Motion section for the motion design system.]
|
|
73
|
+
|
|
74
|
+
- [e.g., "Scroll-triggered card stagger entrance, 0.15s delay between cards — validated in clickable v2 screen 03"]
|
|
75
|
+
- [e.g., "State transition: status change fades between states over 200ms ease-in-out"]
|
|
76
|
+
- [Or "None — this feature has no animation requirements"]
|
|
77
|
+
|
|
78
|
+
**Core or decorative:** [Is animation core to this feature's UX (removing it degrades the experience) or purely decorative (removing it has no functional impact)?]
|
|
79
|
+
|
|
80
|
+
[If no style brief Animation section exists: omit this section entirely.]
|
|
81
|
+
|
|
82
|
+
## Priority Rationale
|
|
83
|
+
|
|
84
|
+
[Why this priority. Must-haves: core experience collapses without it. Should-haves: significantly improves the experience. Nice-to-haves: polish or convenience.]
|
|
85
|
+
|
|
86
|
+
## Complexity Notes
|
|
87
|
+
|
|
88
|
+
[Brief explanation of what drives the complexity. E.g., "M -- straightforward UI but requires mDNS integration" or "L -- multiple screens with real-time state updates across peers"]
|
|
89
|
+
|
|
90
|
+
## Technical Notes
|
|
91
|
+
|
|
92
|
+
[Relevant technical context from architecture vision and spike results. E.g., "WebRTC getUserMedia validated in spike-001. Uses mDNS for discovery (validated). Requires Ed25519 keypair for identity." Or "Spike-003 showed WKWebView has limited Notification API -- use Tauri notification plugin instead."]
|
|
93
|
+
|
|
94
|
+
## Source
|
|
95
|
+
|
|
96
|
+
[Which artifact(s) this was extracted from: product-concept, architecture-vision, spike-results, prototype screen name, journey name, use-case UC-NNN, user input]
|
|
97
|
+
|
|
98
|
+
## References
|
|
99
|
+
|
|
100
|
+
**Prototype:** [Which prototype screens show this feature. E.g., "Clickable prototype v3: screens /pairing, /pairing/confirm. Journey screenshots: prototypes/clickable/v3/journeys/device-pairing/"]
|
|
101
|
+
**Showcase:** [Which showcase sections show this feature's screens/components. E.g., "Static showcase v3: sections 3 (Buttons), 5 (Inputs). Clickable showcase v2: screens 01-hub, 04-main-dashboard." Or "None"]
|
|
102
|
+
**Visual target:** [Implementation precision for this feature's visual appearance:]
|
|
103
|
+
- `Design assets` -- design mockups exist in visual grounding `designs/` matching this feature's screens. Implementation should aim for pixel-level fidelity.
|
|
104
|
+
- `Reference alignment` -- reference images exist in visual grounding `references/` setting the direction. Implementation should match the feel, not pixel-perfect.
|
|
105
|
+
- `Style brief only` -- no visual grounding assets for this feature. Implementation follows style brief text specifications.
|
|
106
|
+
|
|
107
|
+
## Debate Insights
|
|
108
|
+
|
|
109
|
+
[Key expert findings from debate reports (static-prototype-teams, clickable-prototype-teams, use-cases-teams) relevant to this feature. E.g., "UX specialist noted pairing flow needs inline error messages (round-2 cross-review). Business reviewer agreed and added: must show device name in error context." Or "None"]
|
|
110
|
+
|
|
111
|
+
## Use Case Context
|
|
112
|
+
|
|
113
|
+
**References:** [UC-IDs this feature implements, with relationship and step ranges. E.g., "Implements UC-001 Device Pairing (steps 1-6). Includes UC-005 Device Discovery." Or "None"]
|
|
114
|
+
**Postconditions:** See UC-NNN Postconditions [or "None" if no use cases exist]
|
|
115
|
+
**Business rules:** See UC-NNN Business Rules (BR-1 through BR-N) [or "None" if no use cases exist]
|
|
116
|
+
|
|
117
|
+
[If the feature adds business rules BEYOND what the UC defines, inline only those additional rules here:]
|
|
118
|
+
- [BR-N+1: Additional rule not in the UC. E.g., "Portal materialization animation must complete before audio pipeline starts."]
|
|
119
|
+
|
|
120
|
+
## Acceptance Criteria
|
|
121
|
+
|
|
122
|
+
[3-5 testable conditions that define when this feature is complete. Derived from journey steps, prototype behavior, and use case postconditions.]
|
|
123
|
+
|
|
124
|
+
- [ ] [Criterion 1 -- e.g., "User can see available devices within 3 seconds of opening the pairing screen"]
|
|
125
|
+
- [ ] [Criterion 2 -- e.g., "Selected device shows confirmation dialog before connecting"]
|
|
126
|
+
- [ ] [Criterion 3 -- e.g., "Connected device appears in the main device list with status indicator"]
|
|
127
|
+
|
|
128
|
+
## Decomposition Hints
|
|
129
|
+
|
|
130
|
+
[Only for XL features kept whole in the backlog. Omit this section entirely for S/M/L features.]
|
|
131
|
+
|
|
132
|
+
[When the UX specialist or user decides an XL feature should stay as one coherent user-facing capability (not split into separate backlog features), provide decomposition hints so `arn-code-feature-spec` can split it into implementation sub-features at spec time.]
|
|
133
|
+
|
|
134
|
+
**Suggested sub-features:**
|
|
135
|
+
|
|
136
|
+
1. **[Sub-feature name]** -- [1 sentence describing the implementation slice]
|
|
137
|
+
- Journey segment: [which UC steps this covers]
|
|
138
|
+
- Key components: [which components from the Components section apply]
|
|
139
|
+
|
|
140
|
+
2. **[Sub-feature name]** -- [1 sentence]
|
|
141
|
+
- Journey segment: [steps]
|
|
142
|
+
- Key components: [components]
|
|
143
|
+
|
|
144
|
+
3. **[Sub-feature name]** -- [1 sentence]
|
|
145
|
+
- Journey segment: [steps]
|
|
146
|
+
- Key components: [components]
|
|
147
|
+
|
|
148
|
+
**Split rationale:** [Why this decomposition. E.g., "Each sub-feature targets a distinct technical domain (audio, signaling, UI) while the user experience is one coherent capability."]
|
|
149
|
+
|
|
150
|
+
**Dependencies between sub-features:** [E.g., "Sub-feature 1 (audio pipeline) must complete before sub-feature 3 (UI integration) can start. Sub-feature 2 (signaling) is independent."]
|
|
151
|
+
|
|
152
|
+
## Spec Readiness
|
|
153
|
+
|
|
154
|
+
**Ready for spec:** [Yes / No]
|
|
155
|
+
|
|
156
|
+
[If No, note what is missing.]
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## Priority Definitions
|
|
162
|
+
|
|
163
|
+
| Priority | Definition | Test |
|
|
164
|
+
|----------|-----------|------|
|
|
165
|
+
| Must-have | The core experience cannot function without this feature | If removed, does the product still deliver its primary value? If not, it is must-have. |
|
|
166
|
+
| Should-have | The experience is significantly degraded without this feature | Users would notice and be frustrated by its absence, but the product still works. |
|
|
167
|
+
| Nice-to-have | Adds polish, convenience, or secondary value | The product is complete without it; this makes it better. |
|
|
168
|
+
|
|
169
|
+
## Complexity Definitions
|
|
170
|
+
|
|
171
|
+
| Size | Scope | Typical characteristics |
|
|
172
|
+
|------|-------|----------------------|
|
|
173
|
+
| S | Single component or minor change | One file or a few lines in 2-3 files. Clear implementation path. No new dependencies. Consider merging into a parent feature if too thin. |
|
|
174
|
+
| M | Feature within a single domain | Multiple files in one area. May require a new dependency or integration point. Maps to 1-2 journey segments. |
|
|
175
|
+
| L | Feature spanning multiple domains | Touches multiple parts of the stack (UI + backend, or multiple services). Requires design decisions. Maps to a full journey. |
|
|
176
|
+
| XL | Major feature or infrastructure | New subsystem, complex protocol implementation, or architectural change. **Should be decomposed** into smaller features before speccing, OR kept whole with `## Decomposition Hints` if the UX specialist determines it is one coherent user-facing capability -- `arn-code-feature-spec` decomposes at spec time. Maps to multiple journeys. |
|
|
177
|
+
|
|
178
|
+
## Spec Readiness Criteria
|
|
179
|
+
|
|
180
|
+
A feature is **ready for spec** when ALL of the following are true:
|
|
181
|
+
|
|
182
|
+
1. **Description** is 2-4 sentences covering what the user can do
|
|
183
|
+
2. **Journey steps** include at least one journey with actual step descriptions
|
|
184
|
+
3. **UI behavior** describes the key interactions with transition details and feedback
|
|
185
|
+
4. **Components** lists the validated library and product-specific components used
|
|
186
|
+
5. **Technical notes** capture any relevant spike results, validated capabilities, or known limitations
|
|
187
|
+
6. **Acceptance criteria** list 3-5 testable conditions
|
|
188
|
+
7. **Use case references** are listed with step ranges if use cases exist (arn-code-feature-spec reads UC documents at spec time)
|
|
189
|
+
8. **Complexity** is not XL, OR if XL, a `## Decomposition Hints` section is present with at least 2 suggested sub-features (`arn-code-feature-spec` decomposes at spec time)
|
|
190
|
+
9. **Animation** (if style brief has Animation and Motion section) describes the feature's animation behaviors in platform-agnostic intent language, with core/decorative classification
|
|
191
|
+
|
|
192
|
+
If any of these are missing, mark "Ready for spec: No" and note what is needed.
|
|
193
|
+
|
|
194
|
+
## UI Behavior Writing Guide
|
|
195
|
+
|
|
196
|
+
The UI behavior field should describe only the interactions and visual details that are **unique to this feature** and not already covered by the referenced UC documents. The UC's Main Success Scenario and Extensions describe the core user flow -- do not rewrite them here.
|
|
197
|
+
|
|
198
|
+
Focus on:
|
|
199
|
+
|
|
200
|
+
- **Prototype-specific details:** Animations, transitions, visual effects that the UC text does not describe
|
|
201
|
+
- **Component interactions:** How specific UI components behave (hover states, expand/collapse, inline editing)
|
|
202
|
+
- **Feedback mechanisms:** Sounds, haptic, toast notifications, loading indicators
|
|
203
|
+
- **Edge case UI states:** Empty states, disabled states, error display styles
|
|
204
|
+
- **Layout and positioning:** Where elements appear on screen, how they stack or overlay
|
|
205
|
+
|
|
206
|
+
If the UC already describes the core flow well, reference it and add only the unique UI layer:
|
|
207
|
+
|
|
208
|
+
Example:
|
|
209
|
+
> Core flow follows UC-002 steps 1-10. Additional UI details: Scanning indicator animates while mDNS discovery runs. Discovered devices appear in real-time as PairingCard entries. Portal materialization: fade-in with frosted-glass appearance, brief pulse, settles into ambient state.
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: arn-spark-help
|
|
3
|
+
description: >-
|
|
4
|
+
This skill should be used when the user says "spark help", "arn spark help",
|
|
5
|
+
"greenfield status", "greenfield help", "where am I in spark", "what's next for spark",
|
|
6
|
+
"spark pipeline", "spark status", "arn-spark-help", "show spark pipeline",
|
|
7
|
+
"what step am I on for spark", "spark workflow", "exploration status",
|
|
8
|
+
"show exploration pipeline", "how does spark work", "explain spark pipeline",
|
|
9
|
+
or wants to see their current position in the
|
|
10
|
+
Arness Spark exploration pipeline and get guidance on the next step.
|
|
11
|
+
version: 1.0.0
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Arness Spark Help
|
|
15
|
+
|
|
16
|
+
Detect the user's current position in the Arness Spark exploration pipeline, render a diagram with the active stage marked, and suggest the next command to run. Supports cross-plugin awareness — detects activity in Arness Code and Arness Infra and provides hints at the bottom of the output. This skill is strictly read-only — it never modifies files or project state.
|
|
17
|
+
|
|
18
|
+
**Allowed tools:** Read, Glob, Grep only. This skill MUST NOT use Write, Edit, Bash, or Task tools. This skill MUST NOT invoke any agents.
|
|
19
|
+
|
|
20
|
+
## Workflow
|
|
21
|
+
|
|
22
|
+
### Step 0: Multi-Plugin Awareness
|
|
23
|
+
|
|
24
|
+
1. Read the project's `arness.md` file.
|
|
25
|
+
2. Extract the `## Arness` section.
|
|
26
|
+
3. Detect other plugin field groups:
|
|
27
|
+
- **code_fields_present**: true if `Plans directory` OR `Specs directory` present in `## Arness`
|
|
28
|
+
- **infra_fields_present**: true if `Infra plans directory` OR `Infra specs directory` present in `## Arness`
|
|
29
|
+
4. For each detected plugin, do a quick existence check (max 2 files):
|
|
30
|
+
- **Code**: Check if `<Specs directory>` contains any `FEATURE_*.md` or `BUGFIX_*.md`, OR `<Plans directory>` has any subdirectories
|
|
31
|
+
- **Infra**: Check if `<Infra plans directory>` has any subdirectories, OR if `Dockerfile` or `docker-compose.yml` exists in the project root
|
|
32
|
+
5. Record `{ plugin_name, has_activity: bool }` for each detected plugin.
|
|
33
|
+
6. Proceed to Step 1. The cross-plugin hints are appended AFTER own status is rendered in Step 3.
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
### Step 1: Load Configuration
|
|
38
|
+
|
|
39
|
+
1. From the `## Arness` section, extract **Spark fields**:
|
|
40
|
+
- **Vision directory** (e.g., `.arness/vision/`)
|
|
41
|
+
- **Use cases directory** (e.g., `.arness/use-cases/`)
|
|
42
|
+
- **Prototypes directory** (e.g., `.arness/prototypes/`)
|
|
43
|
+
- **Spikes directory** (e.g., `.arness/spikes/`)
|
|
44
|
+
- **Visual grounding directory** (e.g., `.arness/visual-grounding/`)
|
|
45
|
+
- **Reports directory** (e.g., `.arness/reports/`)
|
|
46
|
+
|
|
47
|
+
**If `## Arness` is missing or no Spark fields present:** Show the Spark pipeline diagram with all stages unmarked. Suggest `/arn-brainstorming` to start a new greenfield project. Do not attempt detection.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
### Step 2: Detect Pipeline Position
|
|
52
|
+
|
|
53
|
+
Read the pipeline reference file at `${CLAUDE_PLUGIN_ROOT}/skills/arn-spark-help/references/pipeline-map.md` to load detection rules, rendering templates, and next-step tables.
|
|
54
|
+
|
|
55
|
+
Check from most advanced to least advanced — first match wins:
|
|
56
|
+
|
|
57
|
+
1. **Feature backlog ready** (`gf-feature-extract`): `<vision-dir>/features/feature-backlog.md` exists
|
|
58
|
+
2. **Prototype locked** (`gf-prototype-lock`): `<prototypes-dir>/locked/LOCKED.md` exists
|
|
59
|
+
3. **Clickable prototype done** (`gf-clickable-proto`): `<prototypes-dir>/clickable/final-report.md` exists
|
|
60
|
+
4. **Static prototype done** (`gf-static-proto`): `<prototypes-dir>/static/final-report.md` exists
|
|
61
|
+
5. **Style defined** (`gf-style-explore`): `<vision-dir>/style-brief.md` exists
|
|
62
|
+
6. **Visual direction chosen** (`gf-visual-sketch`): `<vision-dir>/visual-direction.md` exists
|
|
63
|
+
7. **Spike complete** (`gf-spike`): `<vision-dir>/spike-results.md` exists
|
|
64
|
+
8. **Scaffold built** (`gf-scaffold`): `<vision-dir>/scaffold-summary.md` exists
|
|
65
|
+
9. **Use cases written** (`gf-use-cases`): At least one `UC-*.md` file exists in `<use-cases-dir>/`
|
|
66
|
+
10. **Architecture defined** (`gf-arch-vision`): `<vision-dir>/architecture-vision.md` exists
|
|
67
|
+
11. **Naming complete** (`gf-naming`): `<vision-dir>/naming-brief.md` exists OR `<reports-dir>/naming-report.md` exists
|
|
68
|
+
12. **Concept reviewed** (`gf-concept-review`): `<reports-dir>/stress-tests/concept-review-report.md` exists
|
|
69
|
+
13. **Stress tests run** (`gf-stress-test`): Any of `interview-report.md`, `competitive-report.md`, `premortem-report.md`, `prfaq-report.md` exists in `<reports-dir>/stress-tests/`
|
|
70
|
+
14. **Product discovered** (`gf-discover`): `<vision-dir>/product-concept.md` exists
|
|
71
|
+
15. **Spark initialized** (`gf-init`): Spark fields exist in `## Arness` but none of the above artifacts found
|
|
72
|
+
|
|
73
|
+
**Spark complete:** If the detected stage is `gf-feature-extract`, Spark exploration is considered complete.
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
### Step 3: Render Pipeline Diagram
|
|
78
|
+
|
|
79
|
+
Read the pipeline templates from `${CLAUDE_PLUGIN_ROOT}/skills/arn-spark-help/references/pipeline-map.md`.
|
|
80
|
+
|
|
81
|
+
1. Place the `YOU ARE HERE` marker below the detected stage.
|
|
82
|
+
2. Display the next-step suggestion from the next-step table.
|
|
83
|
+
3. Spark is a single-track pipeline (no per-project subdirectories).
|
|
84
|
+
|
|
85
|
+
**Own-plugin suggestions always come first.** After the pipeline diagram and next-step suggestion, append cross-plugin hints from Step 0:
|
|
86
|
+
|
|
87
|
+
- If own plugin has activity: show own status first. If other plugins have activity, append 1-2 lines at the bottom:
|
|
88
|
+
```
|
|
89
|
+
Other pipelines: Development (active) — `/arn-code-help` | Infrastructure (not started)
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
- If own plugin is idle (`gf-init`) but other plugins have activity: show own-plugin "ready to start" suggestions FIRST:
|
|
93
|
+
```
|
|
94
|
+
Ready to start: run `/arn-spark-discover` to shape your product idea, or `/arn-brainstorming` for the guided wizard.
|
|
95
|
+
```
|
|
96
|
+
Then mention others:
|
|
97
|
+
```
|
|
98
|
+
You also have active work in Code — run `/arn-code-help` for details.
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
- When Spark pipeline is complete (`gf-feature-extract`): suggest transition:
|
|
102
|
+
```
|
|
103
|
+
Spark exploration is complete. Next steps:
|
|
104
|
+
- Start developing features: `/arn-planning`
|
|
105
|
+
- Deploy infrastructure: `/arn-infra-wizard`
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
Keep output concise — the user wants a quick status check, not a wall of text.
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
### Step 4: Answer Follow-up Questions
|
|
113
|
+
|
|
114
|
+
After presenting the pipeline status:
|
|
115
|
+
|
|
116
|
+
1. Remain available for follow-up questions about the Spark pipeline, skill purposes, or workflow decisions.
|
|
117
|
+
2. Reference `${CLAUDE_PLUGIN_ROOT}/skills/arn-spark-help/references/pipeline-map.md` for answers — do not re-scan the filesystem unless the user explicitly asks to refresh the detection.
|
|
118
|
+
3. Keep answers brief and direct.
|
|
119
|
+
|
|
120
|
+
Common questions the user might ask:
|
|
121
|
+
- "What is Spark?" — Spark is the exploration phase for new projects. It takes a raw idea through structured discovery, validation, prototyping, and feature extraction before development begins.
|
|
122
|
+
- "How do I run the full Spark pipeline?" — Run `/arn-brainstorming`, which walks through the entire exploration pipeline with guided decision gates.
|
|
123
|
+
- "What are stress tests?" — Four adversarial lenses that test your product concept: synthetic user interviews, competitive gap analysis, pre-mortem failure analysis, and PR/FAQ stress testing.
|
|
124
|
+
- "What is naming?" — A structured 4-step brand naming methodology: strategic foundation, creative generation, qualitative scoring, and due diligence with WHOIS domain checking.
|
|
125
|
+
- "Can I skip stress tests?" — Yes, all stages are optional. The brainstorming wizard presents skip options at each gate.
|
|
126
|
+
- "How do I transition to development?" — After feature extraction, run `/arn-planning` in the project. Arness Code sets up automatically on first use.
|
|
127
|
+
- "Where is the development pipeline status?" — Run `/arn-code-help` for the Arness Code development pipeline.
|
|
128
|
+
- "Where is infrastructure status?" — Run `/arn-infra-help` for the Arness Infra infrastructure pipeline.
|
|
129
|
+
- "What are the entry points?" — `/arn-brainstorming` is the main Spark entry point. For development: `/arn-planning`. For infrastructure: `/arn-infra-wizard`.
|
|
130
|
+
- "What is dev-setup?" — `/arn-spark-dev-setup` is a standalone skill for defining or onboarding to a development environment (dev containers, Docker, CI workflows). It can be run at any time after greenfield config exists.
|
|
131
|
+
- "What is visual-strategy?" — `/arn-spark-visual-strategy` sets up layered visual regression testing infrastructure (capture scripts, baselines, comparison pipelines). Requires scaffold and at least style-explore to be complete.
|
|
132
|
+
- "What is visual-readiness?" — `/arn-spark-visual-readiness` validates and activates deferred visual testing layers after project milestones. Requires a visual strategy to be defined first.
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## Error Handling
|
|
137
|
+
|
|
138
|
+
- **`## Arness` section not found in arness.md** — Show the Spark pipeline diagram with no stage marked. Suggest running `/arn-brainstorming` to start a new greenfield project.
|
|
139
|
+
- **arness.md does not exist** — Same as `## Arness` not found.
|
|
140
|
+
- **Spark fields present but directories don't exist** — Treat as `gf-init` stage. The directories may not have been created yet.
|
|
141
|
+
- **Pipeline reference file not found** — Inform the user that the pipeline-map.md reference is missing and suggest reinstalling or updating the Arness Spark plugin.
|
|
142
|
+
- **Reports directory not configured** — Skip stress-test, concept-review, and naming detection (these stages require the Reports directory). Proceed with detection from `gf-arch-vision` downward.
|
|
143
|
+
|
|
144
|
+
## Constraints
|
|
145
|
+
|
|
146
|
+
- This skill MUST NOT write or modify any files.
|
|
147
|
+
- This skill MUST NOT invoke any agents.
|
|
148
|
+
- All tools used must be read-only: Read, Glob, Grep.
|
|
149
|
+
- All command suggestions must use bare skill names (e.g., `/arn-spark-discover`, `/arn-code-help`). Do not use the fully qualified `plugin:skill` format in user-facing text.
|