Repository navigation
fix(shadow): qualify snapshot schemas - #392
Merged
Merged
Conversation
chubes4
marked this pull request as ready for review
September 9, 2026 11:49
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.
Summary
Fix schema qualification during authoritative snapshot capture across WordPress blog switches. Compile global tables using the authoritative base prefix, and permit explicitly validated exact table identities for plugin tables without relaxing unrelated DDL qualification checks.
Preserve input bounds and explicit absent-schema failures. This repairs snapshot input capture, not generic SQL execution.
Verified Evidence
Parent independently ran exact candidate
7eae61a264156376b6de7684cb273dbb86eb40a8on Linux against the same real DME multisite lifecycle fixture used in #386: WordPress7.1, PHP8.3, PHPUnit9.6.35; 4 tests and17 assertions passed.fade581239034d9e74e88fc10b745657f12730b35eda2de106b1edd969d4c91f.Reproduction
Use the fixture setup and environment variables documented in #386, then run
php tests/run-mysql-shadow-corpus.phpfrom this candidate. The runner emits the source revision, PHPUnit result, report and formal artifact reference. DME is pinned to88d55a907b12638e88baee5b492501dbed5c2665and Data Machine to31befb659aaa5268e79a0c28a16321c3ee5e1108; use a wp-phpunit vendor directory viaMDI_SHADOW_HARNESS_DIR.Repository-local checks:
Supports #377, which remains open for full consumer readiness. No release or deployment is included.
AI Assistance
OpenAI GPT-5.6 Terra (
openai/gpt-5.6-terra) via OpenCode traced the schema-prefix exceptions and implemented the repair. GPT-6 Astra (openai/gpt-6-astra) via OpenCode reviewed the diff, independently ran the exact candidate's real Linux corpus and focused checks, and finalized the evidence under Chris Huber's direction.