TEST-RESULTS: content-dashboard
Date: 2026-10-14 · Kind: smoke test, not proof. One run (n=1), one input. No defect rate is claimed.
How: the agent that wrote the skill followed its SKILL.md step by step in the same session, on a fictional small business (a home bakery, «مخبز سنبلة»). It was not run in a fresh Claude session, so automatic triggering was not tested, and the author checking their own skill is a weaker test than an outside run. The dashboard page was opened in headless Chromium (chrome-headless-shell 152) at 1100 px and 390 px wide.
| Run | Input | Result |
|---|---|---|
| 1 | examples/input.csv: 13 rows of made-up numbers for 12 posts, with 3 planted errors (a duplicate row, a date as 26/09/2026, reach larger than views) | examples/content-dashboard-2026-10-14.html + examples/expected-output.md |
What worked: all 3 planted errors were found (2 fixed with a stated assumption, 1 left visible in the page). The cards matched a separate Python calculation exactly (12 posts, 13,290 views, median send 1.36%, median save 3.09%, 12.86 keyword comments per 1000 views for n=3 lead posts, 86 follows), and 2 posts were checked by hand. Every group showed «وصف فقط (n<5)». The page makes no network requests (the only URL in it is the SVG namespace).
What failed and was fixed:
- The first render cut off the pillar names in the chart and the value labels overlapped the bars (right-to-left text inside SVG). Fixed: the chart is laid out left-to-right with names on their own line; re-checked at both widths.
- The first written read said «Reels had the highest send rate» for reach posts. That was wrong: a Carousel had the highest (3.21%). Caught on re-reading against the table and corrected. This is the kind of error the skill's «numbers, not impressions» rule exists for, and it shows the read must be checked against the page.
Not tested: a real platform export (column names differ by platform and change); Excel files (only CSV); very large files; screen readers; a fresh Claude session or Claude.ai.