Loading...
Loading...
Use when preparing a PR for review — applies body templates, uploads visual evidence via the assets backend, and runs the self-audit checklist.
npx skill4agent add fellowship-dev/dogfooded-skills create-compelling-prs## What broke
[One sentence: what failed and where]
## Root cause
[The underlying cause — missing guard, race condition, wrong assumption]
## Fix
[What changed and why this approach over alternatives]
## Before / After
| Before | After |
|--------|-------|
|  |  |
## Test output
[paste test run]
## How to verify
1. [Step to reproduce original bug — should now pass]
2. [Regression check]
Closes #ISSUE## What this adds
[One sentence: the user-visible capability]
## Why
[Business or product motivation]
## Implementation
[2-3 sentences: what was added/changed, key design decisions]
## Demo

## Test output
[paste test run]
## How to verify
1. [Golden path step]
2. [Edge case]
Closes #ISSUE## What changed
[What was moved, renamed, or restructured]
## Why
[The underlying problem that made this necessary]
## What stays the same
[Public API, behavior, outputs — nothing visible changed]
## Test output
[paste — proves no regressions]
Closes #ISSUE## Update
[Package] vX.Y.Z → vA.B.C
## Why now
[Security advisory / feature needed / routine bump]
## Risk
[Low/Medium/High — breaking changes? Coverage of affected areas?]
## Test output
[paste — full suite green]skills/ops/evidence-upload# Capture screenshots (Playwright preferred, manual fallback), then for each file:
FILE=before.png CONTENT_TYPE=image/png REPO="$ORG/$REPO_NAME"
BYTES=$(wc -c < "$FILE")
PRESIGN=$(curl -sS -X POST "$PYLOT_GATEWAY_URL/assets/presign" \
-H "Authorization: Bearer $PYLOT_DISPATCH_TOKEN" -H "Content-Type: application/json" \
-d "{\"repo\":\"$REPO\",\"content_type\":\"$CONTENT_TYPE\",\"size\":$BYTES}")
ASSET_ID=$(echo "$PRESIGN" | python3 -c "import sys,json; print(json.load(sys.stdin)['asset_id'])")
UPLOAD_URL=$(echo "$PRESIGN" | python3 -c "import sys,json; print(json.load(sys.stdin)['upload_url'])")
curl -sS -X PUT "$UPLOAD_URL" --data-binary @"$FILE" -H "Content-Type: $CONTENT_TYPE"
PUBLIC_URL=$(curl -sS -X PATCH "$PYLOT_GATEWAY_URL/assets/$ASSET_ID" \
-H "Authorization: Bearer $PYLOT_DISPATCH_TOKEN" -H "Content-Type: application/json" \
-d '{"visibility":"public"}' | python3 -c "import sys,json; print(json.load(sys.stdin)['public_url'])")
# Embed: $PYLOT_GATEWAY_URL$PYLOT_DISPATCH_TOKENCloses #NRefs #N