1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
{
"lexicon": 1,
"id": "sh.tangled.git.temp2.getBlame",
"defs": {
"main": {
"type": "query",
"parameters": {
"type": "params",
"required": [
"repo",
"ref",
"path"
],
"properties": {
"repo": {
"type": "string",
"format": "did",
"description": "DID of the repository"
},
"ref": {
"type": "string",
"description": "Revspec to blame at: a branch, tag, or commit sha"
},
"path": {
"type": "string",
"description": "Path to the file within the repository"
}
}
},
"output": {
"encoding": "application/json",
"schema": {
"type": "object",
"required": [
"commit",
"commits",
"runs"
],
"properties": {
"commit": {
"type": "string",
"description": "The resolved git commit object id"
},
"commits": {
"type": "array",
"description": "Unique commits referenced by blame runs",
"items": {
"type": "ref",
"ref": "#commit"
}
},
"runs": {
"type": "array",
"description": "Complete, gap-free one-based line ranges sorted by start",
"items": {
"type": "ref",
"ref": "#run"
}
}
}
}
},
"errors": [
{
"name": "RepoNotFound",
"description": "Repository not found or access denied"
},
{
"name": "RefNotFound",
"description": "Git reference not found"
},
{
"name": "FileNotFound",
"description": "File not found at the specified path"
},
{
"name": "BlameTooLarge",
"description": "Blame exceeds file byte, line, or run limits"
},
{
"name": "BlameTimeout",
"description": "Blame exceeded its computation time budget"
},
{
"name": "InvalidRequest",
"description": "Invalid request parameters"
}
]
},
"commit": {
"type": "object",
"required": [
"oid",
"message",
"author"
],
"properties": {
"oid": {
"type": "string"
},
"message": {
"type": "string",
"description": "Full commit message"
},
"author": {
"type": "ref",
"ref": "sh.tangled.git.defs#signature"
}
}
},
"run": {
"type": "object",
"required": [
"start",
"count",
"commit"
],
"properties": {
"start": {
"type": "integer",
"minimum": 1,
"description": "First one-based line in this run"
},
"count": {
"type": "integer",
"minimum": 1,
"description": "Number of consecutive lines in this run"
},
"commit": {
"type": "string",
"description": "oid of a commit in the output commits array"
}
}
}
}
}