Skip to content

Cover thin remote clone branch metadata#326

Merged
adamziel merged 1 commit into
trunkfrom
codex/remote-clone-thin-e2e
May 18, 2026
Merged

Cover thin remote clone branch metadata#326
adamziel merged 1 commit into
trunkfrom
codex/remote-clone-thin-e2e

Conversation

@adamziel
Copy link
Copy Markdown
Contributor

What it does

Adds a focused COW E2E check for forkpress remote clone --branch.

The test uses a local fake rsync to prove the command creates a boot cache that skips wp-content/uploads/ and cache files by default, then immediately creates a branch from that cache.

Rationale

remote clone should make a remote site bootable without pulling large cold-start data like uploads. It also needs to use the normal branch-birth path so the new branch has ID bands, a DB merge base, and a filesystem merge base before the first write.

Implementation

In the existing FORKPRESS_E2E_ONLY=remote-cache slice, the test now:

  • creates a local remote-like WordPress root with an upload and cache file
  • shadows rsync with a fake executable that honors --exclude
  • runs forkpress remote clone thin-prod --branch remote-thin-branch
  • asserts the remote cache and branch include boot files but not uploads/cache files
  • writes through WordPress on the cloned branch and verifies the inserted ID lands inside the branch band
  • checks both cow/merge/bases/remote-thin-branch.sqlite and cow/merge/file-bases/remote-thin-branch.json exist

Testing instructions

Ran locally:

bash -n tests/cow/e2e.sh
git diff --check
FORKPRESS_E2E_ONLY=remote-cache tests/cow/e2e.sh target/x86_64-unknown-linux-musl/debug/forkpress

The focused E2E slice passed. Local COW storage fell back to file-copy because loop devices are not available in this environment.

@adamziel adamziel force-pushed the codex/remote-clone-thin-e2e branch from 94d4f4a to bb0429c Compare May 18, 2026 12:02
@adamziel
Copy link
Copy Markdown
Contributor Author

Rebased onto current trunk after #324. Local verification after rebase:\n\n- bash -n tests/cow/e2e.sh\n- git diff --check\n\nThe focused remote-cache E2E slice was already run locally before this rebase and passed.

@adamziel adamziel merged commit 9d9a28f into trunk May 18, 2026
@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