Consume the v5.6 Foundation enumeration in buildManifest:
- Component-level sources: drop the coarse `kind:'plugin'` roll-up (it
double-counted skills/rules/agents already enumerated once). Kinds are now
claude-md/skill/rule/agent/output-style/mcp-server/hook.
- Every source carries loadPattern/survivesCompaction/derivationConfidence.
Rules/agents/output-styles propagate the foundation-derived values; CLAUDE.md
maps scope→kind (all cascade files always-loaded); skills are tagged on-demand
(skill-body) so the body cost does not inflate the always-loaded subtotal.
- New `summary` (always/onDemand/external/unknown {tokens,count}); the
always-loaded subtotal — "tokens that enter context every turn" — is the headline.
manifest is an environment-aware CLI → SC-6/SC-7 verify it by mode-equivalence,
not byte-equal, and it is not in SC-5. Adding fields in place keeps all snapshots
green with no regen (verified). `total` changes (de-duped) — intended correctness fix.
TOK's load-pattern column (byte-equal SC-6) is deferred to the next chunk (B2).
Tests 996→1008 (deterministic buildManifest unit test + CLI presence checks).
Self-audit A/A, scanner count unchanged at 13.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
4.3 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.6 B1 = manifest load-pattern accounting LANDET på main — B2/TOK + C neste)
v5.5.0 released. v5.6 Foundation landet (62d910e). Nå: v5.6 B delt i to — B1 (manifest) implementert + committet på main (TDD). TOK-kolonnen ble bevisst utsatt (B2) fordi TOK er en byte-equal SC-6-CLI (krever snapshot-håndtering); manifest er env-aware → mode-equivalence → byte-stabil UTEN regen. Suite 1008 (996→1008), self-audit A/A (config A, plugin A), count 13 (ingen ny scanner). v5.6 IKKE release-cuttet (krever B2 + C + eget GO).
Gjort denne økten (2026-06-20, lør — pushet hvis i vindu)
buildManifest(scanners/manifest.mjs): komponent-nivå — plugin roll-up FJERNET (dobbelttalte komponenter; plugin-bidrag enumereres allerede én gang som skills/rules/agents/output-styles/hooks/mcp). Source-kinds nå claude-md/skill/rule/agent/output-style/mcp-server/hook. Hver record fårloadPattern/survivesCompaction/derivationConfidence. Rules/agents/output-styles propagerer Foundation-verdiene; CLAUDE.md scope→kind viaCLAUDE_MD_SCOPE_KIND(alle cascade-filer walker opp → always); skills tagget on-demand (skill-body— målt token = body, ikke always-listing). Nysummary(always/onDemand/external/unknown {tokens,count}) i CLI-output. NysummarizeByLoadPattern(eksportert).- Headline: always-loaded subtotal. På plugin-rota: 24,3k always / 107 kilder (101 agenter dominerer), vs 125k on-demand (skill-bodies), 855 external (hooks).
totalendret (de-dup) — tilsiktet korrekthetsfiks. - Tester: +12 (deterministisk enhetstest på
buildManifestmed syntetisk activeConfig: loadPattern per kind, summary-reconcil, plugin/disabled-mcp ekskludert fra total; + CLI loadPattern/summary-presence). Endret bruttkind==='plugin'-test → komponent-nivå. - Docs (docs-gate): README (badge 996→1008, prosa + 3 manifest-beskrivelser), CLAUDE.md (test 1008 + ny «manifest — load-pattern accounting (v5.6 B)»-seksjon + tabellrad), scanner-internals manifest-rad.
Åpne tråder / neste steg (prioritert, alle KREVER GO)
- v5.6 B2 (TOK load-pattern-kolonne): legg loadPattern på token-hotspots source-records. TOK ER byte-equal SC-6 → bevar v5.0.0-baseline via normalizer-strip (additive felt ignoreres, frozen-kontrakt intakt) + regen SC-5 default-output/token-hotspots.json (UPDATE_SNAPSHOT=1). Foundation + manifest-mønsteret ligger klart.
- v5.6 C (output-style scanner): ny
CA-OST(count 13→14): keep-coding-instructions/force-for-plugin/dead outputStyle. Badge + lore + humanizer/scoring/discovery-wiring. - v5.6 release-cut: etter B2+C (eget GO, som v5.5.0).
- v5.7: D (mechanism-fit, heuristisk, precision-gated).
- llm-security KRITISK (annet repo) + 3 aktive plugins + STATE-sveip — uendret.
Gotchas (UFRAVIKELIG)
- manifest er env-aware → SC-6/SC-7 = mode-equivalence (--json==--raw), IKKE byte-equal. Derfor byte-stabil ved add-field-in-place (verifisert). TOK er motsatt (byte-equal) — B2 må håndtere snapshot. manifest IKKE i SC-5.
- manifest har INGEN findings → ingen humanizer/fix-engine-tittelkobling (gjelder kun finding-scannere).
- Skill on-demand, IKKE always: målt token = body (invoke). Always-listing (navn+desc) er liten, spores av skill-listing-budget/posture. Ikke tagg skill-body always — det blåser opp headline.
- Versjon KUN i plugin.json + README version-badge. tests-badge = EKSAKT
ℹ tests Nfranode --test(self-auditcountTestCases); verifiserreadmeCheck.passed:true/mismatches:[]via--json. 1008 nå. - docs-gate (non-marketplace gren) krever ≥3 ikke-ws-linjer i README OG CLAUDE.md for
feat:. Oppfylt ærlig denne økten. Alt.:[skip-docs]. - Scanner-count 13. C gir 14. Path-guard blokkerer Write på
.claude-plugin/+settings/hooks → hermetiskmkdtempi tester. Push-vindu: hverdag 20–23, helg fritt.
Scope-gjerde
v5.6 B1 (manifest) godkjent (GO) og landet. B2 (TOK) + C + release-cut + v5.7 + andre repos = egne GO. Ikke start B2 uten GO.
Kontinuitet
Tre lag: STATE.md (tracked) + auto-memory + CLAUDE.md. Oppdater DENNE som siste handling.