Conflict Review
ForkPress merge conflicts are audit records, not free-form notes. Each conflict has a stable id, a lifecycle state, a next action, and a set of legal resolution choices. Use those fields to decide whether to review, revalidate, resolve, or leave a conflict for manual repair.
For the full command reference, see the audit and review sections of
forkpress branch.
Find History And Branch Edges
Use history when you want chronological merge runs:
forkpress branch history --limit 20forkpress branch history --limit 20 --format jsonUse tree when you want recent source-to-target branch topology:
forkpress branch tree --limit 20forkpress branch tree --limit 20 --format jsonIn wp-admin, open the ForkPress branch manager page. Show merge history loads recent runs, Show branch tree groups recent edges by target branch, and conflicted history rows can load the conflict queue for that run.
Inspect Conflict Queues
Start with the conflicts for one run:
forkpress branch conflicts --run 42forkpress branch conflicts --run 42 --format jsonUseful queue filters:
forkpress branch conflicts --run 42 --lifecycle-state needs-actionforkpress branch conflicts --run 42 --next-action revalidateforkpress branch conflicts --run 42 --resolution-choice sourceforkpress branch conflicts --run 42 --blocked-resolution-choice sourceforkpress branch merge-audit --records conflict-events --run 42 --group-by event-typeresolution_choices says what can be applied. blocked_resolution_choices
says what is visible but not executable yet. next_action is the safest UI
hint: review, revalidate, resolve, apply a reviewed choice, run a plugin driver,
or leave the conflict for manual review.
Review And Resolve
Mark a conflict as reviewed when a human has inspected it but should not apply a new choice yet:
forkpress branch merge-review conflict 7 --status reviewed --note "Reviewed page metadata"forkpress branch merge-review conflict-key wp_posts:page:about --run 42 --status reviewed --note "Reviewed page metadata"Apply source or target only when the audit payload advertises that choice:
forkpress branch merge-resolve conflict 7 --choice source --applyforkpress branch merge-resolve conflict 7 --choice target --applyIf a choice was already validated and is still current, apply the reviewed choice:
forkpress branch merge-resolve conflict 7 --apply-reviewedforkpress branch merge-apply-reviewed --run 42 --reviewer alice --format jsonThe wp-admin branch manager exposes the same review and resolution actions for loaded conflict rows. It only shows source, target, and apply-reviewed buttons when the conflict audit payload says those actions are legal.
Handle Stale Reviews
If the target branch changed after review, a direct resolve can fail. Revalidate the run and then inspect the queues again:
forkpress branch merge-audit --revalidate --run 42 --reviewer alice --format jsonforkpress branch conflicts --run 42 --group-by latest-revalidation-statusCompatible stale database, filesystem, and supported schema conflicts can be applied with an after-revalidate guard:
forkpress branch merge-resolve conflict 7 --choice source --apply --after-revalidateIncompatible or unclassified drift stays in needs-action until a reviewer,
plugin validator, plugin driver, or schema planner can prove a safe repair.
Plugin Conflicts
Plugin-owned conflicts are not resolved by generic source/target choice unless the plugin contract allows it. Prefer plugin validators first, then plugin drivers for repairs that can prove the resulting plugin state is coherent:
forkpress branch run-plugin-validator --run 42 --validator wp-content/plugins/acme/forkpress-merge-validator.phpforkpress branch run-plugin-driver conflict 7 --driver wp-content/plugins/acme/forkpress-merge-driver.php --format jsonPlugin conflicts can also be filtered by plugin identity:
forkpress branch conflicts --run 42 --scope pluginforkpress branch conflicts --run 42 --plugin acme-eventsforkpress branch conflicts --run 42 --group-by plugin-object