Skip to content

Merge release/1.7.8 into trunk - #3058

Merged
katinthehatsite merged 22 commits into
trunkfrom
merge/release-1.7.8-into-trunk
Apr 10, 2026
Merged

Merge release/1.7.8 into trunk#3058
katinthehatsite merged 22 commits into
trunkfrom
merge/release-1.7.8-into-trunk

Conversation

@wpmobilebot

Copy link
Copy Markdown
Collaborator

Merging release/1.7.8 into trunk.

Via intermediate branch merge/release-1.7.8-into-trunk, to help fix conflicts if any:

                           release/1.7.8  ----o-- - - -
                                               \
          merge/release-1.7.8-into-trunk        `---.
                                                     \
                                   trunk  ------------x- - -
wpmobilebot and others added 21 commits April 9, 2026 04:42
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
* Moved the `code` command registration in `apps/cli/index.ts` so that top-level CLI commands appear in alphabetical order
* Strip bloated plan.features from wpcom_request responses

The WP.com /sites/{id} endpoint returns a plan object whose features
sub-field alone is 60K+ characters, pushing the total response past
Claude Code's ~100K character MCP tool result limit. The agent only
needs product_slug, is_free, and expired to gate features, since the
system prompt hardcodes what each plan tier can and can't do. Strip
plan.features and keep only essential plan properties.

* Also compact large array responses by stripping content and _links

List endpoints like GET /templates can return 80K+ chars of block markup.
Strip content and _links from array items when the response exceeds 80K
chars — the agent can still identify items by slug/title and fetch
individual ones for full content.

* Add _fields prompt guidance and scope plan compaction as special case

Add system prompt hint instructing the agent to use _fields on wp/v2
listing endpoints to minimize response sizes. Scope compactResponse()
to only handle plan.features stripping with a clear comment that this
is a special case (the API doesn't support sub-field filtering). Remove
the generic array compaction in favor of prompt-driven field selection.

* Add fields guidance for v1.1, rename stripOversizedFields

Update system prompt to instruct the agent to use fields (v1.1) and
_fields (wp/v2) to minimize response sizes, always including ID for
v1.1 requests. Rename compactResponse to stripOversizedFields for
clarity.

* Remove indentation in JSON to save tokens
Co-authored-by: Kateryna Kodonenko <kateryna@automattic.com>
* Filter out deprecated warnings from fatal errors

* Ensure our error filtering approach is consistent with CLI

* Apply changes to default exporter

* Fix unit tests

---------

Co-authored-by: Kateryna Kodonenko <kateryna@automattic.com>
* Ensure startAiAgent() checks whether ~/Studio exists before launching the Claude SDK.
node exceeds the maximum length the compiler will serialize. An explicit
type annotation is needed. (ts 7056)
* Update Sync and Preview illustrations with dark mode support and dot grid background

Rebuild the Sync tab illustration SVG with proper light/dark mode color switching.
Update the Preview tab browser chrome to use light colors in light mode.
Add an interactive DotGrid canvas component behind both illustrations with a
radial gradient mask for a clean fade effect.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Extract IllustrationGrid wrapper, use CSS tokens in SVGs, add tests

- Extract shared IllustrationGrid component (DotGrid + radial mask)
  used by both Sync and Preview tabs
- Replace hardcoded SVG colors with CSS custom properties
  (--color-frame-surface, --color-frame-bg, etc.) so illustrations
  adapt automatically to theme changes
- Scope SVG class names with short prefixes (sti-, sds-) to avoid
  collisions
- Add basic tests for DotGrid and IllustrationGrid components

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Mock DotGrid in sync tests to fix canvas error in jsdom

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Respect prefers-reduced-motion in DotGrid

When reduced motion is preferred, render a static grid with no intro
animation, hover repulsion, or click ripples. Mouse event listeners
are not attached at all. The grid still responds to resize and color
scheme changes.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Keep WP logo white in dark mode on blue browser, dedup resize logic

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Solve for strange sidebars

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: katinthehatsite <katerynakodonenko@gmail.com>
Co-authored-by: Kateryna Kodonenko <kateryna@automattic.com>
…3050)

* CLI: upgrade archiver to v7 to fix glob and inflight deprecation warnings

archiver@6 → archiver@7 pulls in archiver-utils@5 which uses glob@10
instead of glob@8, eliminating the glob and inflight deprecation warnings.

@types/archiver@7 dropped followSymlinks from CoreOptions (it's still
supported at runtime), so cast ArchiverOptions at call sites instead of
patching node_modules. Also fixes the broken ProgressData named import
which doesn't work with the export= module style in @types/archiver@7.

* Studio: upgrade archiver to v7, drop @types/archiver patch

Consistent with the CLI upgrade. Drops the @types+archiver+6.0.4 patch
in favour of the same cast-based approach used in apps/cli.

* Studio: remove obsolete archiver@6 runtime patch
The info icons next to the push progress bar had no fill color class,
defaulting to black which is invisible on the dark background. Add
fill-frame-text-secondary to match the existing offline icon style.
* Update CLI README

* Tweaks

* More tweaks

* Tweak

* Wider
* Enforce minimum node version in the CLI

* Tweaks

* Allow translations to load first
@wpmobilebot wpmobilebot added the Releases For anything related to the release process label Apr 10, 2026
@wpmobilebot

wpmobilebot commented Apr 10, 2026

Copy link
Copy Markdown
Collaborator Author

📊 Performance Test Results

Comparing 4304494 vs trunk

app-size

Metric trunk 4304494 Diff Change
App Size (Mac) 1285.76 MB 1285.76 MB +0.00 MB ⚪ 0.0%

site-editor

Metric trunk 4304494 Diff Change
load 1873 ms 1856 ms 17 ms ⚪ 0.0%

site-startup

Metric trunk 4304494 Diff Change
siteCreation 8150 ms 9116 ms +966 ms 🔴 11.9%
siteStartup 4309 ms 4296 ms 13 ms ⚪ 0.0%

Results are median values from multiple test runs.

Legend: 🟢 Improvement (faster) | 🔴 Regression (slower) | ⚪ No change (<50ms diff)

# Conflicts:
#	apps/cli/package.json
#	apps/studio/package.json
#	package-lock.json
#	tools/common/translations/studio-es.jed.json
@katinthehatsite
katinthehatsite merged commit ce03481 into trunk Apr 10, 2026
10 checks passed
@katinthehatsite
katinthehatsite deleted the merge/release-1.7.8-into-trunk branch April 10, 2026 14:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Releases For anything related to the release process