First detector of the 'is the config OPTIMAL?' axis (vs the existing 'correct?' scanners). New orchestrated scanner family CA-OPT (count 14->15), the deterministic half of the hybrid optimization lens. CA-OPT-001 (low, Missed opportunity): a multi-step procedure in CLAUDE.md (>=6 consecutive numbered steps) that belongs in a skill. Reads recommendation + provenance from the best-practices register (BP-MECH-003). Conservative by design; the negative corpus proves null false-positives. Prose-judgment cases (lifecycle->hook, 'never'->permission) are deferred to the Chunk 2b opus analyzer. Wiring mirrors OST: orchestrator entry, humanizer (OPT->'Missed opportunity' + family), scoring (OPT->'CLAUDE.md', existing area -> no new posture row -> byte-stable), strip-helper (OST,OPT), SC-5 regenerated under hermetic HOME (additive OPT entry only). 10 new tests; suite 1045->1055, self-audit A/A, readmeCheck passed (all verified with a clean HOME). Note: the pre-existing TOK test reads the real ~/.claude (non-hermetic) -> run the suite with a clean HOME for deterministic results. Tracked as a separate follow-up. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
4.4 KiB
4.4 KiB
STATE — config-audit
Current state-of-play for DENNE pluginen. Auto-injisert ved sesjonsstart. Overskrives (ikke append) ved sesjonsslutt. Historikk → git (STATE.md er tracked). Stier relative til plugin-mappa.
Aktiv kontekst (v5.7 Fase 1 Chunk 2a DONE — neste: Chunk 2b = opus-analyzer)
v5.6.0 released. v5.7 Fase 1 Chunk 1 (register) + Chunk 2a (linse CA-OPT-001) ferdig & verifisert. Suite 1055 (hermetisk HOME), scanner 15 (CA-OPT), self-audit A/A (plugin 100 / config 94, hermetisk HOME), readmeCheck passed. Plan: docs/v5.7-optimization-lens-plan.md.
v5.7 Fase 1 — låste beslutninger (2026-06-20)
- Rekkefølge: Fase 1 (linse + kunnskapsbase) FØRST, så Fase 2 (kampanje + backlog, eget GO).
- Kunnskaps-format: strukturert JSON-register (zero-dep avgjorde); markdown som speil.
- Linse-motor: ny familie
CA-OPT+ hybrid motor. Chunk 2 splittet i 2a (determ.) + 2b (agent) av chunk-sizing + arkitektur («scannere emitter byte-stabilt; agenter beriker»). - OPT-scoring →
'CLAUDE.md'-area (eksisterende → ingen ny posture-rad → byte-stabil; unngår GAP-utilization-konflikt som'Feature Coverage'ville gitt). Humanizer-kategori'Missed opportunity'(mulighet, ikke feil).
Chunking
- Chunk 1 — Register-fundament: ✅ DONE (
55f83a3). best-practices.json + register-modul + 22 tester. - Chunk 2a — Linsen, determ. del: ✅ DONE (denne økten).
CA-OPT-001: ≥6-stegs nummerert prosedyre i CLAUDE.md → skill (BP-MECH-003), konservativ, negativt korpus = null FP. Full wiring (orchestrator/humanizer/scoring/strip/SC-5 regenerert). 10 nye tester. - Chunk 2b — Linsen, opus-analyzer — NESTE, KREVER GO: ikke-deterministisk agent (søster av feature-gap-agent) for prose-judgment-tilfellene linsen bevisst hopper over: lifecycle→hook (BP-MECH-001), unscoped path-spesifikk→rule (BP-MECH-002), «never»→permission (BP-MECH-004). Leser registeret + CA-OPT-001-kandidatene. Ikke i byte-stabil suite (egen kommando). lensCheck-feltene i registeret navngir detektorene.
- Chunk 3 —
knowledge-refresh: semi-auto poller (--dry-run, stale/candidate, human-godkjente skriv).
Åpne tråder / neste steg (prioritert)
- Chunk 2b (opus-analyzer) — KREVER GO. Les plan-doc + registeret (BP-MECH-001/002/004).
- TOK-test mangler HOME-isolasjon (pre-eksisterende, OUT-OF-SCOPE for 2a):
tests/scanners/token-hotspots.test.mjsrunScanneroverstyrer ikke HOME → TOK leser ekte~/.claude→ «emits zero findings»-asserten er miljøavhengig (rød på ekte HOME, grønn på ren HOME). Kjør suiten med ren HOME for determinisme. Foreslått liten egen fix (eget GO): hermetisk HOME irunScanner. - Fase 2 (kampanje + backlog) — utsatt, eget GO etter linse-validering.
- Åpne design-detaljer (i planen): refresh-kilder/kadens,
/repo-init-synergi. - llm-security KRITISK (annet repo) + 3 aktive plugins — uendret. Egne GO.
Gotchas (UFRAVIKELIG)
- Verifiser suiten med ren HOME. Flere tester (TOK + dermed SC-5/orchestrator via TOK) leser ekte
~/.claude→ ikke-hermetiske.HOME=$(mktemp -d) node --test 'tests/**/*.test.mjs'. Regenerer ALDRI SC-5 med ekte HOME (baker inn sesjons-drift) — bruk ren HOME. - CLAUDE.md-lengde drar config-grade. Hold architecture-tillegg i pluginens egen CLAUDE.md lean; full detalj →
docs/. Mål self-audit mot baseline (ren HOME) FØR commit. Nå: 379 linjer / 25.8k chars (under 500/40k). - Scanner-/familie-tillegg = strip, IKKE re-seed.
strip-added-scanner.mjsADDED_SCANNERS = {OST, OPT}; re-seed KUN SC-5 (ren HOME). Hardkodet scanner-count iscan-orchestrator-humanizer.test.mjs(scanners.length). - Release-cut = 3 filer + annotert tag + catalog. tests-badge
ℹ tests N, scanner-badge,readmeCheck.passed. Nå: 1055, scanner 15. Knowledge-badge teller kun.md. - Persistens (verifisert): sesjoner i
~/.claude/config-audit/sessions/overlever reinstall/oppgradering. - Push-vindu: hverdag 20–23, helg fritt. Auto-commit per chunk + push når naturlig (operatør-beslutning, se memory
chunk-commit-push-flow).
Scope-gjerde
Chunk 1 + 2a komplett, verifisert (ren HOME), committet. Chunk 2b (opus-analyzer) + TOK-fix + Fase 2 = egne GO.
Kontinuitet
Tre lag: STATE.md + auto-memory (config-audit-vision, chunk-commit-push-flow) + CLAUDE.md. Plan → docs/v5.7-optimization-lens-plan.md. Oppdater DENNE som siste handling.