proofloop-sol-luna
GitHub一种基于 Git 的测试蒸馏流程,通过 Sol 执行构建与集成,Luna 进行只读审查,确保临时测试在硬强化阶段前被过滤,实现代码变更的可验证性。
Trigger Scenarios
Install
npx skills add regenrek/codex-proofloop --skill proofloop-sol-luna -g -y
SKILL.md
Frontmatter
{
"name": "proofloop-sol-luna",
"description": "Run bounded Sol implementation work with an enforceable Git-based test-distillation gate and an optional fresh read-only Luna review, without Herdr or a background watcher. Use when agent-generated tests should remain temporary during BUILD and require proof before permanent admission in HARDEN."
}
Proofloop: Sol and Luna
Keep Sol responsible for intake, architecture, the sole-writer patch, integration, and the final decision. Luna is optional and read-only. This variant runs directly in Codex and does not require an orchestrator, pane manager, watcher, daemon, or long-lived heartbeat.
Start from project policy
-
Find the repository root and read every applicable
AGENTS.md. -
Locate the project profile named there. If none exists, adapt assets/project-profile.template.json and the AGENTS.md template inside the project.
-
Create one run contract from assets/run-contract.template.json. Keep paths project-relative and use one literal focused validation command.
-
Validate both documents:
python3 scripts/validate_config.py path/to/project-profile.json path/to/run-contract.json
Stop if policy, scope, ownership, or the source task is ambiguous. Never inspect credential contents or copy credentials into prompts, logs, contracts, or evidence.
Run the loop
- Validate the profile and run contract.
- Before the first edit, run
python3 scripts/test_distillation_gate.py snapshotwith absolute project, profile, and contract paths. - Execute BUILD or HARDEN exactly as the contract declares.
- Run the literal focused validation command.
- Run
test_distillation_gate.py settlewith the same three paths. - If
luna_modeselectsbounded-verifier, start one fresh read-only Luna review only after the candidate is frozen. If the host cannot provide that capability, stop and report it; never fake the review or replace it with a background watcher. - Let Sol integrate the result and return one evidence-backed handoff.
The test lifecycle is BUILD -> ACCEPT -> HARDEN -> DISTILL -> PROMOTE OR DROP. Do not add tracked
tests while implementation is still changing. Temporary probes belong only in the declared ephemeral
directory and must be removed before settlement. Acceptance starts a new HARDEN contract and a new
baseline; never switch phases inside one contract.
Production code is not subordinate to speculative tests. Classify a failed proposal as BUG,
BAD_ORACLE, or LOW_VALUE before changing production code. Keep runtime changes, temporary
validation, permanent tests, and documentation separable. Read
references/testing.md for admission evidence and
references/orchestration.md for the native run lifecycle.
Keep Luna bounded
Use Sol only by default. A selected Luna verifier receives only the frozen accepted diff, relevant
existing tests, temporary candidates or findings, acceptance criteria, proposed admissions, and the
explicit test budget. Luna may return CATCH, PROMOTE, MERGE, or DROP; it must not edit files,
invent more edge cases, broaden the test plan, or delegate further. Sol owns the final decision.
Return one handoff
Report the task, source, phase, sole writer, files changed, focused validation result, gate verdict, admission decision, evidence paths, manual acceptance still required, and any stop condition. Do not claim subjective or manual quality without its human owner's acceptance.
Version History
- dc752ee Current 2026-08-12 20:52


