2026-07-04
v1.1.0
Official launch — scoped API keys, live status, and a hardened embed
Meshless is officially open. Alongside launch, this release makes API keys carry their own permissions, fails deleted workspaces closed with a recovery window, and makes the embed runtime leaner and safer.
New
- Permission-scoped API keys — each key now carries its own fixed set of permissions, chosen at creation and immutable afterward, instead of inheriting a role. You can only grant permissions you hold yourself, and keys created before this release keep full access.
- Live system status — the dashboard shows real service status from our status provider in place of static figures.
- Grouped timezone picker — workspace settings replaces the free-text timezone field with a region-grouped list, so you pick a valid zone instead of typing an IANA id.
Improved
- API documentation — the reference now lives at
meshless.io/docs/api-reference, always in sync with the live API; the older in-dashboard developer page has been retired in its favor. - Leaner embed on large captures — the viewer preloads frames within a bounded window and evicts with an LRU cache, so multi-thousand-frame products no longer spike memory or crash mobile tabs.
- Embed origin pinning — a new
data-parent-originattribute pins the viewer's outgoingpostMessageevents to a specific parent origin for stricter isolation. - Hardened embed generation — generated snippets escape their values and hotspot links are restricted to
http(s)targets, closing snippet- and URL-injection edges.
Fixed
- Deleted-workspace access — deleting an organization now revokes its API keys immediately; a stale key can no longer reach data. Workspace data is retained for 30 days for accidental-deletion recovery, then permanently purged.
- Telemetry hygiene — signed upload/download URLs are scrubbed from error and diagnostic reports so short-lived credentials never leak into logs.