fullstack — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited fullstack (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.
Read .agents/software-principles/SKILL.md first.| Need | Solution | Location |
|---|---|---|
| Fetch + render data | async Server Component | app/**/page.jsx |
| Form / page mutation | Server Action 'use server' | app/**/actions.js |
| REST endpoint / webhook | Route Handler | app/api/**/route.js |
| Interactivity / hooks | Client Component 'use client' — push to leaves | components/ |
| Auth + route guard | Middleware | middleware.js |
| Shared business logic | Services / utilities | lib/ · services/ · utils/ |
Extensions: .jsx for JSX · .js everything else.
Apply all rules from frontend skill. Key additions:
async Server Components in <Suspense>error.jsx must be 'use client'redirect() throws — never call inside try/catchapp/**/actions.js)File must start with 'use server'. Required order:
revalidatePath() or revalidateTag() after mutationapp/api/**/route.js)Follow existing response shape convention. If none, pick one and apply consistently. Never mix shapes across handlers.
Required regardless of shape: success/error distinguishable · validation errors include field-level detail · no stack traces or internal paths exposed.
Handler order: validate input → auth check → service call → return envelope.
lib/db.js · services/*.js)unstable_cache() or cache() for expensive repeated readsrevalidateTag() preferred over revalidatePath() for precisionmiddleware.js guards routes via cookies() or token checkNEXT_PUBLIC_ for sensitive valuesNEXT_PUBLIC_ vars~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.