agentsclimarketplace

Fullstack validation

Skill krzemienski/deepest-plan-plugin/skills/fullstack-validation

Fullstack validation using strict bottom-up approach — Database → API → Frontend. Validates each layer independently, then tests integration end-to-end. References api-validation and web-validation for layer-specific procedures. Cited as platform_skill on fullstack gates in deepest-plan output.From its SKILL.md

Install
npx -y skills add krzemienski/deepest-plan-plugin --skill fullstack-validation

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

4.6 KB, as published. Nobody here has run it

Fullstack Validation

Scope

Multi-layer validation for apps that ship a frontend AND backend together (Next.js, Astro + API routes, Rails + Turbo, Django + HTMX, Remix, SvelteKit, Phoenix + LiveView, etc.). Orchestrates api-validation + web-validation in strict bottom-up order.

The Iron Law: Bottom-Up

Database / Infra (FIRST)  ← pg_isready, migrations current, seed data present
    ↓
Business Logic            ← no direct gates; surfaces via API layer
    ↓
API Endpoints             ← api-validation patterns
    ↓
Frontend UI (LAST)        ← web-validation patterns

Why: If the DB is broken, every API test fails with misleading errors. If an endpoint is broken, the frontend is untestable. Start at the foundation.

Preflight

  • Data layer: DB up, migrations current, seed data loaded
  • API layer: server listening on port, /health returns 2xx
  • Frontend layer: dev server responding, root route returns HTML with expected marker

Execution Pattern

Every fullstack gate validates ALL THREE layers in one gate (or chains three single-layer gates with a phase_gate at the end):

# Layer 1: Data
psql "$DATABASE_URL" -c "SELECT COUNT(*) FROM items" > e2e-evidence/vgN-db-count.txt

# Layer 2: API
curl -s http://localhost:3000/api/items \
  | tee e2e-evidence/vgN-api.json | jq .

# Layer 3: Frontend
agent-browser open http://localhost:5173/items
agent-browser screenshot e2e-evidence/vgN-items-page.png

PASS Criteria Patterns

Single gate covering all layers:

  • "DB has exactly 10 items seeded (count == 10)"
  • "API returns array of length 10 with every item having id + title"
  • "Frontend renders 10 item cards with matching titles (screenshot + DOM check)"

Verdict is PASS only if ALL three layers cite evidence.

Gate Template

<validation_gate id="VG-N" blocking="true" platform="fullstack"
                 protocol="functional-validation"
                 platform_skill="fullstack-validation"
                 verdict_by="gate-validation-discipline">
  <preflight skill="preflight">
    pg_isready && curl -sf /health && curl -sf /
  </preflight>
  <execute>
    [Layer 1: psql]
    [Layer 2: curl]
    [Layer 3: agent-browser]
  </execute>
  <capture>
    [per-layer files to e2e-evidence/vgN-*-db.txt, -api.json, -ui.png]
  </capture>
  <pass_criteria>
    DB count matches seed | API length matches DB | UI card count matches API
  </pass_criteria>
  <review>
    jq -e on API | Read tool on screenshot | cross-check counts across layers
  </review>
  <verdict>
    PASS → next | FAIL → diagnose which layer failed → fix root, re-run from DB
  </verdict>
  <mock_guard skill="no-mocking-validation-gates">
    Real DB, real API, real browser. No MSW, no supertest, no jest.mock.
  </mock_guard>
</validation_gate>

Diagnosis Matrix (when a fullstack gate fails)

Fails atLikely root causeFix
DB layerSeed didn't run; migration regressionRe-run migrations; reseed; verify schema
API layer (DB PASS)Route handler bug; auth middleware; serializationCheck API logs; test route directly with curl
UI layer (API PASS)State mismatch; hydration; route auth gateCheck browser console + network; check auth cookie
All layers (intermittent)Race condition or flakinessAdd condition-based-waiting; don't sleep, poll

Phase Hierarchy Integration

When phase hierarchy is used, dedicate one phase per layer:

Phase 01: data-layer      (gates: DB schema + RLS + seed)
Phase 02: api-layer       (gates: endpoints + auth + errors)
Phase 03: frontend        (gates: route + form + responsive + a11y)

Each phase gate runs regression against all prior layers — verification-before-completion + gate-validation-discipline.

Rules

  1. Always bottom-up — DB first, UI last
  2. Always validate each layer independently BEFORE the integration gate
  3. Always cite evidence from all three layers in a cross-layer PASS verdict
  4. Always run preflight on all three layers — not just the layer you're testing

Security Policy

Fullstack evidence combines DB dumps, API responses, and screenshots. All may contain PII. Store in e2e-evidence/ (gitignored).

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.