refactor: update screenshot-producing skills to use gstack-upload

qa, qa-only, and design-review templates now upload screenshots to
Supabase Storage after report compilation. Falls back gracefully to
local paths when Supabase is not configured.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Garry Tan
2026-03-18 23:50:07 -07:00
parent e943c82e67
commit ec6b2fc0e8
3 changed files with 24 additions and 0 deletions
+8
View File
@@ -231,6 +231,14 @@ After writing, register in manifest:
~/.claude/skills/gstack/bin/gstack-manifest-append design-audit "reports/$(basename "$FILE")" design-review "$BRANCH"
```
**Screenshot upload:** After compiling the report, upload all screenshots:
```bash
for img in .gstack/design-reports/screenshots/*.png; do
[ -f "$img" ] && ~/.claude/skills/gstack/bin/gstack-upload "$img" 2>/dev/null
done
```
If upload succeeds, update the report to use hosted URLs. If it fails, keep local paths and append: `(screenshot not uploaded — run gstack sync to share)`
**Per-finding additions** (beyond standard design audit report):
- Fix Status: verified / best-effort / reverted / deferred
- Commit SHA (if fixed)
+8
View File
@@ -95,6 +95,14 @@ After writing, register in manifest:
~/.claude/skills/gstack/bin/gstack-manifest-append test-outcome "reports/$(basename "$FILE")" qa-only "$BRANCH"
```
**Screenshot upload:** After compiling the report, upload all screenshots:
```bash
for img in .gstack/qa-reports/screenshots/*.png; do
[ -f "$img" ] && ~/.claude/skills/gstack/bin/gstack-upload "$img" 2>/dev/null
done
```
If upload succeeds, update the report to use hosted URLs. If it fails, keep local paths and append: `(screenshot not uploaded — run gstack sync to share)`
### Output Structure
```
+8
View File
@@ -517,6 +517,14 @@ After writing, register in manifest:
~/.claude/skills/gstack/bin/gstack-manifest-append test-outcome "reports/$(basename "$FILE")" qa "$BRANCH"
```
**Screenshot upload:** After compiling the report, upload all screenshots for team sharing:
```bash
for img in .gstack/qa-reports/screenshots/*.png; do
[ -f "$img" ] && ~/.claude/skills/gstack/bin/gstack-upload "$img" 2>/dev/null
done
```
If upload succeeds, the output is a public URL. If it fails (no Supabase config), the local path is printed with a stderr warning. Either way, reference the screenshot path in the report. If URLs were returned, update the report to use hosted URLs instead of local paths. If local paths remain, append: `(screenshot not uploaded — run gstack sync to share)`
**Per-issue additions** (beyond standard report template):
- Fix Status: verified / best-effort / reverted / deferred
- Commit SHA (if fixed)