원클릭으로
ralph
Iterative test hardening protocol. Adversarial review of tests, fix gaps, loop until clean.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Iterative test hardening protocol. Adversarial review of tests, fix gaps, loop until clean.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | ralph |
| description | Iterative test hardening protocol. Adversarial review of tests, fix gaps, loop until clean. |
| disable-model-invocation | true |
Use this whenever a feature, fix, or module needs comprehensive test validation. The goal is functional correctness, not line coverage vanity metrics.
RL-4 (MUST) Fix every gap found in Phase 1. Don't batch — fix one
category at a time, run go test -race ./... between each batch.
RL-5 (MUST) Every test function must have a // WHY: comment on the
first line of the test body explaining what specific behavior or regression
it guards against. One sentence. If you can't write it, the test shouldn't
exist.
func TestFindKeys_CancelsOnContextDone(t *testing.T) {
// WHY: Verifies that workers exit promptly when the context is
// cancelled — prevents goroutine leaks in normal operation.
t.Parallel()
// ...
}
RL-6 (MUST) Evaluate overall coverage qualitatively: does the test suite prove the module works as advertised? Map tests to documented behaviors and exported API surface. Missing mappings are gaps.
RL-7 (SHOULD) Add negative tests for concurrency-relevant paths: race conditions on shared counters, context cancellation during key generation, channel behavior under load.
// TODO(ralph): tags.err == nil with no output validation.TestFoo1, TestFoo2 naming — use descriptive scenario names.t.Skip() without an issue reference.crypto/ed25519).