docs(devil): document extension lenses for judgment-axis review (#134 G)#438
Merged
Conversation
The ComposedLenseCatalog override path (<content_root>/devil/lenses/ <name>.yaml, merged over bundled defaults, wired in container.ts) was shipped and wired but undocumented — every doc framed devil as security-only. Dogfooded it (authored correctness.yaml, opened a --type system review, filled the lense with zero skip-spam). - devil/README.md: new 'Extending the catalog per content_root' section with a YAML example and the LenseCollision extend-only policy - playbook 'When NOT to use devil': new 'Extending instead of skipping' subsection — the skip-spam warning is about the bundled catalog; an extension catalog removes the spam - CLAUDE.md: corrected the devil one-liner that mislabeled gate's review lenses (devil/layer/cognitive/user) as devil's catalog and called devil security-only
nao-amj
pushed a commit
that referenced
this pull request
Jun 22, 2026
…se を止める (#441) docs- 等 valid category 外の fragment を warn して exit 0 で素通りさせていた (entry 取りこぼし + 孤児が next/ に残留、silence reads as success)。collectFragments が孤児を集め、main が孤児ありなら一覧表示して exit 1 (--dry-run/preview でも発火)。 docs-only は fragment 不要を .changelog/README.md に明文化。 方針 A 採択に伴い、孤児 docs- fragment 4件 (agent-claude-md-refit / devil-extension-lense-judgment / maintenance-executor-drift / swarm-per-slice-closure-resolved) を削除。work は #430/#438 等で既に landed 済み。 0.7.0 リリースの dogfood で surface した friction の改善フェーズ。 Claude-Session: https://claude.ai/code/session_01GFvSe4z4aD7qZxPvJuWC72
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
The
ComposedLenseCatalogoverride path (<content_root>/devil/lenses/<name>.yaml, merged over bundled defaults at startup, wired ininterface/container.ts) was shipped and wired (#134 G) but undocumented — every doc still framed devil as security-only.Dogfooded the path for real before writing: authored a
correctness.yamlextension lense, opened adevil open --type systemreview, and filled the lense with zero skip-spam. The override path works end to end.Changes (docs-only)
src/passages/devil/README.md— new Extending the catalog per content_root section with a YAML example and theLenseCollisionextend-only policy.docs/playbook.md(When NOT to use devil) — new Extending instead of skipping subsection: the skip-spam warning is about the bundled catalog; an extension catalog removes the spam.CLAUDE.md— corrected the devil one-liner that mislabeled gate's review lenses (devil/layer/cognitive/user) as devil's catalog and called devil security-only.Why it matters
devil's essence is the no-gaps coercion (every lense needs an entry before conclude; silent gaps forbidden), not the security content. The extension path lets that coercion guard judgment axes too — the docs now say so.