validating-features-end-to-end
Skill9 starsChanged 23 days agoMITView on GitHub
Use when a feature is just implemented and tests pass, before closing a ticket or announcing it done - "is it good?", "does it work?", "ready to close the ticket?", "c'est bon ?", "est-ce que ça marche ?", "je peux fermer le ticket ?", green unit tests as only evidence.
In this repository59 other files it gives its agents.
- AGENTS.mdAGENTS.md
- adversarial-feature-challengeSkill
- api-contract-versioningSkill
- bug-ticket-root-causeSkill
- bug-triage-structuredSkill
- ci-pipeline-orchestrationSkill
- commit-readiness-reviewSkill
- comprehensive-test-strategySkill
- database-schema-evolutionSkill
- ddd-backend-implementationSkill
- design-system-component-lifecycleSkill
- detection-sweepSkill
- domain-glossarySkill
- domain-modeling-designSkill
- frontend-fullstack-implementationSkill
- frontend-spec-call-site-auditSkill
- merge-request-reviewSkill
- performance-profilingSkill
- recording-decisionsSkill
- recurring-bug-root-causeSkill
- refactoring-shared-component-apiSkill
- validating-features-end-to-endSkill
- visual-regression-checkSkill
- writing-robust-testsSkill
- adversarial-feature-challengeSkill
- api-contract-versioningSkill
- audit-architectureSkill
- audit-ci-cdSkill
- audit-complianceSkill
- audit-industrialisationSkill
- audit-observabilitySkill
- audit-performance-frontendSkill
- audit-qualitySkill
- audit-reportSkill
- audit-securitySkill
- audit-testingSkill
- bug-ticket-root-causeSkill
- bug-triage-structuredSkill
- ci-pipeline-orchestrationSkill
- commit-readiness-reviewSkill
- comprehensive-test-strategySkill
- daily-workflow-optimizationSkill
- database-schema-evolutionSkill
- ddd-backend-implementationSkill
- design-system-component-lifecycleSkill
- detection-sweepSkill
- domain-glossarySkill
- domain-modeling-designSkill
- frontend-fullstack-implementationSkill
- frontend-spec-call-site-auditSkill
- merge-request-reviewSkill
- performance-profilingSkill
- production-incident-diagnosticSkill
- qa-session-intakeSkill
- recording-decisionsSkill
- recurring-bug-root-causeSkill
- refactoring-shared-component-apiSkill
- visual-regression-checkSkill
- writing-robust-testsSkill
The file
We split this skill into the rules it gives an agent
7 rules. About 0 are common, 6 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈6
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Distinctive: line 16
This skill: when: feature implemented, tests green, before closing the ticket / announcing "done" - you must prove the intended behavior …
- Very specific: line 18
commit-readiness-review: instead if: the question is "is it committable" (secrets, lint, debug leftovers), not "does it work" - Distinctive: line 25
If multi-tenant: 2 accounts from 2 distinct tenants to verify isolation
- Distinctive: line 30
Evidence before assertion: every ✅ in the report = an archivable artifact (screenshot, curl output, SQL query), never "it should work"
- Distinctive: line 41
Adjacent non-regression: run the E2E/test suite for the same functional domain - the feature must not break its neighbors.
- Distinctive: line 56
If a gap: do not close the ticket - document it in the tracker and return to implementation.
- Distinctive: line 81
No dedicated script here: the commands (dev, E2E) are project-specific - read them from its config
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Functional validation of a feature - evidence before verdict
If the current repo has a dedicated validation skill, it wins.
This skill vs. others
- This skill when: feature implemented, tests green, before closing the ticket / announcing "done" - you must prove the intended behavior works in the real app
adversarial-feature-challengenext: once it is proven to work, hunt for what breaks itcommit-readiness-reviewinstead if: the question is "is it committable" (secrets, lint, debug leftovers), not "does it work"
Context to gather (before acting)
- The ticket/spec: golden path, explicit error cases, business rules - that is the list of invariants to validate
- Dev start command + the domain's E2E test command (
package.json/Makefile/ CI config) - How to call the API directly (auth, base URL) and how to read the DB read-only
- If multi-tenant: 2 accounts from 2 distinct tenants to verify isolation
Principle
- "It compiles ≠ it works" and "green tests ≠ working feature" - green unit tests on the formatter do not prove the button downloads a file
- Evidence before assertion: every ✅ in the report = an archivable artifact (screenshot, curl output, SQL query), never "it should work"
- Strict scope: validate THE requested feature, not audit the project
- Complementary to
adversarial-feature-challenge: here you prove the intended behavior works; the challenge hunts for what breaks
Workflow
- Actually start the app (the project's dev command). No verdict without having exercised the feature in the running app.
- List the invariants from the ticket/spec: golden path, explicit error cases, business rules. Validate what the ticket asks for, not what the code does.
- Golden path exercised with evidence: preferably a dedicated E2E spec (page object, data-testid, zero hard waits) with a final screenshot; otherwise a driven manual walkthrough (Playwright MCP) + screenshot.
- Planned edge cases: for each error case in the spec - 404/someone else's resource, insufficient rights, server validation, quota. Multi-tenant: validate with 2 accounts from 2 tenants (cross-tenant leakage is the #1 risk of exports/lists).
- Backend evidence: direct API call (status, payload matching the contract, headers - e.g.
Content-Type/Content-Dispositionfor an export) + read-only DB state. - Adjacent non-regression: run the E2E/test suite for the same functional domain - the feature must not break its neighbors.
- Re-read the assertions of the green tests: a test with an over-permissive mock or an empty fixture passes without exercising anything. Green ≠ relevant.
Report (mandatory, not optional)
Feature: <name> - Ticket: #<iid>
Golden path: ✅ (evidence: <screenshot path / output>)
Edge cases: <list with ✅/❌ and evidence for each>
Backend: API conforms ✅ · DB consistent ✅ (evidence)
Adjacent non-regression: <suites run + result>
Tenant isolation: ✅ (if applicable)
Verdict: ready for review | gap identified → <detail>If a gap: do not close the ticket - document it in the tracker and return to implementation.
Exit condition
- App started and feature actually exercised (not just the tests)
- Golden path proven by an archived artifact (screenshot / output)
- Each edge case in the spec: ✅/❌ + evidence
- Backend verified: API conforms to the contract + consistent DB state
- Tenant isolation proven with 2 accounts (if applicable)
- Adjacent-domain suites run and green
- Report filled with evidence - verdict given (never "it should work")
Forbidden rationalizations
| Excuse | Reality |
| "The tests pass, it's fine" | Tests cover what they test. Did you see the feature work in the app? |
| "I checked by hand, no need to archive" | Without evidence, the report is worth an opinion. Screenshot/output or nothing. |
| "It's late, we'll check tomorrow" | 10 min tonight < an incident after the announcement. Verify the critical (tenant, golden path), defer the cosmetic. |
| "The report is bureaucracy" | It is what turns "I believe" into "I verified X, Y, Z". |
Tooling
- Browser driving for UI evidence: Playwright MCP (
browser_navigate,browser_snapshot,browser_take_screenshot) or the project's E2E runner - Backend evidence: HTTP client on the CLI (status, headers, payload) + read-only DB access
- No dedicated script here: the commands (dev, E2E) are project-specific - read them from its config
After
- Adversarial stress-test:
adversarial-feature-challenge - Bug found:
superpowers:systematic-debugging, ticket via the repo's bug skill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

