Skip to content

chore(deps): update @cloudflare/kumo to 2.15.0 - #4308

Open
khoinguyenpham04 wants to merge 21 commits into
mainfrom
noah/kumo-version-update-12d776
Open

khoinguyenpham04 wants to merge 21 commits into
mainfrom
noah/kumo-version-update-12d776

Conversation

@khoinguyenpham04

@khoinguyenpham04 khoinguyenpham04 commented Oct 20, 2026 •

Copy link
Copy Markdown
Collaborator

What does this PR do?

Updates @cloudflare/kumo from 2.6.0 to 2.15.0 and keeps the admin's existing design where Kumo's new defaults would change it:

  • Dialogs. Kumo 2.13 pins dialogs 64px from the top, and Kumo 2.7 gives each size a fixed width. On a 720px-tall window the media picker ran off the bottom of the screen, and its Cancel and Replace buttons couldn't be reached. Confirm dialogs shrank to 288px. A rule in styles.css keeps dialogs centred and sized to their content, with each size as a minimum width, as on 2.6. Dialogs that set a min-w-* class or an sm:w-* width that isn't one of Kumo's sizes still get it. The menu, section and taxonomy dialogs now use sm:w-lg to keep their exact 512px width.
  • Menu icons. Kumo's DropdownMenu now spaces item icons itself, so the extra me-* margins are removed, including in the content list row menus.
  • Table rows. Kumo's Table no longer draws a line under each row and shades every other row instead. The content list, bylines and taxonomy tables keep their row lines and plain rows.
  • Menu insets. Kumo's DropdownMenu now indents rows and labels without an icon when another row has one, using a physical left padding. In the table, calendar filter and HTML block menus, those rows keep their old padding. This also stops the calendar filter menu from shifting sideways when Clear filters appears.
  • Code block toolbar. Kumo's Toolbar now sets corners and dividers from the toolbar itself, which put the divider on the wrong side in RTL. The buttons now use important logical classes.
  • Button types. Button's shape is now a discriminated union, so the table menu trigger is split into its two variants. They render the same as before.
  • Line height. Kumo's text-base and text-lg line heights grew, so the revision view's single-line fields keep a 20px line to match the editor's fixed-height inputs.
  • Media source tabs. Kumo's Button trims leading padding when an icon comes first, so in LTR the Library and From URL tabs now match the Upload button's padding.
  • Table visual test. The RTL steps looked up English labels, which already failed on main after the Arabic catalog was extracted. They now use the Arabic labels.

Visible changes that remain from Kumo:

  • Select menus open below their field instead of over it.
  • text-base and text-lg now have a 1.5 line height (21px and 24px, from 20px), so labels and headings are slightly taller. The confirm dialog is 4px taller as a result.
  • The sidebar group dividers (Content, Manage, Admin) are hidden while the sidebar is expanded. That already happened on main in fix(admin): stop forcing every border to the default gray #4118, but the change was too faint for the screenshot tests, so the baselines updated here are the first to show it.
  • Kumo's Button trims leading padding with a physical pl-* class when an icon comes first, so in RTL the narrower side is next to the text instead of the icon.

The changeset includes AI Search, since its published 0.1.0 requires Kumo 2.6.0, and tells sites to update emdash and the Kumo-using plugins together.

The catalog pin stays exact because the admin ships a prebuilt stylesheet generated from Kumo's dist.

Type of change

  • Bug fix
  • Feature (requires an accepted feature plan or RFC)
  • Refactor (no behavior change)
  • Translation
  • Documentation
  • Performance improvement
  • Tests
  • Chore (dependencies, CI, tooling)

Your connection to this change

  • I use EmDash and ran into the problem this PR addresses
  • I maintain a tool, dependency, or service that EmDash uses, and this change concerns that integration
  • A Maintainer approved this specific change before I opened the PR

Checklist

  • I have read CONTRIBUTING.md
  • pnpm typecheck passes
  • pnpm lint passes
  • pnpm test passes (or targeted tests for my change)
  • pnpm format has been run
  • I have added/updated tests for my changes (if applicable)
  • User-visible strings in the admin UI are wrapped for translation (if applicable). Do not include messages.po changes except in translation PRs — a workflow extracts catalogs on merge to main.
  • I have added and reviewed the user-facing changeset (if this PR changes a published package)
  • New features link to their merged design PR: https://github.com/emdash-cms/emdash/pull/...
  • I have included screenshots below if this PR changes the UI

No new tests: the existing admin tests for the code block toolbar and the revision view, and the bylines e2e test for the media tabs, caught the regressions this PR fixes and now pass. No strings changed. Not a feature, so no design PR.

AI assistance disclosure

  • This PR includes AI-generated code or text — model/tool: Claude Opus 5.5

Screenshots / test output

Admin unit tests (3656), blocks tests (167), typecheck and lint pass. 105 e2e tests pass (media library, bylines, menus, content actions, entry lock, widgets, welcome modal, invite flow, revisions, code blocks, accessibility, i18n). Compared with main at 700×720 and 1280×720, the confirm dialog and media picker have the same position and size.

The media picker at 1280×720, centred with its footer on screen:

Media picker dialog centred in a 1280 by 720 window, with Cancel and Replace buttons visible at the bottom

The Ownership select before and after. The menu now opens below the field instead of covering it:

Before: the Ownership select menu covers the field

After: the Ownership select menu opens below the field

Keeps admin dialogs centred and content-sized, drops the extra menu icon
margin now that Kumo spaces DropdownMenu icons itself, restores the code
block toolbar's RTL edges, and keeps revision fields at the editor's
control height.
@changeset-bot

changeset-bot Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 2c3b33d

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 16 packages
Name Type
@emdash-cms/admin Patch
@emdash-cms/blocks Patch
@emdash-cms/cloudflare Patch
@emdash-cms/plugin-forms Patch
@emdash-cms/plugin-field-kit Patch
@emdash-cms/plugin-ai-moderation Patch
@emdash-cms/plugin-ai-search Patch
emdash Patch
@emdash-cms/plugin-test Patch
@emdash-cms/plugin-embeds Patch
@emdash-cms/sandbox-workerd Patch
@emdash-cms/auth Patch
create-emdash Patch
@emdash-cms/gutenberg-to-portable-text Patch
@emdash-cms/x402 Patch
@emdash-cms/auth-atproto Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@pkg-pr-new

pkg-pr-new Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

Open in StackBlitz

@emdash-cms/admin

npm i https://pkg.pr.new/@emdash-cms/admin@4308

@emdash-cms/auth

npm i https://pkg.pr.new/@emdash-cms/auth@4308

@emdash-cms/auth-atproto

npm i https://pkg.pr.new/@emdash-cms/auth-atproto@4308

@emdash-cms/blocks

npm i https://pkg.pr.new/@emdash-cms/blocks@4308

@emdash-cms/cloudflare

npm i https://pkg.pr.new/@emdash-cms/cloudflare@4308

@emdash-cms/contentful-to-portable-text

npm i https://pkg.pr.new/@emdash-cms/contentful-to-portable-text@4308

emdash

npm i https://pkg.pr.new/emdash@4308

create-emdash

npm i https://pkg.pr.new/create-emdash@4308

@emdash-cms/gutenberg-to-portable-text

npm i https://pkg.pr.new/@emdash-cms/gutenberg-to-portable-text@4308

@emdash-cms/plugin-cli

npm i https://pkg.pr.new/@emdash-cms/plugin-cli@4308

@emdash-cms/plugin-test

npm i https://pkg.pr.new/@emdash-cms/plugin-test@4308

@emdash-cms/plugin-types

npm i https://pkg.pr.new/@emdash-cms/plugin-types@4308

@emdash-cms/registry-client

npm i https://pkg.pr.new/@emdash-cms/registry-client@4308

@emdash-cms/registry-lexicons

npm i https://pkg.pr.new/@emdash-cms/registry-lexicons@4308

@emdash-cms/registry-loader

npm i https://pkg.pr.new/@emdash-cms/registry-loader@4308

@emdash-cms/registry-moderation

npm i https://pkg.pr.new/@emdash-cms/registry-moderation@4308

@emdash-cms/registry-verification

npm i https://pkg.pr.new/@emdash-cms/registry-verification@4308

upgrade-emdash

npm i https://pkg.pr.new/upgrade-emdash@4308

@emdash-cms/sandbox-workerd

npm i https://pkg.pr.new/@emdash-cms/sandbox-workerd@4308

@emdash-cms/x402

npm i https://pkg.pr.new/@emdash-cms/x402@4308

@emdash-cms/plugin-ai-moderation

npm i https://pkg.pr.new/@emdash-cms/plugin-ai-moderation@4308

@emdash-cms/plugin-ai-search

npm i https://pkg.pr.new/@emdash-cms/plugin-ai-search@4308

@emdash-cms/plugin-atproto

npm i https://pkg.pr.new/@emdash-cms/plugin-atproto@4308

@emdash-cms/plugin-audit-log

npm i https://pkg.pr.new/@emdash-cms/plugin-audit-log@4308

@emdash-cms/plugin-color

npm i https://pkg.pr.new/@emdash-cms/plugin-color@4308

@emdash-cms/plugin-embeds

npm i https://pkg.pr.new/@emdash-cms/plugin-embeds@4308

@emdash-cms/plugin-field-kit

npm i https://pkg.pr.new/@emdash-cms/plugin-field-kit@4308

@emdash-cms/plugin-forms

npm i https://pkg.pr.new/@emdash-cms/plugin-forms@4308

@emdash-cms/plugin-webhook-notifier

npm i https://pkg.pr.new/@emdash-cms/plugin-webhook-notifier@4308

commit: 2c3b33d

@emdashbot emdashbot Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The approach is sound: bump the exactly pinned Kumo dependency to 2.15.0 and adapt the admin where Kumo's new defaults would change the existing design (dialog position and width, DropdownMenu icon spacing, RTL toolbar edges, and so on). Neither reviewer found a blocking bug or a convention violation. Both reviews were static, so the PR's reported visual comparisons and test results remain unverified. The first reviewer also could not check the new CSS class selectors against Kumo 2.15's dist. There is one non-blocking suggestion: a CSS comment gives the wrong reason for the existing small-screen dialog rule. The second reviewer raised no findings.


Reviewed by anthropic/claude-opus-5-5 and openai/gpt-6.1-sol.

Comment thread packages/admin/src/styles.css Resolved
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
✅ Deployment successful!
View logs
docs 2c3b33d Oct 31 2026, 10:29 PM

github-actions Bot pushed a commit that referenced this pull request Oct 20, 2026
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

🚀 Deploying Preview to Cloudflare 🚀

Preview URL: https://noah-kumo-version-update-12d776.try.emdashcms.com, https://noah-kumo-version-update-12d776-emdash-playground.emdash-cms.workers.dev (commit 2c3b33d)

This URL reflects your latest Preview deployment

Preview Deployments by commit

Status Deployment URL Commit Updated (UTC) See this deployment's details
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://d544600c.try.emdashcms.com, https://d544600c-emdash-playground.emdash-cms.workers.dev 2c3b33d 2026-10-31T22:30:51.710Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://9fd23c4c.try.emdashcms.com, https://9fd23c4c-emdash-playground.emdash-cms.workers.dev 975e103 2026-10-31T10:02:55.606Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://91cc8654.try.emdashcms.com, https://91cc8654-emdash-playground.emdash-cms.workers.dev 9a39c03 2026-10-29T22:07:49.211Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://8f25ea0b.try.emdashcms.com, https://8f25ea0b-emdash-playground.emdash-cms.workers.dev 585a309 2026-10-29T14:52:41.995Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://5faa4dc7.try.emdashcms.com, https://5faa4dc7-emdash-playground.emdash-cms.workers.dev 6d63664 2026-10-29T12:55:02.322Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://0d6af82d.try.emdashcms.com, https://0d6af82d-emdash-playground.emdash-cms.workers.dev b7e2cca 2026-10-29T12:38:08.902Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://811d9b63.try.emdashcms.com, https://811d9b63-emdash-playground.emdash-cms.workers.dev 73638b5 2026-10-22T16:06:47.150Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://2f580987.try.emdashcms.com, https://2f580987-emdash-playground.emdash-cms.workers.dev 914a157 2026-10-21T07:46:34.023Z Visit the dashboard ↗
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://1d2d43e9.try.emdashcms.com, https://1d2d43e9-emdash-playground.emdash-cms.workers.dev 9de1d2d 2026-10-20T22:01:40.041Z Visit the dashboard ↗
  • Build: In progress 🔵

View logs ↗
9562473 2026-10-20T21:52:20.669Z View logs ↗

View all previews: View all previews ↗

…tions

Kumo 2.15 animates DropdownMenu open and close. The table menus hand focus
back to the editor once the close finishes, so a key pressed during the
transition landed in the closing menu. Table e2e tests now measure after
the open and close transitions settle.
@emdashbot emdashbot Bot added review/needs-review No maintainer or bot review yet and removed review/needs-review No maintainer or bot review yet labels Oct 20, 2026
github-actions Bot pushed a commit that referenced this pull request Oct 20, 2026

@emdashbot emdashbot Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The approach remains sound: update Kumo while preserving the admin’s existing layout and interactions. I reviewed the follow-up diff, including the table-menu exit timing and animation-aware browser-test waits. The revised dialog comment addresses the earlier suggestion, and the author’s clarification is reasonable. No new defects or convention violations found in the changed code.

Review was static; I did not run tests or verify browser rendering.


Follow-up review by openai/gpt-6.1-sol, scoped to the changes since the last review.

The table menu is translated in Arabic now, so the English labels these
RTL steps looked up never appeared.
github-actions Bot pushed a commit that referenced this pull request Oct 20, 2026
github-actions Bot pushed a commit that referenced this pull request Oct 20, 2026

@emdashbot emdashbot Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The approach remains sound: update Kumo while preserving the admin’s existing layout and interactions. I reviewed only the changes since the last review: the menu-animation wait, Arabic visual-test selectors, and table-menu label padding. The selectors match the Arabic catalog and test locale; no new defects or convention violations found.

The earlier dialog-comment concern is settled by the revision and author’s clarification; nothing remains open.

Review was static; I did not run tests or verify browser rendering.


Follow-up review by openai/gpt-6.1-sol, scoped to the changes since the last review.

Kumo 2.15 pads icon-less menu rows and labels with a physical pl-8 when
another row has an icon. Keep the calendar filter, HTML block and table
mixed-header rows on their previous padding, which also stops the
calendar filter menu shifting when Clear filters appears.
github-actions Bot pushed a commit that referenced this pull request Oct 21, 2026

@emdashbot emdashbot Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The approach remains sound: upgrade Kumo while preserving the admin’s existing layout. I reviewed the changes since the previous head: calendar and HTML menu padding, mixed-state table-item padding, comment removal, and changeset clarifications.

The padding overrides preserve RTL-safe spacing, and the release note clarifies coordinated plugin upgrades and the line-height change. The earlier dialog-comment concern remains settled; nothing is still open. No new defects or convention violations found.

Review was static; I did not run tests or verify browser rendering.


Follow-up review by openai/gpt-6.1-sol, scoped to the changes since the last review.

@khoinguyenpham04

Copy link
Copy Markdown
Collaborator Author

/accept-baselines

github-actions Bot pushed a commit that referenced this pull request Oct 29, 2026

@emdashbot emdashbot Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The approach remains sound: update Kumo while preserving the admin’s existing layout, including table styling introduced by intervening main-branch changes.

I reviewed the follow-up diff against the current PR diff, focusing on the new table border and row-background overrides and the affected surrounding markup. No new actionable defects found. The earlier dialog-comment concern remains resolved by the author’s clarification; nothing remains open from that finding.

Review was static. I did not run tests or verify browser rendering, and binary screenshot differences were not visually inspected.


Follow-up review by openai/gpt-6.1-sol, scoped to the changes since the last review.

@khoinguyenpham04

Copy link
Copy Markdown
Collaborator Author

/accept-baselines

@github-actions

Copy link
Copy Markdown
Contributor

✅ Baselines accepted by @khoinguyenpham04 and committed to this PR.

@danielmlr danielmlr left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2 points that came up:

  1. I think AI Search needs to go in the changeset too. The release (#4265) used up its pending changesets, so its published 0.1.0 would keep requiring Kumo 2.6.0 and clash with the update.
  2. The content list menus from #4446 still have me-2 on their icons, so the gap is twice as wide as in the other menus. Dropping it from those six icons in ContentList.tsx would line them up.

@emdashbot emdashbot Bot added review/needs-rereview New commits since the last review and removed review/needs-rereview New commits since the last review labels Oct 29, 2026
@github-actions github-actions Bot added review/awaiting-author Reviewed; waiting on the author to respond and removed review/needs-rereview New commits since the last review labels Oct 29, 2026
… in the Kumo changeset

Kumo 2.15's DropdownMenu spaces item icons itself, so the extra me-2 doubled the gap in the content list row menus. AI Search 0.1.0 was published requiring Kumo 2.6.0, so it needs a release with the new pin too.
@github-actions github-actions Bot added review/needs-rereview New commits since the last review and removed review/awaiting-author Reviewed; waiting on the author to respond labels Oct 29, 2026

@emdashbot emdashbot Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The approach remains sound: upgrade Kumo while preserving the admin’s existing layout and coordinating plugin upgrades.

I reviewed the follow-up changes against the current PR diff, focusing on the content-row menu icon spacing and the expanded changeset’s AI Search coverage and upgrade guidance. No new actionable defects found. The earlier dialog-comment concern remains settled by the author’s clarification; nothing remains open.

Review was static. I did not run tests or verify browser rendering, and binary screenshot differences were not visually inspected.


Follow-up review by openai/gpt-6.1-sol, scoped to the changes since the last review.

@danielmlr danielmlr left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you!

@emdashbot emdashbot Bot added review/needs-rereview New commits since the last review and removed review/needs-rereview New commits since the last review labels Oct 29, 2026
@github-actions github-actions Bot added review/needs-review No maintainer or bot review yet and removed review/needs-rereview New commits since the last review labels Oct 29, 2026
…ate-12d776

# Conflicts:
#	packages/admin/src/components/TaxonomyManager.tsx
#	packages/admin/src/routes/bylines.tsx
Kumo 2.15's DropdownMenu spaces item icons itself, so me-2 doubled the gap in the content type, relation, comment and byline field menus.
@github-actions github-actions Bot added review/needs-rereview New commits since the last review and removed review/needs-review No maintainer or bot review yet labels Oct 31, 2026

@emdashbot emdashbot Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The approach is sound. The PR upgrades Kumo to 2.15.0 and adds targeted overrides so the admin keeps its existing layout, and the changeset coordinates the plugin upgrades. Both reviewers approved and found nothing to fix. The earlier small-screen dialog comment concern is resolved by the reworded comment. Both reviews were static: neither ran tests, checked browser rendering, or inspected the updated screenshot baselines.


Reviewed by anthropic/claude-opus-5-5 and openai/gpt-6.1-sol. The change since the last review (2316 lines) was too large for a scoped follow-up, so this is a full review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants