Two consecutive Soul passes on Cut 6b ended their turn while a mutation run
or a build was still going, delivering no findings until Self resumed them.
The Hands brief has carried this rule since the Ghostlight run; the Soul
brief now carries it too.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
A Soul pass ran a mutation that changed nothing and it killed a test. The
harness's text round-trip had collapsed a non-ASCII literal, so the
corruption alone failed the test and every mutation through that path would
have reported a kill. A working suite and a broken one look the same from
the verdicts; only a control tells them apart.
The audit that followed found every committed suite lossless and the
corrupting script inline and gone, which is the standing "no artifact on
disk" finding applied to Soul. So the rule binds Soul's harness as well as
Hands', and the Hands and Soul briefs both carry it.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Both rules come from the Ghostlight L0 run, which hit the missing typed-state
primitive six ways and nearly lost the requirement each time, because every
workaround worked. Doctrine already says not to wait on a service that does not
exist; nothing said to leave evidence while working around it. Now it does.
The second is a verification defect, not a state one. A Mind Steward reported a
stale phrase gone because a line break had split it from its grep. Prose
reflows, so an exact search over it has the same limits as any other text
scanner, and a check that cannot see its target closes the question instead of
answering it.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The Soul template now attacks constructibility at sealed boundaries (a
derive is a public constructor, and on stable rustc a compile_fail test does
not pin its error code). It also asks for forgeries shaped like real values
and treats text scanners as tripwires with stated limits.
The Hands template now says to wait for long jobs instead of reporting a
to-do list, to restore mutations without git checkout, to measure warnings
from forced rebuilds, and to prefer semantic tools for semantic properties.
The fork rule now weighs proportion: a fork guarding only against the
project's own code gets a default and a recorded follow-up.
Evidence: Ghostlight's library extraction postmortem, recorded in the
changelog.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The skill's own changelog already carried the 2026-09-16 ruling that the organ
depends on Qdrant directly. The overview line still promised voidbot, which is
steering text an agent would read at the next cut.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Soul checked the committed history. The script already threw on a missing
anchor, the affected mutation existed only in the working copy, and every
committed verdict was real. The rule stands, and gains the uniqueness check,
but the incident was narrower than first recorded.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Two rules from the Eureka campaign's own cuts. A deletion can take a live
rule's only test with it, so a cut that deletes must list every rule that lost
its test and either delete the rule or pin it in the same cut. And a mutation
whose anchor never matched is not a passing mutation: a multi-line anchor
matched nothing on a CRLF tree, reporting a verdict it had not earned.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The operator stopped a design in which a repo owned the pipeline store. Three
Soul passes had gone into a per-clone lease, git-directory resolution and
committed attribute checks, and the resolution still landed a store in an
unnamed directory. An instance owns its mind instead, and a service owns the
state.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Operator ruling: Eureka has no Persona. Self is the operator surface, and a
blocking question may be pushed through whatever notification MCP the user
configures, so Eureka owns no transport. Answering over a chat channel is a
later campaign.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The rules come from the first Eureka pipeline-state cuts. Soul could not rerun
mutations that were only named. A digest captured from new code proved nothing
about the old code. A detached mutation script died silently on a parse error.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Eureka is extracted from the Aetheria CultCache migration and is the Claude
Code counterpart of Epiphany. It covers the faculty loop, brief templates,
the cut map shape, the postmortem template, the worked example, a dated
comparison with Epiphany, and a changelog tying each rule to its evidence.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>