Install
$ agentstack add skill-zig999-siegard-code-phase-test-rules ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
phase-test-rules
Phase rules skill for the test (automated testing) phase. Provides exit criteria checkers and worker routing table consumed by orchestrator-test.md.
Contract
The orchestrator calls this skill's scripts directly. No inter-skill communication envelope needed. Every script returns a JSON object to stdout and exits 0 on success or 1 on error.
Phase identity
| Field | Value | |-------|-------| | phase_name | test | | order | 4 | | required | true | | worker_default | u-test-runner |
Worker routing table
Maps task.type + stack to worker sub-agent. All stacks route to the same worker — u-test-runner is stack-agnostic.
| task.type | stack | worker subagent_type | |-----------|-------|----------------------| | test-run | be | u-test-runner | | test-run | fe | u-test-runner | | test-run | fullstack | u-test-runner | | * (default) | any | u-test-runner |
scripts/select_worker.py
Returns the worker sub-agent name for a given task type and optional stack.
Usage
python3 .claude/skills/phase-test-rules/scripts/select_worker.py \
--task-type \
[--stack ]
Output (exit 0)
{"worker": "u-test-runner", "task_type": "test-run", "stack": "be", "phase": "test"}
Error (exit 1, stderr)
{"status": "error", "reason": "internal_error", "detail": ""}
Exit criteria
All three criteria must be met before the test phase can transition. DLQ tasks block transition — a failed task is not a passing test run.
| Criterion | Script | Description | |-----------|--------|-------------| | all_test_tasks_terminal | scripts/check_all_test_tasks_terminal.py | All test tasks in completed; zero DLQ tasks | | all_tests_passed | scripts/check_all_tests_passed.py | Every test report artifact has result: passed | | no_critical_failures | scripts/check_no_critical_failures.py | No test report artifact contains severity: critical failures |
See exit-criteria.json for the machine-readable declaration.
Environment variables
| Variable | Default | Description | |----------|---------|-------------| | ORCH_PROJECT_DIR | . | Project root — used to resolve test report artifact paths |
scripts/checkalltesttasksterminal.py
Criterion: every task in the test phase has status completed. DLQ tasks block the criterion. Not met if there are no test tasks (phase hasn't started).
python3 .claude/skills/phase-test-rules/scripts/check_all_test_tasks_terminal.py
Output schema:
{
"criterion": "all_test_tasks_terminal",
"met": true,
"evidence": {
"total": 5,
"terminal": 5,
"non_terminal": [],
"dlq": [],
"dlq_blocks_criterion": false
}
}
scripts/checkalltests_passed.py
Criterion: every test report artifact from completed test-phase tasks contains result: passed. Not met if no test report artifacts are found. Artifact paths are resolved relative to ORCH_PROJECT_DIR.
python3 .claude/skills/phase-test-rules/scripts/check_all_tests_passed.py
Output schema:
{
"criterion": "all_tests_passed",
"met": true,
"evidence": {
"total": 5,
"passed": 5,
"failed": []
}
}
Accepted result values: passed (case-insensitive). Any other value (failed, error, skipped) is treated as not passed.
scripts/checknocritical_failures.py
Criterion: no test report artifact contains a failure entry with severity: critical. Artifact paths are resolved relative to ORCH_PROJECT_DIR.
python3 .claude/skills/phase-test-rules/scripts/check_no_critical_failures.py
Output schema:
{
"criterion": "no_critical_failures",
"met": true,
"evidence": {
"total": 5,
"clean": 5,
"with_critical": []
}
}
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: zig999
- Source: zig999/siegard-code
- License: Apache-2.0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.