.factory/skills/validation-worker/SKILL.md
Validates refactored code through testing, coverage analysis, and quality gate checks
npx skillsauth add 0xsero/parchi validation-workerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
NOTE: Startup and cleanup are handled by worker-base. This skill defines the WORK PROCEDURE.
Use this worker for validation features that involve:
Read the feature description to understand:
For integration tests:
npm run test:integration
For E2E tests:
DECOMPOSER_PROVIDER=openai-compatible \
DECOMPOSER_BASE_URL=https://api.minimax.io/v1 \
DECOMPOSER_API_KEY=$DECOMPOSER_API_KEY \
npm run test:e2e
If tests fail due to refactoring:
npm run test:coverage
Check coverage report:
If below threshold:
# Find files over 200 lines
find packages -name '*.ts' -exec wc -l {} \; | awk '$1 > 200 {print}'
Report any files exceeding the limit.
Run all quality gates:
npm run typecheck # TypeScript compilation
npm run lint # Biome linting
npm run build # Production build
npm run knip # Unused export detection
Document any issues and fix if possible.
npm run buildCompile validation results:
{
"salientSummary": "Validated all quality gates for the refactoring mission. Integration tests: 47/47 passed. E2E tests: 12/12 passed with MiniMax provider. Coverage: 96.2% lines, 78.4% branches, 97.1% functions. All files under 200 lines. Typecheck, lint, build, knip all pass. Extension loads correctly in Chrome.",
"whatWasImplemented": "Ran full validation suite including integration tests, E2E tests with MiniMax provider, coverage analysis, file size checks, and all quality gates. Fixed 2 minor lint issues. Added 3 tests to improve coverage on trace-sanitizer module.",
"whatWasLeftUndone": "",
"verification": {
"commandsRun": [
{
"command": "npm run test:integration",
"exitCode": 0,
"observation": "47 tests passed in 12.3s"
},
{
"command": "DECOMPOSER_PROVIDER=openai-compatible DECOMPOSER_BASE_URL=https://api.minimax.io/v1 npm run test:e2e",
"exitCode": 0,
"observation": "12 tests passed, 2 skipped (require browser)"
},
{
"command": "npm run test:coverage",
"exitCode": 0,
"observation": "Coverage meets thresholds: lines 96.2%, branches 78.4%, functions 97.1%"
},
{
"command": "find packages -name '*.ts' -exec wc -l {} \\; | awk '$1 > 200'",
"exitCode": 0,
"observation": "No files over 200 lines"
},
{
"command": "npm run typecheck && npm run lint && npm run build && npm run knip",
"exitCode": 0,
"observation": "All quality gates passed"
}
],
"interactiveChecks": [
{
"action": "Loaded extension in Chrome from dist/",
"observed": "Extension loaded without errors, sidepanel opens, UI renders correctly"
},
{
"action": "Sent test prompt through chat interface",
"observed": "Agent responded correctly, streaming worked, no console errors"
}
]
},
"tests": {
"added": [
{
"file": "tests/unit/trace-sanitizer-coverage.test.ts",
"cases": [
{"name": "handles data URLs", "verifies": "VAL-QUALITY-002"},
{"name": "handles Error objects", "verifies": "VAL-QUALITY-002"},
{"name": "handles BigInt values", "verifies": "VAL-QUALITY-002"}
]
}
]
},
"discoveredIssues": []
}
Return to the orchestrator if:
tools
Use Parchi Relay to control a real browser via the Parchi extension agent (WebSocket) or directly via JSON-RPC from a CLI/tooling workflow.
development
Refactors TypeScript code while preserving functionality, ensuring files stay under 200 lines
development
Maintainer-only workflow for handling GitHub Secret Scanning alerts on OpenClaw. Use when Codex needs to triage, redact, clean up, and resolve secret leakage found in issue comments, issue bodies, PR comments, or other GitHub content.
development
Maintainer workflow for OpenClaw releases, prereleases, changelog release notes, and publish validation. Use when Codex needs to prepare or verify stable or beta release steps, align version naming, assemble release notes, check release auth requirements, or validate publish-time commands and artifacts.