This issue is the shared coordination log for designing and prototyping automatic merging of branch state back into trunk.
Goal
ForkPress branches should be mergeable back into trunk automatically, including WordPress database state and filesystem state.
Hard requirements
- Base behavior must work for WordPress core plus arbitrary plugins without plugin authors declaring schemas, merge keys, conflict policies, or custom handlers.
- Plugin-specific declarations or hooks can be offered later as an optional accuracy improvement, but they cannot be required for correctness of the default path.
- Conflict handling must be auditable: if the system chooses one side or defers a conflict, the decision must be visible in history and revisitable.
- The system should minimize avoidable conflicts where possible, but should not rely on globally coordinated plugin behavior.
Working assumptions to validate
- Generic SQL/table-level diff and merge is probably the baseline because plugin tables cannot be known in advance.
- WordPress content tables can get higher-quality semantic merge rules, but those rules must be layered on top of a generic engine.
- UI-based conflict resolution is useful only for narrow cases; most resolution likely needs deterministic policies, structured audit records, and possibly LLM-assisted suggestions.
Coordination protocol
Agents working on this should append issue comments with:
Current state: what is known now.
Decision log: any choice made and why.
Next steps: concrete remaining tasks.
Artifacts: branches, scripts, docs, prototypes, benchmark results, or failing cases.
First pass tasks
- Survey prior art: VersionPress, Dolt, database branching/merge tools, CRDT/event-sourcing systems, Rails/Django migration/data merge patterns, SQLite session/change-set facilities, and WordPress-specific deployment/sync tools.
- Narrow the design to a few credible architectures that meet the hard requirements.
- Create a restartable local loop script so repeated independent runs can pick up from this issue and continue from the last recorded state.
This issue is the shared coordination log for designing and prototyping automatic merging of branch state back into
trunk.Goal
ForkPress branches should be mergeable back into
trunkautomatically, including WordPress database state and filesystem state.Hard requirements
Working assumptions to validate
Coordination protocol
Agents working on this should append issue comments with:
Current state: what is known now.Decision log: any choice made and why.Next steps: concrete remaining tasks.Artifacts: branches, scripts, docs, prototypes, benchmark results, or failing cases.First pass tasks