100%

Goal

/condensate compacts the impl-hygiene finding-category rules in a regeneration-safe way: it never compresses the READ-ONLY GENERATED region of impl-hygiene.md (compaction routes to the impl-hygiene-rules.json SSOT, or the generated file/region is excluded).

Implementation Sketch

Teach /condensate (.claude/skills/condensate/ + its runtime) that impl-hygiene.md carries a READ-ONLY GENERATED region rendered from impl-hygiene-rules.json. Either (a) exclude the generated region/file from in-place compaction, and/or (b) route finding-category compaction to the JSON SSOT so the generator emits already-condensed output. The next JSON->md regeneration must not silently revert condensate’s work.

Spec References

scripts/impl_hygiene_rules_runtime/generator.py (READ-ONLY GENERATED banner); .claude/skills/condensate/SKILL.md; SRP/SSOT (CLAUDE.md).

Work Items

  • Update /condensate to exclude the generated region of impl-hygiene.md (and impl-hygiene-authoring.md) from in-place compaction and/or route finding-category compaction to the impl-hygiene-rules.json SSOT.
  • pytest/guard: a condensate run leaves the generated impl-hygiene.md region byte-identical to a fresh JSON->md regeneration (no lost compaction, no read-only-file edit).

Items

  • Make /condensate skip any in-scope file whose content carries the READ-ONLY GENERATED banner, driven by a shared is_generated_view() predicate (the banner predicate already implemented in scripts/impl_hygiene_rules_runtime/staleness_lint.py:_BANNER / _GENERATED_VIEWS), NOT a hardcoded impl-hygiene.md / impl-hygiene-authoring.md filename. The exclusion must be a no-op today (impl-hygiene.md is banner-less / pre-cutover) and a hard exclusion the instant the file is cut over to the generated form. Update both .claude/skills/condensate/SKILL.md §Scope and its runtime so finding-category compaction routes to the impl-hygiene-rules.json SSOT (or the banner-carrying file is excluded), so the next JSON->md regeneration never silently reverts /condensate’s work.
  • pytest/guard pinning the regeneration-safety property via the shared is_generated_view() predicate: (a) when impl-hygiene.md / impl-hygiene-authoring.md carry the READ-ONLY GENERATED banner, a /condensate run leaves the generated region byte-identical to a fresh JSON->md regeneration (no lost compaction, no read-only-file edit) AND check-condensate-gate.sh treats the banner-carrying file as exempt from the size/prose cap; (b) when the file is banner-less (today’s pre-cutover state) /condensate processes it normally and the gate enforces normally — proving the fix is predicate-driven, not filename-hardcoded, on BOTH surfaces.
  • Provide ONE shared is_generated_view(path_or_content) predicate (banner-detect) consumed by BOTH /condensate (this section §04) and the rule-edit-guard (§05, s-4d8b586e). Home it in the impl-hygiene rules runtime (e.g. scripts/impl_hygiene_rules_runtime/api.py) folding the existing staleness_lint.py:_BANNER / _GENERATED_VIEWS detection and generator.py:_GENERATED_BANNER so there is a single banner source of truth; both §04 and §05 import it rather than re-deriving the banner string (avoids LEAK:algorithmic-duplication across the symmetric twins).
  • Land the banner-predicate exemption in check-condensate-gate.sh: the gate’s Claude-artifact filter currently matches .claude/rules/*.md with no generated-file exemption (script lines ~76-83), so it would enforce the size/prose cap on a cut-over generated impl-hygiene.md. Add a banner check (consuming the same is_generated_view() predicate) so a READ-ONLY GENERATED file is skipped by the gate — keeping the skill scope and the pre-commit gate in lockstep (both enforcement surfaces fixed).

Fresh intel (regenerated)

{ “schema_version”: 1, “target”: { “kind”: “plan-section”, “ref”: “impl-hygiene-review-run-lifecycle/s-30c4d38e” }, “generated_at”: “2026-06-21T17:32:49.390911+00:00”, “graph_state”: { “head_sha”: “45796766”, “last_code_import_at”: “2026-06-21T17:32:26.074Z”, “embedding_stale”: false, “insights_stale”: false, “cpg_stale”: false }, “surfaces”: {}, “summary”: “intel-package[plan-section:impl-hygiene-review-run-lifecycle/s-30c4d38e] agent-authored dossier”, “degraded”: false, “dossier”: { “objective_symbols”: [], “tiers”: {}, “agent_authored”: true, “difficulty”: { “class”: “routine”, “research_online”: false, “research_mode”: “auto”, “signals”: [], “plan_dir”: “/home/eric/projects/ori_lang/plans/impl-hygiene-review-run-lifecycle” } } }

(full dossier: condensate-target-fix—s-30c4d38e.intel.json)