Skip to content

feat: VCS conflict editor tool for interactive merge resolution #23

Description

@alpibrupa

Problem

vcs_merge_resolve requires a pre-built JSON file of conflict resolutions. The agent has no way to inspect individual conflicts, reason about them, and submit resolutions interactively. The structural merge — one of lex-code's key differentiators — is unusable without external tooling.

Design

New tool: vcs_merge_show_conflicts

vcs_merge_show_conflicts(merge_id: Str) -> List[Conflict]

Each Conflict should include: file path, function name, base SigId, left SigId, right SigId, and a human-readable diff of the competing changes.

New tool: vcs_merge_resolve_one

vcs_merge_resolve_one(merge_id: Str, conflict_id: Str, resolution: ConflictResolution) -> MergeStatus

This allows the refactor agent to work through conflicts one at a time rather than preparing a bulk JSON blob.

Acceptance

  • Both tools added and available to refactor agent
  • Conflict resolution loop: show → reason → resolve → check → repeat
  • lex check --strict src/ passes

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions