full diff

dev.knotless.searchCode

From
bafyreifbeqbi5zkztjktxp7jy32vzzkg2kgwjivdn5elxnitpd5s4qnkw4 indexed 2026-11-03 18:11 UTC View this version
To
bafyreih7lr3x5w4xnwsnd6kwr4p7zivzac6yqlyibtyv7zknintcqjnx2m indexed 2026-11-03 19:35 UTC View this version

Compatibility

backward compatible Backward compatible. 2 non-breaking changes.

Non-breaking changes (2)
  • AddedVertex AddedVertex { vertex_id: "dev.knotless.searchCode:output.cursor" }
  • AddedEdge AddedEdge { src: "dev.knotless.searchCode:output", tgt: "dev.knotless.searchCode:output.cursor", kind: "prop", name: Some("cursor") }

Migration guidance

Added

  • AddedVertex { vertex_id: "dev.knotless.searchCode:output.cursor" }

Notes

  • Non-breaking: AddedEdge { src: "dev.knotless.searchCode:output", tgt: "dev.knotless.searchCode:output.cursor", kind: "prop", name: Some("cursor") }

Changes

11{
22 "$type": "com.atproto.lexicon.schema",
33 "defs": {
44 "chunk": {
55 "description": "Lines of a file holding matches, with a line on either side.",
66 "properties": {
77 "content": {
88 "description": "The lines, each after the first following a newline, with no newline at the end.",
99 "type": "string"
1010 },
1111 "highlights": {
1212 "description": "What its highlighting paints over the content, encoded as dev.knotless.getFile's ranges are, the lines read alone. Absent for a language with no grammar.",
1313 "type": "string"
1414 },
1515 "ranges": {
1616 "items": {
1717 "ref": "#range",
1818 "type": "ref"
1919 },
2020 "type": "array"
2121 },
2222 "startLine": {
2323 "description": "The first line's number, from 1.",
2424 "minimum": 1,
2525 "type": "integer"
2626 }
2727 },
2828 "required": [
2929 "startLine",
3030 "content",
3131 "ranges"
3232 ],
3333 "type": "object"
3434 },
3535 "fileView": {
3636 "description": "A file the query found, with the lines around what it found there.",
3737 "properties": {
3838 "chunks": {
3939 "description": "Runs of lines holding matches, in order. Empty when only the path matched.",
4040 "items": {
4141 "ref": "#chunk",
4242 "type": "ref"
4343 },
4444 "type": "array"
4545 },
4646 "commit": {
4747 "description": "The commit of the default branch that was indexed, whose lines these are: a page of the file links there, as the branch may have moved since.",
4848 "maxLength": 64,
4949 "type": "string"
5050 },
5151 "language": {
5252 "description": "What it is written in, as Zoekt names it from its extension or contents.",
5353 "maxLength": 100,
5454 "type": "string"
5555 },
5656 "path": {
5757 "description": "The file's path in the repository's default branch.",
5858 "maxLength": 4096,
5959 "type": "string"
6060 },
6161 "repo": {
6262 "ref": "dev.knotless.listRepos#repoView",
6363 "type": "ref"
6464 }
6565 },
6666 "required": [
6767 "repo",
6868 "path",
6969 "chunks"
7070 ],
7171 "type": "object"
7272 },
7373 "languageCount": {
7474 "description": "A language files were found in, and how many.",
7575 "properties": {
7676 "color": {
7777 "description": "Its color, as linguist has it. Absent for a language with none known here.",
7878 "type": "string"
7979 },
8080 "files": {
8181 "minimum": 1,
8282 "type": "integer"
8383 },
8484 "name": {
8585 "description": "As Zoekt names it, and lang: takes it.",
8686 "type": "string"
8787 }
8888 },
8989 "required": [
9090 "name",
9191 "files"
9292 ],
9393 "type": "object"
9494 },
9595 "main": {
9696 "description": "Searches the default branches of the public repositories an appview indexes, in Zoekt's query language: words and quoted text as substrings, ignoring case unless the query holds a capital, a regular expression between slashes, and filters such as file:, lang: and case:yes. No authentication needed. Repositories taken down are left out. An appview that searches no code answers 501.",
9797 "output": {
9898 "encoding": "application/json",
9999 "schema": {
100100 "properties": {
101 "cursor": {
102 "description": "Absent on the last page, and once the pages are 200 files deep.",
103 "type": "string"
104 },
101105 "fileCount": {
102106 "description": "How many files the query found in all, of which files are the best.",
103107 "minimum": 0,
104108 "type": "integer"
105109 },
106110 "files": {
107111 "items": {
108112 "ref": "#fileView",
109113 "type": "ref"
110114 },
111115 "type": "array"
112116 },
113117 "languages": {
114 "description": "The languages of the files found, counting those its lang: filters leave out, most files first: of the first 1000 files at most.",
118 "description": "The languages of the files found, counting those its lang: filters leave out, most files first: of the first 1000 files at most. The first page alone lists them.",
115119 "items": {
116120 "ref": "#languageCount",
117121 "type": "ref"
118122 },
119123 "type": "array"
120124 },
121125 "matchCount": {
122126 "description": "How many matches the query found in all.",
123127 "minimum": 0,
124128 "type": "integer"
125129 }
126130 },
127131 "required": [
128132 "files",
129133 "fileCount",
130134 "matchCount"
131135 ],
132136 "type": "object"
133137 }
134138 },
135139 "parameters": {
136140 "properties": {
141 "cursor": {
142 "description": "How many files the pages before held. The pages go 200 files deep at most.",
143 "maxLength": 32,
144 "type": "string"
145 },
137146 "limit": {
138147 "default": 20,
139148 "description": "The most files to answer with.",
140149 "maximum": 50,
141150 "minimum": 1,
142151 "type": "integer"
143152 },
144153 "q": {
145154 "description": "What to search for.",
146155 "maxLength": 1000,
147156 "type": "string"
148157 },
149158 "repo": {
150159 "description": "Only this repository's dev.knotless.repo record, its authority a DID or a handle.",
151160 "format": "at-uri",
152161 "type": "string"
153162 }
154163 },
155164 "required": [
156165 "q"
157166 ],
158167 "type": "params"
159168 },
160169 "type": "query"
161170 },
162171 "range": {
163172 "description": "A match, or the part of one on one line.",
164173 "properties": {
165174 "byteEnd": {
166175 "description": "Where it ends, in UTF-8 bytes, exclusive.",
167176 "minimum": 0,
168177 "type": "integer"
169178 },
170179 "byteStart": {
171180 "description": "Where the match starts on the line, in its UTF-8 bytes.",
172181 "minimum": 0,
173182 "type": "integer"
174183 },
175184 "line": {
176185 "description": "The line's number, from 1.",
177186 "minimum": 1,
178187 "type": "integer"
179188 }
180189 },
181190 "required": [
182191 "line",
183192 "byteStart",
184193 "byteEnd"
185194 ],
186195 "type": "object"
187196 }
188197 },
189198 "description": "Searches the code of the public repositories an appview indexes.",
190199 "id": "dev.knotless.searchCode",
191200 "lexicon": 1
192201}

Compare other versions