A vibe coded tangled fork which supports pijul.
1{
2 "lexicon": 1,
3 "id": "sh.tangled.git.temp.analyzeMerge",
4 "defs": {
5 "main": {
6 "type": "query",
7 "description": "Check if a merge is possible between two branches",
8 "parameters": {
9 "type": "params",
10 "required": ["repo", "patch", "branch"],
11 "properties": {
12 "repo": {
13 "type": "string",
14 "format": "at-uri",
15 "description": "AT-URI of the repository"
16 },
17 "patch": {
18 "type": "string",
19 "description": "Patch or pull request to check for merge conflicts"
20 },
21 "branch": {
22 "type": "string",
23 "description": "Target branch to merge into"
24 }
25 }
26 },
27 "output": {
28 "encoding": "application/json",
29 "schema": {
30 "type": "object",
31 "required": ["is_conflicted"],
32 "properties": {
33 "is_conflicted": {
34 "type": "boolean",
35 "description": "Whether the merge has conflicts"
36 },
37 "conflicts": {
38 "type": "array",
39 "description": "List of files with merge conflicts",
40 "items": {
41 "type": "ref",
42 "ref": "#conflictInfo"
43 }
44 }
45 }
46 }
47 }
48 },
49 "conflictInfo": {
50 "type": "object",
51 "required": ["filename", "reason"],
52 "properties": {
53 "filename": {
54 "type": "string",
55 "description": "Name of the conflicted file"
56 },
57 "reason": {
58 "type": "string",
59 "description": "Reason for the conflict"
60 }
61 }
62 }
63 }
64}