{ "lexicon": 1, "id": "sh.tangled.git.temp.analyzeMerge", "defs": { "main": { "type": "query", "description": "Check if a merge is possible between two branches", "parameters": { "type": "params", "required": ["repo", "patch", "branch"], "properties": { "repo": { "type": "string", "format": "at-uri", "description": "AT-URI of the repository" }, "patch": { "type": "string", "description": "Patch or pull request to check for merge conflicts" }, "branch": { "type": "string", "description": "Target branch to merge into" } } }, "output": { "encoding": "application/json", "schema": { "type": "object", "required": ["is_conflicted"], "properties": { "is_conflicted": { "type": "boolean", "description": "Whether the merge has conflicts" }, "conflicts": { "type": "array", "description": "List of files with merge conflicts", "items": { "type": "ref", "ref": "#conflictInfo" } } } } } }, "conflictInfo": { "type": "object", "required": ["filename", "reason"], "properties": { "filename": { "type": "string", "description": "Name of the conflicted file" }, "reason": { "type": "string", "description": "Reason for the conflict" } } } } }