一键导入
conviction-signalling
Use when flagging branch conviction or calibrating instinct against outcomes.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use when flagging branch conviction or calibrating instinct against outcomes.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
Use when attacking branches to find what the verifier cannot catch.
Use when budgeting, routing, and scaling a run to fit the ask.
Use when selecting the surviving branch on verifier evidence after collision.
Use when recording dead branches so future runs avoid re-litigating them.
Use when isolating branches in git worktrees and reconciling the survivor.
Use when verifying a branch with any stack's real test toolchain.
基于 SOC 职业分类
| name | conviction-signalling |
| description | Use when flagging branch conviction or calibrating instinct against outcomes. |
Conviction ("the wormhole") is the harness's honest channel for instinct: a generator that believes in a non-obvious branch can say so, and the system protects that branch from early pruning — without ever letting belief decide acceptance. Effect on exploration, never on acceptance: that line is the invariant the design rides on.
One line, machine-parsed (regex in pqa/signals.py; byte-identical copy in
hooks/precipitate_capture.py — change both together):
conviction: high, basis: <one sentence naming the non-obvious reason this works>
high | medium | low. Only high protects from early pruning
(Conviction.protects_from_pruning).basis is mandatory and must name a mechanism: "burst absorption beats rejection
for this producer mix" calibrates; "feels clean" does not.conviction/basis fields, so the orchestrator,
the capture hook, and the engine all see one story.| Stage | Effect of conviction: high |
|---|---|
| collision (early pruning) | protected — cannot be dropped for "looking weak" before attack completes |
| adversary | attacked HARDER, not softer — calibration needs the stress |
| verification | nothing; the verifier does not read it |
| collapse | nothing; BranchResult.conviction is telemetry, and scripts/check_invariant.py statically forbids it from entering _rank_key |
| taxonomy / calibration | everything — signals joined to outcomes are the moat |
high only if you would defend the branch under
attack. Faked conviction is exposed by calibration and the harness learns to
discount you — the signal's entire value is its honesty.pqa.memory.record_signal(conn, session, level, basis, branch=...) — the precipitate-capture hook does this automatically for subagent
transcripts that contain the conviction line.update_signal_outcome(conn, signal_id, survived=..., verified=..., won=...). A finished run with outcome-less signals is
a calibration loop with no data — never leave them unfilled.pqa-self-reflector joins
signals to outcomes and emits P(win | conviction=high) vs P(win | no signal). That
number — not the feeling — is the empirical answer to "do hunches mean anything
here?"b2 (scout) digests back: conviction: high, basis: callers can shed load better than any limiter because only they know what's droppable.
verified: false.high, basis verbatim); outcome survived=true, verified=false, won=false; failure row carries conviction: high.Five runs later the calibration table shows high-conviction branches winning at 2× the no-signal base rate in this repo — the instinct is real here, and protecting it next spawn is justified by data. Or it shows 0.5× — and the harness starts discounting. Either answer is the system working as designed.