1{
2 "lexicon": 1,
3 "id": "sh.tangled.repo.compare",
4 "defs": {
5 "main": {
6 "type": "query",
7 "parameters": {
8 "type": "params",
9 "required": ["repo", "rev1", "rev2"],
10 "properties": {
11 "repo": {
12 "type": "string",
13 "description": "Repository identifier in format 'did:plc:.../repoName'"
14 },
15 "rev1": {
16 "type": "string",
17 "description": "First revision (commit, branch, or tag)"
18 },
19 "rev2": {
20 "type": "string",
21 "description": "Second revision (commit, branch, or tag)"
22 }
23 }
24 },
25 "output": {
26 "encoding": "*/*",
27 "description": "Compare output in application/json"
28 },
29 "errors": [
30 {
31 "name": "RepoNotFound",
32 "description": "Repository not found or access denied"
33 },
34 {
35 "name": "RevisionNotFound",
36 "description": "One or both revisions not found"
37 },
38 {
39 "name": "InvalidRequest",
40 "description": "Invalid request parameters"
41 },
42 {
43 "name": "CompareError",
44 "description": "Failed to compare revisions"
45 }
46 ]
47 }
48 }
49}