Skip to content

feat(artipod): preview collaborative MIME email and MDY editing - #757

Draft
horner wants to merge 1 commit into
mainfrom
feat/mime-mdy-mvp
Draft

horner wants to merge 1 commit into
mainfrom
feat/mime-mdy-mvp

Conversation

@horner

@horner horner commented Nov 12, 2026 •

Copy link
Copy Markdown
Member

Display complete MIME messages and compose replies with protected attachments, or edit MDY documents, through a new experimental @mieweb/ui/artipod entry. Storybook embeds synthetic plain, HTML-only, nested/Unicode MIME and CID-image examples plus hardcoded MDY; no IMAP server or mail account is needed. Send prepares message bytes and a separate recipient envelope for inspection without transmitting mail.

The host owns a protected Artipod StorageSession, authorization, draft identities, and canonical Y.Doc. Each editor borrows its own Kerebron body binding. Shared Views demonstrates live editing, independent hide/show, and lock/unlock. Draft save persists the exact captured Yjs snapshot and immutable attachment references; reopen restores protected OPFS data. MIME previews sanitize HTML, block outside URLs, and resolve authorized CID/Content-Location parts through revocable blob leases. Delivery omits Bcc headers.

Refs #755; phased plan, setup and test steps. Dependencies: mieweb/kerebron#164 and mieweb/artipod#148 (which builds on mieweb/artipod#130). This is an additive MVP checkpoint; existing editor components are unchanged.

Validation:

  • All 2,755 unit tests pass, including 34 focused integration/component tests; typecheck, lint, formatting, package build, static Storybook build, and catalog checks pass (seven existing catalog warnings).
  • Live browser checks passed email display/CID decoding, Unicode headers/filenames, HTML-only reply quoting, reply/edit/attachment/save/reopen, delivery/Bcc envelope output, MDY front-matter export and full reload, shared edits, sibling detach/remount, lock redaction, phone layout, dark theme, and RTL address isolation.
  • Seven functional browser regression cases are authored and discovery/typechecking pass. The CLI Chromium/visual suite was not run because this session requires browser interaction through CUA; manual CUA browser evidence is above. No screenshot baselines were created or updated.

Release gates: upstream APIs are unreleased, so this draft uses locally packed packages via scripts/install-artifact-mvp.mjs; ordinary CI/consumer installs require coordinated published dependencies first. Optional peer ranges are provisional. Objects/messages buffer at 10 MiB; the synthetic demo key service supplies no production authentication. Arbitrary-size streaming, authenticated remote-user transport, 50-field/eSheet scopes and overrides, complete MIME conformance, owner approvals, and migration/deprecation remain later milestones. Do not publish this preview as a completed release.

Hosted preview status: Cloudflare Pages reports a failed build for 8084dac; its GitHub check summary provides no error details. The local builds above use the documented packed upstream dependencies. Treat this as a local Storybook review checkpoint, with hosted build/standard-install validation still open.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Nov 12, 2026 •

Copy link
Copy Markdown

Deploying ui with  Cloudflare Pages  Cloudflare Pages

Latest commit: 8084dac
Status:🚫  Build failed.

View logs

@horner horner changed the title feat(artipod): add collaborative MIME and MDY Storybook preview feat(artipod): preview collaborative MIME email and MDY editing Nov 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant