- domain-packs/ios-app/: komplett referanse-pakke (8 komponenter) — pack.json med components-map, conventions.md, 4 patterns/, gotchas.md, checklist.md splittet i 3 (App Store-submission + security-privacy/MASVS 2.1 + accessibility/WCAG 2.2 AA), 3 scaffold/-maler (PrivacyInfo.xcprivacy-plist, NSUsageDescription-inventar, ASC-metadata), eksempel-feature-brief i Voyage strict-mode-format, glossary.md. Hver teknisk påstand verifisert mot Apple Developer / W3C WAI / OWASP MAS. - domain-packs/claude-code-plugin/: stub — pack.json + conventions.md + gotchas.md + checklist.md + glossary.md ferdige (ekstrahert fra ktg-privat-konvensjoner); patterns/scaffold/examples er stubs. - docs/domain-pack-spec.md: § D2/D3/D4/D7 + restrisiko oppdatert — pack.json components-felt, core/supplementary låst til manifestet, checklist-splitt-konvensjon, snapshot-materialiserings-mekanikk presisert, iOS-versjons-korreksjon (iOS 26, ikke "iOS 18/19"), D7 → "forfattet i S6". - prototype-run/friksjon.md: #9 (Akashic-briefen refererer "iOS 19" som ikke finnes — rettes i S7) + S6-prosessnotater (checklist-splitt bekreftet nødvendig, components-gap fylt, verifiserings-asymmetri ios-app vs claude-code-plugin notert). - CLAUDE.md: peker til domain-packs/ under § Status. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
64 lines
3 KiB
Markdown
64 lines
3 KiB
Markdown
<!-- domain-pack: claude-code-plugin · component: checklists · core -->
|
|
<!-- Ekstrahert 2026-05-12 fra ktg-privat CLAUDE.md + .claude/rules/. -->
|
|
|
|
# Claude Code-plugin — sjekkliste
|
|
|
|
Fase-exit-kriterier for en plugin i ktg-privat-mønsteret. En `[skip]`-merket linje begrunnes i `00-context/pack-overrides.md`.
|
|
|
|
## A. Struktur & manifest
|
|
|
|
- [ ] `.claude-plugin/plugin.json` finnes, gyldig JSON, `auto_discover: true`.
|
|
- [ ] Mappestruktur følger mønsteret (`commands/`, `agents/`, `skills/`, `hooks/`, `templates/` etter behov).
|
|
- [ ] `README.md` finnes og beskriver plugin-formål + hovedcommand.
|
|
- [ ] `CLAUDE.md` finnes, **< 100 linjer**, tabell-basert.
|
|
- [ ] `*.local.md` i `.gitignore`.
|
|
- [ ] **`plugin-dev:plugin-validator` kjørt og passerer** (struktur, frontmatter, cross-komponent-koherens).
|
|
|
|
## B. Navnekonvensjoner
|
|
|
|
- [ ] Commands: `command.md` → `/plugin:command`.
|
|
- [ ] Agents: `descriptive-name-agent.md`.
|
|
- [ ] Skills: `skill-name/SKILL.md` (+ `references/*.md` ved behov).
|
|
|
|
## C. Frontmatter
|
|
|
|
- [ ] Hver command har `name`, `description`, `allowed-tools`, `model`.
|
|
- [ ] Hver agent har `name`, multi-line `description` med **when-to-use** + eksempler, `model`, `color`, `tools`.
|
|
- [ ] Hver skill har `name` + en `description` som beskriver hva **og når** (triggering-effektiv — kjør `plugin-dev:skill-reviewer`).
|
|
|
|
## D. Hooks (hvis pluginen har hooks)
|
|
|
|
- [ ] `hooks/hooks.json` finnes; `hooks` er et **objekt** med event-nøkler.
|
|
- [ ] `matcher` er en string, ikke et objekt.
|
|
- [ ] Stier bruker `${CLAUDE_PLUGIN_ROOT}`.
|
|
- [ ] `"hooks"` er **ikke** deklarert i `plugin.json`.
|
|
- [ ] Hook-scripts er `.mjs` (eller bash 3.2-kompatible hvis bash er nødvendig).
|
|
- [ ] Hver hook står i `CLAUDE.md`s hook-tabell (event, script, formål).
|
|
|
|
## E. Context-budget
|
|
|
|
- [ ] Ingen agent-invokasjon laster > 3 knowledge-filer.
|
|
- [ ] Ingen hele-katalog-lasting — spesifikke filer navngis.
|
|
- [ ] Registrerte `subagent_type` brukes (ikke `general-purpose` + "les agentfilen").
|
|
- [ ] Sekvensiell agent-spawning som default (parallell begrunnet der brukt).
|
|
- [ ] SKILL.md bruker progressive disclosure.
|
|
|
|
## F. Dokumentasjon & kvalitet
|
|
|
|
- [ ] `CLAUDE.md` har alle påkrevde seksjoner: tittel/beskrivelse, commands-tabell, agents-tabell, hooks-tabell, arkitektur, state-håndtering (hvis relevant).
|
|
- [ ] `CLAUDE.md` scorer **Grade B (70+/100)** på config-audit-kvalitetsvurderingen.
|
|
- [ ] `CLAUDE.md`-oppdatering er i **samme commit** som endringen den dokumenterer.
|
|
- [ ] Linear-label dokumentert i `CLAUDE.md` (hvis konvensjonen gjelder).
|
|
|
|
## G. Commit & release
|
|
|
|
- [ ] Conventional Commits (`type(scope): beskrivelse`).
|
|
- [ ] Versjonsbump → alle versjons-refererende filer oppdatert i samme commit (`plugin.json`, README-badges, CHANGELOG, konstanter).
|
|
- [ ] Committet + pushet (Forgejo, ikke GitHub).
|
|
- [ ] Marketplace-sync hvis pluginen er nyregistrert/omdøpt.
|
|
|
|
## H. Røyktest
|
|
|
|
- [ ] Alle slash-commands kjører uten feil.
|
|
- [ ] Agenter triggerer på sine beskrevne situasjoner.
|
|
- [ ] Hooks fyrer og oppfører seg som forventet (ingen falske positiver som blokkerer arbeid).
|