@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-visual-strategy/references/visual-strategy-template.md
ADDED
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
# Visual Strategy Template
|
|
2
|
+
|
|
3
|
+
This template defines the structure for the `visual-strategy.md` document written by the `arn-spark-visual-strategy` skill. The document captures the project's visual testing strategy, validated through mini-spikes, with baseline configuration and script inventory.
|
|
4
|
+
|
|
5
|
+
## Template
|
|
6
|
+
|
|
7
|
+
```markdown
|
|
8
|
+
# Visual Testing Strategy
|
|
9
|
+
|
|
10
|
+
Defined by `/arn-spark-visual-strategy` on [date].
|
|
11
|
+
|
|
12
|
+
## Summary
|
|
13
|
+
|
|
14
|
+
- **Testing layers:** [N] layers configured ([layer names])
|
|
15
|
+
- **Baseline images:** [N] screen baselines + [M] journey baselines
|
|
16
|
+
- **Baseline source:** Prototype v[X] ([locked / unlocked])
|
|
17
|
+
- **Comparison tool:** [pixelmatch / looks-same / custom]
|
|
18
|
+
- **Diff threshold:** [N]% pixel difference tolerance
|
|
19
|
+
|
|
20
|
+
## Stack Analysis
|
|
21
|
+
|
|
22
|
+
| Property | Value |
|
|
23
|
+
|----------|-------|
|
|
24
|
+
| Application type | [Browser app / Tauri desktop / Electron / etc.] |
|
|
25
|
+
| UI framework | [SvelteKit / React / Vue / etc.] |
|
|
26
|
+
| Rendering context | [Browser viewport / Webview in native frame / Native + transparency / etc.] |
|
|
27
|
+
| Platform targets | [Linux, macOS, Windows] |
|
|
28
|
+
| Development environment | [Native / WSL2 / Dev container / etc.] |
|
|
29
|
+
| Current OS | [detected] |
|
|
30
|
+
|
|
31
|
+
### Key Constraints
|
|
32
|
+
|
|
33
|
+
[Numbered list of constraints that affect the testing strategy, e.g.:]
|
|
34
|
+
1. [Tauri transparency cannot be captured by browser-based tools]
|
|
35
|
+
2. [WSL2 has no native Windows display server access]
|
|
36
|
+
3. [Webview content IS accessible via standard HTTP dev server]
|
|
37
|
+
|
|
38
|
+
## Testing Layers
|
|
39
|
+
|
|
40
|
+
### Layer 1: [Layer Name]
|
|
41
|
+
|
|
42
|
+
- **What it captures:** [description]
|
|
43
|
+
- **Coverage:** [what is and isn't covered]
|
|
44
|
+
- **Tool:** [Playwright / OS screenshot API / etc.]
|
|
45
|
+
- **Environment:** [where it runs]
|
|
46
|
+
- **Complexity:** [Low / Medium / High]
|
|
47
|
+
- **Trade-off:** [what you get vs what you miss]
|
|
48
|
+
|
|
49
|
+
**Spike result:** [Validated / Partially validated / Failed / Deferred]
|
|
50
|
+
**Evidence:** [brief description of spike outcome, e.g., "Captured 12 screens at 1280x720, diff tool detected intentional change in button placement"]
|
|
51
|
+
**Caveats:** [platform-specific notes, known limitations]
|
|
52
|
+
**Status:** [active / deferred]
|
|
53
|
+
**Activation criteria:** [condition for promoting from deferred to active, or "N/A" if active]
|
|
54
|
+
|
|
55
|
+
### Layer 2: [Layer Name]
|
|
56
|
+
|
|
57
|
+
[Same structure as Layer 1, including Status and Activation criteria]
|
|
58
|
+
|
|
59
|
+
## Baseline Configuration
|
|
60
|
+
|
|
61
|
+
### Source
|
|
62
|
+
|
|
63
|
+
| Source | Path | Image count |
|
|
64
|
+
|--------|------|-------------|
|
|
65
|
+
| Clickable prototype showcase (v[N]) | [path] | [N] |
|
|
66
|
+
| Journey captures (v[N]) | [path] | [N] |
|
|
67
|
+
| Static prototype showcase (v[M]) | [path] | [N] |
|
|
68
|
+
|
|
69
|
+
### Organization
|
|
70
|
+
|
|
71
|
+
- **Baseline directory:** [path, e.g., visual-tests/baselines/]
|
|
72
|
+
- **Naming convention:** [e.g., screen-name--viewport.png]
|
|
73
|
+
- **Manifest:** [path to baseline-manifest.json]
|
|
74
|
+
|
|
75
|
+
### Baseline Image Mapping
|
|
76
|
+
|
|
77
|
+
| Screen/Component | Baseline File | Source Screenshot | Category |
|
|
78
|
+
|-----------------|---------------|-------------------|----------|
|
|
79
|
+
| [name] | [baseline path] | [prototype screenshot path] | [Layout / Component / Flow] |
|
|
80
|
+
|
|
81
|
+
## Scripts Inventory
|
|
82
|
+
|
|
83
|
+
| Script | Path | Purpose | Usage |
|
|
84
|
+
|--------|------|---------|-------|
|
|
85
|
+
| Capture | [path] | Navigate screens, capture screenshots | `[command]` |
|
|
86
|
+
| Compare | [path] | Diff captures against baselines | `[command]` |
|
|
87
|
+
| Baseline setup | [path] | Copy prototype screenshots to baseline dir | `[command]` |
|
|
88
|
+
| [Cross-env pipeline] | [path] | [WSL2-to-Windows / etc.] | `[command]` |
|
|
89
|
+
|
|
90
|
+
## Cross-Environment Pipeline
|
|
91
|
+
|
|
92
|
+
[Only if Layer 2+ requires cross-environment execution. Omit if not applicable.]
|
|
93
|
+
|
|
94
|
+
### Pipeline Steps
|
|
95
|
+
|
|
96
|
+
1. [Step 1: e.g., Copy project source to Windows-accessible path]
|
|
97
|
+
2. [Step 2: e.g., Trigger build on Windows]
|
|
98
|
+
3. [Step 3: e.g., Capture screenshots using Windows screenshot tool]
|
|
99
|
+
4. [Step 4: e.g., Copy screenshots back to WSL2 for comparison]
|
|
100
|
+
|
|
101
|
+
### Requirements
|
|
102
|
+
|
|
103
|
+
- [e.g., Windows path accessible from WSL2 at /mnt/c/...]
|
|
104
|
+
- [e.g., Node.js installed on Windows]
|
|
105
|
+
- [e.g., PowerShell script for Windows-side build and capture]
|
|
106
|
+
|
|
107
|
+
## CI Integration
|
|
108
|
+
|
|
109
|
+
[Only if CI was configured. Omit if not applicable.]
|
|
110
|
+
|
|
111
|
+
- **Workflow file:** [path]
|
|
112
|
+
- **Trigger:** [on push / on PR / manual]
|
|
113
|
+
- **Platform matrix:** [which OSes run visual tests]
|
|
114
|
+
- **Artifact upload:** [whether captured screenshots are uploaded as CI artifacts]
|
|
115
|
+
|
|
116
|
+
## Threshold Configuration
|
|
117
|
+
|
|
118
|
+
- **Default threshold:** [N]% pixel difference tolerance
|
|
119
|
+
- **Per-screen overrides:** [if any screens need different thresholds]
|
|
120
|
+
- **Anti-aliasing handling:** [ignore / threshold adjustment / specific tool option]
|
|
121
|
+
- **Viewport:** [width x height, e.g., 1280x720]
|
|
122
|
+
|
|
123
|
+
## Known Limitations
|
|
124
|
+
|
|
125
|
+
[Numbered list of what the strategy does NOT cover:]
|
|
126
|
+
1. [e.g., Native window chrome and transparency effects (Layer 2 deferred)]
|
|
127
|
+
2. [e.g., Sub-pixel rendering differences between Linux and macOS]
|
|
128
|
+
3. [e.g., Dark mode variants not yet baselined]
|
|
129
|
+
- Deferred layers can be activated with `/arn-spark-visual-readiness` once their activation criteria are met.
|
|
130
|
+
|
|
131
|
+
## Updating Baselines
|
|
132
|
+
|
|
133
|
+
When the design intentionally changes (not a regression):
|
|
134
|
+
|
|
135
|
+
1. Run the capture script to generate new screenshots
|
|
136
|
+
2. Visually verify the new screenshots match the intended design
|
|
137
|
+
3. Run `[baseline update command]` to replace baselines with new captures
|
|
138
|
+
4. Commit the updated baselines
|
|
139
|
+
|
|
140
|
+
Baselines should only be updated after deliberate design changes, never to suppress a failing test.
|
|
141
|
+
```
|