Skip to content

Mark WordPress media repairs review-only#331

Merged
adamziel merged 1 commit into
trunkfrom
codex/menu-semantic-e2e
May 18, 2026
Merged

Mark WordPress media repairs review-only#331
adamziel merged 1 commit into
trunkfrom
codex/menu-semantic-e2e

Conversation

@adamziel
Copy link
Copy Markdown
Contributor

@adamziel adamziel commented May 18, 2026

What it does

Marks built-in WordPress attachment-upload validator findings with plugin_resolution_policy: review-only and expands the built-in upload validator to reject invalid attachment image dimensions and stale filesize metadata.

Rationale

Missing, duplicate, platform-ambiguous, or malformed attachment metadata should not look like something the generic merge resolver can repair. Reviewers need an explicit signal that the right fix is to restore/update upload files, pick one owner, rename conflicting paths, or regenerate media derivatives in WordPress before accepting the merged state.

Implementation

The built-in attachment upload issue payload now includes resolution_policy: review-only. The same policy is attached to duplicate upload-owner and case-folded upload-collision findings.

The validator now also records review conflicts when _wp_attachment_metadata original dimensions, generated-size dimensions, original filesize, or generated-size filesize are missing/stale/invalid enough to require WordPress-side media regeneration review.

Testing instructions

php -l scripts/cow/merge.php
php -l tests/cow/media_validator.php
php -l tests/cow/wp_semantic_validator.php
make test-cow-media-validator
make test-cow-wp-semantic-validator
FORKPRESS_CHANGED_TEST_PLAN_SCOPE=cow scripts/dev/cow-changed-test-plan.sh --base origin/trunk --jobs 3

@adamziel adamziel force-pushed the codex/menu-semantic-e2e branch 2 times, most recently from ee49705 to 9cbc286 Compare May 18, 2026 12:53
@adamziel adamziel force-pushed the codex/menu-semantic-e2e branch from 9cbc286 to 400b531 Compare May 18, 2026 12:59
@adamziel adamziel merged commit 964f6f5 into trunk May 18, 2026
1 check passed
@adamziel adamziel deleted the codex/menu-semantic-e2e branch May 18, 2026 12:59
@adamziel adamziel mentioned this pull request May 18, 2026
adamziel added a commit that referenced this pull request May 18, 2026
## Release `v0.1.35`

Version bump and release metadata update for `v0.1.35`.

**Changelog draft:**
* Extend merge revalidation and WordPress semantic guards
([#313](#313))
* Add Events Calendar-shaped merge smoke coverage
([#318](#318))
* Extend semantic E2E with Site Editor objects
([#317](#317))
* Add thin SSH remote clone command
([#315](#315))
* Update release gate evidence for v0.1.34
([#319](#319))
* Guard plugin children behind logical identity collisions
([#320](#320))
* Hold case-insensitive upload path collisions
([#322](#322))
* Cover scoped crash recovery
([#323](#323))
* Hold malformed attachment metadata shapes
([#324](#324))
* Cover thin remote clone branch metadata
([#326](#326))
* Cover source-added trigger view dependencies
([#321](#321))
* Cover WooCommerce duplicate address semantics
([#325](#325))
* Cover Events Calendar organizer validator semantics
([#327](#327))
* Cover Elementor widget media validator semantics
([#328](#328))
* Reject duplicate attachment upload metadata rows
([#329](#329))
* Cover existing branch Git update crash recovery
([#330](#330))
* Mark WordPress media repairs review-only
([#331](#331))
* Cover backup attachment metadata drift
([#332](#332))
* Limit release verification for COW-only PRs
([#335](#335))
* Batch merge reliability roadmap coverage
([#336](#336))
* Cover WordPress upload MIME drift
([#333](#333))
* Add branch merge history commands
([#334](#334))
* Show restored stale-audit reviews
([#337](#337))
* Cover Yoast duplicate indexable permalinks
([#338](#338))
* Cover Yoast indexable hierarchy drift
([#339](#339))
* Cover revision parent semantic drift
([#340](#340))
* Expose merge history in branch switcher
([#341](#341))
* Cover ACF relationship validator drift
([#342](#342))
* Show merge history on branch admin page
([#343](#343))
* Drill into conflicts from branch admin history
([#344](#344))
* Expose branch tree on admin page
([#345](#345))
* Resolve conflicts from branch admin page
([#346](#346))
* Document conflict review workflow
([#347](#347))

**Full changelog:**
v0.1.34...release/v0.1.35

## Next steps

1. **Review** the changes in this pull request.
2. **Push** any additional edits to this branch (`release/v0.1.35`).
3. **Merge** this pull request to publish `v0.1.35`.

Merging will automatically build ForkPress binaries, create a GitHub
release, and update the Homebrew formula.

Co-authored-by: Codex <codex@openai.com>
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.

2 participants