Skip to content

Plugin-only verification misparses WP-CLI diagnostic preambles #458

Description

@chubes4

Problem

upgrade.sh --plugins-only can successfully update managed release pointers, then report partial_failure because terminal verification passes the complete WP-CLI output directly to json.loads(). On PHP 8.5, WP-CLI may prefix the JSON/error output with dependency deprecation diagnostics. The parser fails, and the resulting empty/malformed shell values are evaluated by an inline case command substitution.

Reproduction

Run plugin-only upgrade on a WordPress Studio site using PHP 8.5 where WP-CLI emits a diagnostic before terminal plugin-list output.

Observed after a successful DMC release-pointer change:

json.decoder.JSONDecodeError: Expecting value
command substitution: syntax error near unexpected token `newline`
PLUGIN_UPGRADE_RESULT=partial_failure exit=75

Release provenance and the installed plugin file both confirmed the requested version was installed.

Expected

  • terminal verification captures stdout and stderr separately
  • only a validated JSON document reaches the state parser
  • diagnostics return bounded typed verification evidence without shell evaluation errors
  • a successful release-pointer update is distinguishable from activation verification that could not run
  • PHP 8.5 diagnostic-prefixed and database-unavailable fixtures cover the public plugin-only workflow

Related

AI assistance

OpenAI GPT-5.6 Sol via OpenCode executed the bounded upgrader, captured release-pointer and terminal-verification evidence, deduplicated existing trackers, and drafted this report under Chris Huber’s direction.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions