Skip to content

chore: build 1.0.0-rc4 for testing - #106

Merged
ifahimreza merged 1 commit into
mainfrom
build/rc4
Aug 16, 2026
Merged

chore: build 1.0.0-rc4 for testing#106
ifahimreza merged 1 commit into
mainfrom
build/rc4

Conversation

@ifahimreza

Copy link
Copy Markdown
Contributor

Why a new number

18 commits landed on main since the rc3 zip was cut — the MCP handshake fix Mark's report led to, the tier-filtered tool list, the whole July phase stack, the undeclared second endpoint, and the move to @plugpress/ui from npm.

Rebuilding under rc3 would be the exact mistake CLAUDE.md names: two different zips under one number, after which "I'm on rc3" carries no information.

Bumped in the four places that move for a release candidate. readme.txt's Stable tag deliberately stays at 1.0.0 — it never moves for an rc, and version_compare sorts 1.0.0-rc4 below 1.0.0, so every rc install still upgrades cleanly onto the real release.

The zip

dist/saddle-1.0.0-rc4.zip — wporg channel (npx grunt build, never grunt release). 119 files, 616K.

Verified against the zip, not the source tree:

check result
root folder is exactly saddle ✓ (any other name forces a text-domain mismatch on every string)
class-saddle-updater.php absent
includes/lib/ (vendored adapter) absent
tests, dist, scripts, node_modules, vendor absent
dotfiles, Gruntfile, package.json, composer.json, phpunit absent
markdown none
version inside the zip 1.0.0-rc4 / SADDLE_VERSION / Stable tag 1.0.0

"Makes no outbound request" — re-checked, not asserted

  • The only scheduled event is saddle_gc_tokens, a local DB sweep. No remote call on cron.
  • The two self-checks target rest_url() and home_url() — the site's own address.
  • Unsplash only fires with a key the owner entered.
  • The Saddle_Updater reference in saddle.php survives as a class_exists() no-op because the class file isn't in this zip. That's the designed mechanism, not a leak.

Not verified — please run before submitting

Plugin Check against the built zip. I could not get it to run headlessly: this release has no Check_Runner_Factory, its runners are WP-CLI/AJAX-coupled, and Playground's wp-cli step surfaced no output. composer lint (WPCS) is clean at 0 errors, but that is not the same tool — Plugin Check adds readme parsing, trademark and repo-specific checks that phpcs does not cover.

It needs a pass from the Plugin Check admin UI against this zip. Everything else on the release checklist is green.

Everything else

  • composer test — 577 tests, 1944 assertions, green (1 pre-existing skip)
  • composer lint — 0 errors · npm run lint:js — 0 problems
  • Committed admin bundle verified in sync with source
  • languages/saddle.pot in sync (zero msgid delta)
  • Six execution functions: zero hits outside the vendored adapter
  • No filesystem writes outside the vendored adapter

🤖 Generated with Claude Code

https://claude.ai/code/session_01GkZr73cqaSesHRDG89Yy8S

18 commits landed on main since the rc3 zip was cut — the MCP handshake fix
Mark's report led to, the tier-filtered tool list, the whole July phase stack,
the undeclared second endpoint, and the move to @plugpress/ui from npm.
Rebuilding under rc3 would be the exact mistake CLAUDE.md names: two different
zips under one number, after which "I'm on rc3" carries no information.

Bumped in the four places that move for a release candidate. readme.txt's
Stable tag deliberately stays at 1.0.0 — it never moves for an rc, and
version_compare sorts 1.0.0-rc4 below 1.0.0, so every rc install still upgrades
cleanly onto the real release.

Built through the wporg channel (`npx grunt build`, never `grunt release`).
Verified against the ZIP rather than the source tree: root folder is exactly
`saddle` (staging it under any other name forces a text-domain mismatch on
every string), no class-saddle-updater.php, no includes/lib/, no tests, dist,
scripts, node_modules, vendor, dotfiles, build config, or markdown. 119 files,
616K.

The "makes no outbound request" claim re-checked in the shipped code, not
asserted: the only scheduled event is a local token GC sweep, the two
self-checks target rest_url() and home_url(), and Unsplash only fires with a
key the owner entered. The Saddle_Updater reference in saddle.php survives as
a class_exists() no-op because the class file is not in this zip — which is
the designed mechanism, not a leak.

NOT verified: Plugin Check against the built zip. It would not run headlessly
here — this release's API has no Check_Runner_Factory, its runners are
WP-CLI/AJAX-coupled, and the Playground wp-cli step surfaced no output. That
checklist item still needs running from the Plugin Check admin UI before
submission; phpcs (WPCS) is clean, but it is not the same tool.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GkZr73cqaSesHRDG89Yy8S
@ifahimreza
ifahimreza merged commit 56277d2 into main Aug 16, 2026
1 of 7 checks passed
@ifahimreza
ifahimreza deleted the build/rc4 branch August 16, 2026 15:32
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