This release adds 2 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
ReleasePort's take
Light signalemdash 0.12.0 adds site-wide default Open Graph images (absolutized for crawlers) and fixes a stale ref race in the slash command menu keyboard handlers.
Why it matters: Default OG images improve SEO discoverability for pages without custom images. The keyboard handler fix eliminates race conditions in the editor. Test OG defaults in dev before rollout.
Summary
AI summaryAdds site-wide default Open Graph image support and fixes a stale ref race in the slash command menu keyboard handlers.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Feature | Medium |
Site-wide default Open Graph image setting added Site-wide default Open Graph image setting added Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Feature | Medium |
Default og:image and twitter:image emitted unless page has custom image Default og:image and twitter:image emitted unless page has custom image Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Feature | Medium |
Open Graph image URLs absolutized for crawler compatibility Open Graph image URLs absolutized for crawler compatibility Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Feature | Medium |
MediaPickerModal localOnly prop restricts to local media MediaPickerModal localOnly prop restricts to local media Source: llm_adapter@2026-05-21 Confidence: low |
— |
| Feature | Medium |
Automatically emits default og:image/twitter:image when no per-page image exists Automatically emits default og:image/twitter:image when no per-page image exists Source: granite4.1:30b@2026-05-23-audit Confidence: low |
— |
| Feature | Medium |
Absolutizes emitted Open Graph image URLs using site URL or request origin Absolutizes emitted Open Graph image URLs using site URL or request origin Source: granite4.1:30b@2026-05-23-audit Confidence: low |
— |
| Bugfix | Medium |
Slash command menu stale ref race in keyboard handlers fixed Slash command menu stale ref race in keyboard handlers fixed Source: llm_adapter@2026-05-21 Confidence: high |
— |
| Bugfix | Medium |
Media metadata updates and deletes invalidate site settings cache Media metadata updates and deletes invalidate site settings cache Source: llm_adapter@2026-05-21 Confidence: low |
— |
Full changelog
Minor Changes
-
#997
7b45cbaThanks @ascorbic! - Adds support for a site-wide default Open Graph image. The setting is exposed in the admin SEO settings page (Settings -> SEO -> Default Social Image), resolved to a URL on read bygetSiteSettings(), and automatically emitted asog:image/twitter:image(and BlogPosting JSON-LDimage) byEmDashHead.astrowhenever a page has no image of its own. Per-page images still take precedence.This wires up an existing data model that was previously defined in the schema and MCP tools but never used: stored values were not resolved and no template path read the setting.
Emitted URLs are absolutized using
SiteSettings.url, the page'ssiteUrl, or the request origin so crawlers and JSON-LD consumers that reject relative URLs work correctly.Also adds a
localOnlyprop toMediaPickerModalthat suppresses the "Insert from URL" input and external provider tabs. Used by SEO settings to ensure the picker only returns locally-stored media (since the setting only persists a localmediaId).Media metadata updates and deletes now invalidate the worker-scoped site-settings cache, so resolved logo/favicon/default-social-image URLs and dimensions stay in sync with the underlying media row.
Patch Changes
-
#1004
35791ffThanks @ascorbic! - Fixes a stale ref race in the slash command menu's keyboard handlers. The state ref was synced viauseEffect(post-commit), so TipTap's Suggestion plugin could read stale state when invokingonKeyDownsynchronously -- causing Enter to occasionally fail to execute commands and arrow navigation to skip selections on slower runs. -
Updated dependencies [
19576be,35791ff,7b45cba]:- @emdash-cms/[email protected]
- @emdash-cms/[email protected]
- @emdash-cms/[email protected]
- @emdash-cms/[email protected]
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About emdash
All releases →Related context
Earlier breaking changes
- [email protected] Schema migration adds `locale` and `translation_group` columns to `_emdash_bylines`.
- [email protected] Byline hydration now strictly per-locale, suppressing cross‑locale fallback.
- v@emdash-cms/[email protected] Changes `_emdash_content_bylines.byline_id` to store translation_group instead of row id, enforcing strict per-locale credit hydration.
- v@emdash-cms/[email protected] Registry install handler fails closed on non-conforming aggregator release records.
- v@emdash-cms/[email protected] Menu and menu-item API responses now camelCase, breaking clients expecting snake_case keys.
Beta — feedback welcome: [email protected]