70 commits since v0.11.0 (minor bump)
- feat(F162.10): cms coverage/check-editable --sitemap — sites own their own page list
- feat(F162.7): cms check-editable — reusable page-level visible-text scan (Gate A.1)
- fix: translate=no on root — stop Google-Translate crashing the admin (⌘K)
- feat(F162.1): coverage --baseline (F086 no-new-gaps) — @webhouse/cms-cli 0.4.22
- fix(F157): inline-edit/token uses getSiteRole (proxy cookie), not raw-Bearer re-verify
- feat(F157): POST /api/inline-edit/token — headless editSession mint
- feat(F162.1): union coverage across pages — card-context is not a false gap
- feat(F162.1): coverage parser accepts webhouse.app GET /api/schema shape
- feat(F162): publish @webhouse/cms-cli 0.4.21 — Gate A + B tooling
- feat(F162.5): Gate B — cms check-text hardcoded-text scanner
- feat(F162.3): token-safe inline edit — preserve {år}-style auto-tokens
- feat(F162.1): cms coverage command — inline-edit coverage gate
- feat(cms-inline-edit): rescanFields() for SPA soft-nav field wiring — v0.4.20
- fix(inline-edit): 0.4.19 — edit affordance only in edit mode
- fix(inline-edit): real logout + CORS origin normalization
- feat(cms-inline-edit@0.4.18): idle⇄editing state + customer-safe by default
- fix(F157.4): compute canEditContent server-side, not from /api/auth/me
- feat(F157.4): "Redigér live" launcher button in cms-admin content editor
- feat(cms-inline-edit): field-slice save for multi-segment bodies (F003.2)
- feat(cms-inline-edit): numbered + bullet list buttons in edit toolbar