debugging-strategies-2475c0 — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited debugging-strategies-2475c0 (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Transform debugging from guesswork into systematic problem-solving.
app.log.info/error)npx prisma studio to inspect data state| Symptom | Layer | Start Here |
|---|---|---|
| 4xx/5xx API response | Route handler | wrkly-api/src/routes/{resource}.ts |
| Data not showing | Prisma query | Check select: fields, isArchived filter |
| Auth failure | JWT middleware | wrkly-api/src/middleware/auth.ts |
| Stale UI data | React Query cache | Check queryKey, staleTime, invalidation |
| Realtime not updating | Socket.io | wrkly-api/src/lib/socket.ts → event names |
| Styling broken | CSS tokens | globals.css dark/light mode variables |
Before touching code, state: "I think X is happening because Y, and I can verify by Z."
#### Prisma: Missing data
// ❌ Bug: cards not showing
prisma.board.findUnique({ where: { id: boardId } })
// ✅ Fix: add select with nested relations
prisma.board.findUnique({
where: { id: boardId },
select: { lists: { select: { cards: { where: { isArchived: false } } } } }
})#### Auth: 401 on valid token
// Check: is authenticate middleware registered?
app.post('/endpoint', { preHandler: [authenticate] }, handler)
// Check: is JWT_SECRET the same between token generation and verification?#### React Query: Stale data after mutation
// ❌ Bug: list doesn't update after creating card
// ✅ Fix: invalidate the right query key
queryClient.invalidateQueries({ queryKey: ['board', boardId] })#### Socket.io: Events not received
// Check: is the client subscribing to the correct room?
socket.emit('join-board', boardId)
// Check: is the server emitting to the right room?
io.to(`board:${boardId}`).emit('card:created', data)cd wrkly-api && pnpm test — all greencd wrkly-web && pnpm build — no type errorsAdd a comment explaining WHY the fix works, not WHAT it does:
// Fix: must filter by isArchived because soft-deleted cards were
// appearing in the board view count (issue #42)
where: { isArchived: false }~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.