You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Preserve a Composer dependency overlay as one coherent package when the consumer adds a common wrapper directory to its PSR-4 paths. This keeps package bootstraps, package-local Composer metadata, and source files aligned instead of relocating only source directories.
What changed
Detect when every comparable PSR-4 mapping adds the same safe wrapper prefix.
Stage the complete hydrated package under that wrapper and retain the actual package root for source-reference metadata.
Preserve the existing source-directory relocation behavior for non-wrapper layout changes.
Strengthen the overlay smoke test to execute a package bootstrap through its relocated classmap and verify no bootstrap or autoloader remains at the old root.
Compatibility
Overlay target paths, checkout immutability, cleanup ownership, source references, and non-wrapper relocation behavior remain unchanged. Wrapper detection fails closed when mappings disagree or any comparable mapping remains unwrapped.
Verification
npm run test:composer-package-overlay-autoload-layout
npm run build
git diff --check
Evidence
Lab run 10b9a5f5-4782-4f77-9b29-cf2afe61d1ac executed WP Codebox #2054 commit 789b5aa5806f914afd4f0c1684af690f4947f930. The repaired WP-CLI response retained 1,047,387 characters, proving the lazy-response fix, but the overlay emitted 138 missing-source classmap warnings and the payload ended mid-JSON. Raw output SHA-256: 1dc2de341beb689dcbc6b37373ed2dcafecd25b3d28534f9567362e7b27409be.
Used for: Traced the Lab-only warning and truncation chain, drafted the generic wrapper-layout repair and executable regression, reviewed the generated edge cases, and ran deterministic verification.
Lab integration evidence is available from run 50eadcfc-23c9-450a-929f-cb47f08f2a65, using combined WP Codebox commit 427cd1514bd157cc4fcf07cf6744acb1eb7d7d98 (#2054 + this PR).
The package-layout repair removes the previous 138 autoload warnings and allows the structured WP-CLI payload to parse. The fixture now retains the import report, blocks-engine/wordpress-site-plan/v2, a completed materialization receipt, and all eight bounded page provenance records.
The matrix remains red for fixture quality findings, as expected. Evidence readiness improved from five missing fields to one: transformer_reference. That remaining clean-source reference propagation gap is independently tracked in #2058 rather than attributed to this layout repair.
Final combined Lab provenance verification: run 7dcbe7f4-865e-41c7-a994-4f80908051ee used WP Codebox integration commit 0eebc856f63595c63c13ef19eb0863da2b3de13c (#2054 + #2057 + #2059) and SSI #725. Evidence readiness is now verified with no missing fields, including transformer reference 9ebb3a71790afd3068dedae79340088208e11c81.
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
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
Preserve a Composer dependency overlay as one coherent package when the consumer adds a common wrapper directory to its PSR-4 paths. This keeps package bootstraps, package-local Composer metadata, and source files aligned instead of relocating only source directories.
What changed
Compatibility
Overlay target paths, checkout immutability, cleanup ownership, source references, and non-wrapper relocation behavior remain unchanged. Wrapper detection fails closed when mappings disagree or any comparable mapping remains unwrapped.
Verification
npm run test:composer-package-overlay-autoload-layoutnpm run buildgit diff --checkEvidence
Lab run
10b9a5f5-4782-4f77-9b29-cf2afe61d1acexecuted WP Codebox #2054 commit789b5aa5806f914afd4f0c1684af690f4947f930. The repaired WP-CLI response retained 1,047,387 characters, proving the lazy-response fix, but the overlay emitted 138 missing-source classmap warnings and the payload ended mid-JSON. Raw output SHA-256:1dc2de341beb689dcbc6b37373ed2dcafecd25b3d28534f9567362e7b27409be.Closes #2055
AI assistance