This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

core / lexicons / git / mergeCheck.json
2.7 kB 96 lines
1{ 2 "lexicon": 1, 3 "id": "sh.tangled.git.mergeCheck", 4 "defs": { 5 "main": { 6 "type": "procedure", 7 "description": "Check if a merge is possible between two branches. Performs 3-way merge check", 8 "input": { 9 "encoding": "application/json", 10 "schema": { 11 "type": "object", 12 "required": ["repo", "branch", "source"], 13 "properties": { 14 "repo": { 15 "type": "string", 16 "format": "did", 17 "description": "DID of Git repository" 18 }, 19 "branch": { 20 "type": "string", 21 "description": "Target branch to merge into" 22 }, 23 "source": { 24 "type": "object", 25 "required": ["repo", "commit"], 26 "properties": { 27 "repo": { 28 "type": "string", 29 "format": "did", 30 "description": "DID of source git repository" 31 }, 32 "commit": { 33 "type": "string", 34 "description": "Head commit ID of PR to merge" 35 } 36 } 37 } 38 } 39 } 40 }, 41 "output": { 42 "encoding": "application/json", 43 "schema": { 44 "type": "object", 45 "required": ["isConflicted"], 46 "properties": { 47 "isConflicted": { 48 "type": "boolean", 49 "description": "Whether the merge has conflicts" 50 }, 51 "conflicts": { 52 "type": "array", 53 "description": "List of files with merge conflicts", 54 "items": { 55 "type": "ref", 56 "ref": "#conflictInfo" 57 } 58 }, 59 "message": { 60 "type": "string", 61 "description": "Additional message about the merge check" 62 } 63 } 64 } 65 }, 66 "errors": [ 67 { 68 "name": "InvalidRequest", 69 "description": "Invalid request parameters" 70 }, 71 { 72 "name": "RepoNotFound", 73 "description": "Repo is not registered on this knot" 74 }, 75 { 76 "name": "CommitNotFound", 77 "description": "Commit is not found from source Repo" 78 } 79 ] 80 }, 81 "conflictInfo": { 82 "type": "object", 83 "required": ["filename", "reason"], 84 "properties": { 85 "filename": { 86 "type": "string", 87 "description": "Name of the conflicted file" 88 }, 89 "reason": { 90 "type": "string", 91 "description": "Reason for the conflict" 92 } 93 } 94 } 95 } 96}