[codex] Cover stale usermeta semantic references#172
Merged
Conversation
Merged
adamziel
added a commit
that referenced
this pull request
May 16, 2026
## Release `v0.1.22` Version bump and release metadata update for `v0.1.22`. **Changelog draft:** * Document v0.1.21 release gate evidence ([#162](#162)) * Cover taxonomy menu reference validation ([#163](#163)) * Cover navigation block reference validation ([#164](#164)) * Cover media filesize drift validation ([#165](#165)) * Cover generated media filesize drift validation ([#166](#166)) * Cover missing media metadata validation ([#167](#167)) * Cover stale post_parent semantic references ([#168](#168)) * Cover stale term parent semantic references ([#169](#169)) * Cover stale post author semantic references ([#170](#170)) * Cover stale menu parent semantic references ([#171](#171)) * Cover stale usermeta semantic references ([#172](#172)) * Cover stale postmeta semantic references ([#173](#173)) * Cover stale termmeta semantic references ([#174](#174)) * Cover stale term taxonomy semantic references ([#175](#175)) **Full changelog:** v0.1.21...release/v0.1.22 ## Next steps 1. **Review** the changes in this pull request. 2. **Push** any additional edits to this branch (`release/v0.1.22`). 3. **Merge** this pull request to publish `v0.1.22`. Merging will automatically build ForkPress binaries, create a GitHub release, and update the Homebrew formula.
mokagio
added a commit
that referenced
this pull request
May 18, 2026
Build #172 failed with `rustup: The term ... is not recognized` after the `cargo` `Get-Command` check returned truthy: the agent has some `cargo.exe` on PATH (possibly chocolatey) without a matching `rustup`, so the install branch was skipped and the immediate `rustup target add` line threw. Drop the conditional and let rustup-init run every time; it's a no-op when the toolchain is already in-place, and the explicit `%USERPROFILE%\.cargo\bin` prepend ensures the rustup-managed `cargo.exe` wins over any prior install on PATH. --- Generated with the help of Claude Code, https://claude.com/claude-code Co-Authored-By: Claude Code Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What it does
Adds a focused WordPress semantic validator regression for
wp_usermeta.user_idreferences. The fixture covers a source branch deleting a user while the target edits scalar and JSON usermeta rows that still point at that user.Rationale
wp_usermeta.user_idis a WordPress object edge intowp_users. A row-level merge can preserve target metadata edits and apply the source user delete, but that leaves orphaned user metadata unless a semantic validator reports the stale owner for review.Implementation
The new discovered validator scans usermeta rows with
user_id > 0, verifies the referenced user row still exists, and emitsplugin-wp-usermeta-missing-userfindings. The test asserts that the user delete remains staged, target scalar and JSON metadata edits remain visible, and plugin audit output identifies the missing user, staleuser_idfield, and JSON metadata row.The merge reliability matrix now records usermeta reference coverage alongside existing post author, post parent, menu, taxonomy, media, comment, and option reference coverage.
Testing instructions