Skip to content

Commit b1baea0

Browse files
refactor(search): compact typed repository search output
Replace the full REST repository mirror with MinimalRepository-based structured items plus purpose-built full-mode details. Legacy text remains unchanged, and canonical snapshots now hold the modern output schema. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
1 parent 1d5680e commit b1baea0

12 files changed

Lines changed: 855 additions & 6322 deletions

‎pkg/github/__toolsnaps__/search_commits.snap‎

Lines changed: 347 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,5 +44,351 @@
4444
],
4545
"type": "object"
4646
},
47-
"name": "search_commits"
47+
"name": "search_commits",
48+
"outputSchema": {
49+
"additionalProperties": false,
50+
"properties": {
51+
"incomplete_results": {
52+
"type": "boolean"
53+
},
54+
"items": {
55+
"items": {
56+
"additionalProperties": false,
57+
"properties": {
58+
"author": {
59+
"additionalProperties": false,
60+
"properties": {
61+
"avatar_url": {
62+
"type": "string"
63+
},
64+
"details": {
65+
"additionalProperties": false,
66+
"properties": {
67+
"bio": {
68+
"type": "string"
69+
},
70+
"blog": {
71+
"type": "string"
72+
},
73+
"company": {
74+
"type": "string"
75+
},
76+
"created_at": {
77+
"type": "string"
78+
},
79+
"email": {
80+
"type": "string"
81+
},
82+
"followers": {
83+
"type": "integer"
84+
},
85+
"following": {
86+
"type": "integer"
87+
},
88+
"hireable": {
89+
"type": "boolean"
90+
},
91+
"location": {
92+
"type": "string"
93+
},
94+
"name": {
95+
"type": "string"
96+
},
97+
"owned_private_repos": {
98+
"type": "integer"
99+
},
100+
"private_gists": {
101+
"type": "integer"
102+
},
103+
"public_gists": {
104+
"type": "integer"
105+
},
106+
"public_repos": {
107+
"type": "integer"
108+
},
109+
"total_private_repos": {
110+
"type": "integer"
111+
},
112+
"twitter_username": {
113+
"type": "string"
114+
},
115+
"updated_at": {
116+
"type": "string"
117+
}
118+
},
119+
"required": [
120+
"public_repos",
121+
"public_gists",
122+
"followers",
123+
"following",
124+
"created_at",
125+
"updated_at"
126+
],
127+
"type": [
128+
"null",
129+
"object"
130+
]
131+
},
132+
"id": {
133+
"type": "integer"
134+
},
135+
"login": {
136+
"type": "string"
137+
},
138+
"profile_url": {
139+
"type": "string"
140+
}
141+
},
142+
"required": [
143+
"login"
144+
],
145+
"type": [
146+
"null",
147+
"object"
148+
]
149+
},
150+
"commit": {
151+
"additionalProperties": false,
152+
"properties": {
153+
"author": {
154+
"additionalProperties": false,
155+
"properties": {
156+
"date": {
157+
"type": "string"
158+
},
159+
"email": {
160+
"type": "string"
161+
},
162+
"name": {
163+
"type": "string"
164+
}
165+
},
166+
"type": [
167+
"null",
168+
"object"
169+
]
170+
},
171+
"committer": {
172+
"additionalProperties": false,
173+
"properties": {
174+
"date": {
175+
"type": "string"
176+
},
177+
"email": {
178+
"type": "string"
179+
},
180+
"name": {
181+
"type": "string"
182+
}
183+
},
184+
"type": [
185+
"null",
186+
"object"
187+
]
188+
},
189+
"message": {
190+
"type": "string"
191+
}
192+
},
193+
"required": [
194+
"message"
195+
],
196+
"type": [
197+
"null",
198+
"object"
199+
]
200+
},
201+
"committer": {
202+
"additionalProperties": false,
203+
"properties": {
204+
"avatar_url": {
205+
"type": "string"
206+
},
207+
"details": {
208+
"additionalProperties": false,
209+
"properties": {
210+
"bio": {
211+
"type": "string"
212+
},
213+
"blog": {
214+
"type": "string"
215+
},
216+
"company": {
217+
"type": "string"
218+
},
219+
"created_at": {
220+
"type": "string"
221+
},
222+
"email": {
223+
"type": "string"
224+
},
225+
"followers": {
226+
"type": "integer"
227+
},
228+
"following": {
229+
"type": "integer"
230+
},
231+
"hireable": {
232+
"type": "boolean"
233+
},
234+
"location": {
235+
"type": "string"
236+
},
237+
"name": {
238+
"type": "string"
239+
},
240+
"owned_private_repos": {
241+
"type": "integer"
242+
},
243+
"private_gists": {
244+
"type": "integer"
245+
},
246+
"public_gists": {
247+
"type": "integer"
248+
},
249+
"public_repos": {
250+
"type": "integer"
251+
},
252+
"total_private_repos": {
253+
"type": "integer"
254+
},
255+
"twitter_username": {
256+
"type": "string"
257+
},
258+
"updated_at": {
259+
"type": "string"
260+
}
261+
},
262+
"required": [
263+
"public_repos",
264+
"public_gists",
265+
"followers",
266+
"following",
267+
"created_at",
268+
"updated_at"
269+
],
270+
"type": [
271+
"null",
272+
"object"
273+
]
274+
},
275+
"id": {
276+
"type": "integer"
277+
},
278+
"login": {
279+
"type": "string"
280+
},
281+
"profile_url": {
282+
"type": "string"
283+
}
284+
},
285+
"required": [
286+
"login"
287+
],
288+
"type": [
289+
"null",
290+
"object"
291+
]
292+
},
293+
"files": {
294+
"items": {
295+
"additionalProperties": false,
296+
"properties": {
297+
"additions": {
298+
"type": "integer"
299+
},
300+
"changes": {
301+
"type": "integer"
302+
},
303+
"deletions": {
304+
"type": "integer"
305+
},
306+
"filename": {
307+
"type": "string"
308+
},
309+
"patch": {
310+
"type": "string"
311+
},
312+
"status": {
313+
"type": "string"
314+
}
315+
},
316+
"required": [
317+
"filename"
318+
],
319+
"type": "object"
320+
},
321+
"type": [
322+
"null",
323+
"array"
324+
]
325+
},
326+
"html_url": {
327+
"type": "string"
328+
},
329+
"repository": {
330+
"additionalProperties": false,
331+
"properties": {
332+
"full_name": {
333+
"type": "string"
334+
},
335+
"html_url": {
336+
"type": "string"
337+
},
338+
"private": {
339+
"type": "boolean"
340+
}
341+
},
342+
"required": [
343+
"full_name"
344+
],
345+
"type": [
346+
"null",
347+
"object"
348+
]
349+
},
350+
"sha": {
351+
"type": "string"
352+
},
353+
"stats": {
354+
"additionalProperties": false,
355+
"properties": {
356+
"additions": {
357+
"type": "integer"
358+
},
359+
"deletions": {
360+
"type": "integer"
361+
},
362+
"total": {
363+
"type": "integer"
364+
}
365+
},
366+
"type": [
367+
"null",
368+
"object"
369+
]
370+
}
371+
},
372+
"required": [
373+
"sha",
374+
"html_url"
375+
],
376+
"type": "object"
377+
},
378+
"type": [
379+
"null",
380+
"array"
381+
]
382+
},
383+
"total_count": {
384+
"type": "integer"
385+
}
386+
},
387+
"required": [
388+
"total_count",
389+
"incomplete_results",
390+
"items"
391+
],
392+
"type": "object"
393+
}
48394
}

0 commit comments

Comments
 (0)