@framers/agentos-ext-github 0.9.0 → 0.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -6
- package/dist/documents/GitHubDocumentsConnector.d.ts +37 -11
- package/dist/documents/GitHubDocumentsConnector.d.ts.map +1 -1
- package/dist/documents/GitHubDocumentsConnector.js +67 -22
- package/dist/documents/GitHubDocumentsConnector.js.map +1 -1
- package/dist/documents/links.d.ts +19 -13
- package/dist/documents/links.d.ts.map +1 -1
- package/dist/documents/links.js +43 -24
- package/dist/documents/links.js.map +1 -1
- package/dist/documents/tree.d.ts +29 -10
- package/dist/documents/tree.d.ts.map +1 -1
- package/dist/documents/tree.js +70 -11
- package/dist/documents/tree.js.map +1 -1
- package/manifest.json +1 -1
- package/package.json +7 -5
- package/dist/__tests__/app.test.d.ts +0 -7
- package/dist/__tests__/app.test.d.ts.map +0 -1
- package/dist/__tests__/app.test.js +0 -1219
- package/dist/__tests__/app.test.js.map +0 -1
- package/dist/__tests__/documents.test.d.ts +0 -9
- package/dist/__tests__/documents.test.d.ts.map +0 -1
- package/dist/__tests__/documents.test.js +0 -644
- package/dist/__tests__/documents.test.js.map +0 -1
- package/dist/__tests__/entry.test.d.ts +0 -7
- package/dist/__tests__/entry.test.d.ts.map +0 -1
- package/dist/__tests__/entry.test.js +0 -34
- package/dist/__tests__/entry.test.js.map +0 -1
- package/dist/__tests__/events.test.d.ts +0 -8
- package/dist/__tests__/events.test.d.ts.map +0 -1
- package/dist/__tests__/events.test.js +0 -321
- package/dist/__tests__/events.test.js.map +0 -1
- package/dist/__tests__/fileAndBranchTools.test.d.ts +0 -6
- package/dist/__tests__/fileAndBranchTools.test.d.ts.map +0 -1
- package/dist/__tests__/fileAndBranchTools.test.js +0 -310
- package/dist/__tests__/fileAndBranchTools.test.js.map +0 -1
- package/dist/__tests__/indexer.test.d.ts +0 -6
- package/dist/__tests__/indexer.test.d.ts.map +0 -1
- package/dist/__tests__/indexer.test.js +0 -253
- package/dist/__tests__/indexer.test.js.map +0 -1
- package/dist/__tests__/issueTools.test.d.ts +0 -5
- package/dist/__tests__/issueTools.test.d.ts.map +0 -1
- package/dist/__tests__/issueTools.test.js +0 -183
- package/dist/__tests__/issueTools.test.js.map +0 -1
- package/dist/__tests__/links.test.d.ts +0 -10
- package/dist/__tests__/links.test.d.ts.map +0 -1
- package/dist/__tests__/links.test.js +0 -255
- package/dist/__tests__/links.test.js.map +0 -1
- package/dist/__tests__/prTools.test.d.ts +0 -5
- package/dist/__tests__/prTools.test.d.ts.map +0 -1
- package/dist/__tests__/prTools.test.js +0 -318
- package/dist/__tests__/prTools.test.js.map +0 -1
- package/dist/__tests__/refs.test.d.ts +0 -8
- package/dist/__tests__/refs.test.d.ts.map +0 -1
- package/dist/__tests__/refs.test.js +0 -702
- package/dist/__tests__/refs.test.js.map +0 -1
- package/dist/__tests__/releaseAndActionsTools.test.d.ts +0 -6
- package/dist/__tests__/releaseAndActionsTools.test.d.ts.map +0 -1
- package/dist/__tests__/releaseAndActionsTools.test.js +0 -315
- package/dist/__tests__/releaseAndActionsTools.test.js.map +0 -1
- package/dist/__tests__/repoTools.test.d.ts +0 -6
- package/dist/__tests__/repoTools.test.d.ts.map +0 -1
- package/dist/__tests__/repoTools.test.js +0 -308
- package/dist/__tests__/repoTools.test.js.map +0 -1
- package/dist/__tests__/service.test.d.ts +0 -6
- package/dist/__tests__/service.test.d.ts.map +0 -1
- package/dist/__tests__/service.test.js +0 -173
- package/dist/__tests__/service.test.js.map +0 -1
package/dist/documents/links.js
CHANGED
|
@@ -53,6 +53,12 @@ const OPAQUE = /^[A-Za-z][A-Za-z0-9+-]*:/;
|
|
|
53
53
|
* no path and stays opaque.
|
|
54
54
|
*/
|
|
55
55
|
const CREDENTIALS = /^[^/?#\s@]*@[^/?#\s]*\//;
|
|
56
|
+
/**
|
|
57
|
+
* GitHub's namespaces of a branch's and a tag's full name, which its own Raw links write
|
|
58
|
+
* (`https://github.com/cli/cli/raw/refs/tags/v2.0.0/README.md` for a file at the tag `v2.0.0`): the one form that tells
|
|
59
|
+
* a tag from a branch of the same name.
|
|
60
|
+
*/
|
|
61
|
+
const FULL_NAME = /^refs\/(?:heads|tags)\//;
|
|
56
62
|
/** Git's address of a repository over SSH without a scheme: `git@github.com:<owner>/<repo>.git`. */
|
|
57
63
|
const SCP = /^([A-Za-z0-9._-]+)@([^/:\s]+):(?!\/)(.*)$/;
|
|
58
64
|
/** A refusal: the address is GitHub's, and names nothing read here. */
|
|
@@ -151,21 +157,29 @@ function hasControl(text) {
|
|
|
151
157
|
return false;
|
|
152
158
|
}
|
|
153
159
|
/**
|
|
154
|
-
* A folder's or a file's `<ref>/<path>` from the segments after `/tree/`, `/blob/` or `/raw/`,
|
|
155
|
-
*
|
|
156
|
-
* (`refs/
|
|
160
|
+
* A folder's or a file's `<ref>/<path>` from the segments after `/tree/`, `/blob/` or `/raw/`, a branch's or a tag's
|
|
161
|
+
* full name (`refs/heads/<branch>`, `refs/tags/<tag>`) kept whole. Null for none, for another kind of reference
|
|
162
|
+
* (`refs/pull/`, `refs/remotes/`) or a namespace with no name, and for a text with an empty, `.` or `..` segment or a
|
|
163
|
+
* control character once decoded.
|
|
157
164
|
*/
|
|
158
165
|
function refAndPathOf(segments) {
|
|
159
|
-
|
|
160
|
-
if (parts[0] === 'refs') {
|
|
161
|
-
if (parts[1] !== 'heads' || parts.length < 3)
|
|
162
|
-
return null;
|
|
163
|
-
parts = parts.slice(2);
|
|
164
|
-
}
|
|
165
|
-
const text = parts.join('/');
|
|
166
|
+
const text = segments.join('/');
|
|
166
167
|
if (text === '' || hasControl(text))
|
|
167
168
|
return null;
|
|
168
|
-
|
|
169
|
+
const parts = text.split('/');
|
|
170
|
+
if (!parts.every((part) => part !== '' && part !== '.' && part !== '..'))
|
|
171
|
+
return null;
|
|
172
|
+
if (parts[0] === 'refs' && (parts.length < 3 || (parts[1] !== 'heads' && parts[1] !== 'tags')))
|
|
173
|
+
return null;
|
|
174
|
+
return text;
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* True for a ref and a path whose ref is followed by more of the text: a slash after the ref's name, the namespace of a
|
|
178
|
+
* full name aside. Where the ref ends is `resolveRef`'s to settle; a text without such a slash names a ref alone.
|
|
179
|
+
*/
|
|
180
|
+
function namesMore(refAndPath) {
|
|
181
|
+
const name = FULL_NAME.test(refAndPath) ? refAndPath.slice(refAndPath.indexOf('/', 'refs/'.length) + 1) : refAndPath;
|
|
182
|
+
return name.includes('/');
|
|
169
183
|
}
|
|
170
184
|
/** The owner and the repository of an address's first two segments, `.git` dropped; null when either is not one. */
|
|
171
185
|
function repositoryOf(segments) {
|
|
@@ -191,9 +205,10 @@ function siteLink(segments) {
|
|
|
191
205
|
const refAndPath = refAndPathOf(segments.slice(3));
|
|
192
206
|
if (refAndPath === null)
|
|
193
207
|
return refused();
|
|
194
|
-
const named = refAndPath
|
|
195
|
-
// GitHub
|
|
196
|
-
|
|
208
|
+
const named = namesMore(refAndPath);
|
|
209
|
+
// GitHub redirects a blob address that names a ref alone by its short name to the folder, and answers 404 for one that
|
|
210
|
+
// names it by its full name and for a raw one.
|
|
211
|
+
if (view === 'tree' || (view === 'blob' && !named && !FULL_NAME.test(refAndPath)))
|
|
197
212
|
return { kind: 'github_folder', ...repository, refAndPath };
|
|
198
213
|
if (!named)
|
|
199
214
|
return refused();
|
|
@@ -205,19 +220,19 @@ function rawLink(segments) {
|
|
|
205
220
|
return refused();
|
|
206
221
|
const repository = repositoryOf(segments);
|
|
207
222
|
const refAndPath = refAndPathOf(segments.slice(2));
|
|
208
|
-
if (repository === null || refAndPath === null || !refAndPath
|
|
223
|
+
if (repository === null || refAndPath === null || !namesMore(refAndPath))
|
|
209
224
|
return refused();
|
|
210
225
|
return { kind: 'github_file', ...repository, refAndPath, raw: true };
|
|
211
226
|
}
|
|
212
227
|
/**
|
|
213
228
|
* What a GitHub address names, read without a request. Null for an address whose host is not GitHub's, and for text
|
|
214
229
|
* that is no address; `refused` for an address on GitHub's hosts that names no repository, folder or file read here: an
|
|
215
|
-
* account, an issue, a pull request, a wiki, a release, a commit, a
|
|
216
|
-
* the API, an archive, GitHub's own pages, an address that carries credentials (with a
|
|
217
|
-
* `<user>:<password>@github.com/...`), a host of GitHub Enterprise Cloud with data residency
|
|
218
|
-
* and a host other than github.com, www.github.com and raw.githubusercontent.com. The scheme
|
|
219
|
-
* the dots that end a host, `.git`, a trailing slash, a query and a fragment are ignored, and
|
|
220
|
-
* an SSH address (`git@github.com:<owner>/<repo>.git`).
|
|
230
|
+
* account, an issue, a pull request, a wiki, a release, a commit, a reference that is neither a branch nor a tag
|
|
231
|
+
* (`refs/pull/<n>/head`), a gist, the API, an archive, GitHub's own pages, an address that carries credentials (with a
|
|
232
|
+
* scheme or without one: `<user>:<password>@github.com/...`), a host of GitHub Enterprise Cloud with data residency
|
|
233
|
+
* (`<subdomain>.ghe.com`), and a host other than github.com, www.github.com and raw.githubusercontent.com. The scheme
|
|
234
|
+
* (or its absence), a port, the dots that end a host, `.git`, a trailing slash, a query and a fragment are ignored, and
|
|
235
|
+
* so is the `git` user of an SSH address (`git@github.com:<owner>/<repo>.git`).
|
|
221
236
|
*
|
|
222
237
|
* The text is read as the URL standard reads an address: the C0 controls and spaces around it, and any other white
|
|
223
238
|
* space there, are dropped, and every tab and newline in it; after `http`, `https`, `ws`, `wss` and `ftp` any run of
|
|
@@ -226,9 +241,13 @@ function rawLink(segments) {
|
|
|
226
241
|
* other scheme, `//`. A backslash in the path is a slash.
|
|
227
242
|
*
|
|
228
243
|
* A folder's and a file's ref and path are answered as one text, each segment decoded, since a branch name may hold a
|
|
229
|
-
* slash
|
|
230
|
-
*
|
|
231
|
-
*
|
|
244
|
+
* slash. A branch's or a tag's full name, `refs/heads/<branch>` or `refs/tags/<tag>`, the form GitHub's own Raw links
|
|
245
|
+
* write, stays whole in it, so `resolveRef` reads the name among the branches or the tags alone: the full name is the
|
|
246
|
+
* one form that tells a tag from a branch of the same name, or a branch from a longer tag beside it (the branch
|
|
247
|
+
* `release` and the tag `release/2.0`). A `/blob/` address whose text has no slash names a ref alone and is a folder,
|
|
248
|
+
* as GitHub shows it (its `/blob/<ref>` redirects to `/tree/<ref>`); one whose text has a slash is a file, which
|
|
249
|
+
* `resolveRef` may settle as a ref alone (an empty path). A full name with nothing after it under `/blob/` or `/raw/`
|
|
250
|
+
* names no file, as GitHub answers it 404, and is refused.
|
|
232
251
|
*
|
|
233
252
|
* @param text The address as pasted; the controls and spaces around it are dropped.
|
|
234
253
|
* @throws TypeError when `text` is not a string.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"links.js","sourceRoot":"","sources":["../../src/documents/links.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"links.js","sourceRoot":"","sources":["../../src/documents/links.ts"],"names":[],"mappings":"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"}
|
package/dist/documents/tree.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @fileoverview A repository's tree at a commit, read within a request budget, and the filter that keeps its
|
|
3
3
|
* documentation. GitHub cuts a recursive tree past 100,000 entries or 7 MB and marks it `truncated`; such a tree is
|
|
4
|
-
* read again one subtree at a time,
|
|
4
|
+
* read again one subtree at a time, a folder's files by the folders on its path alone, and a level GitHub cuts short
|
|
5
|
+
* even when asked for alone is refused whole.
|
|
5
6
|
* @module agentos-ext-github/documents/tree
|
|
6
7
|
*/
|
|
7
8
|
/** One file of a tree: its path from the repository's root, its blob and its size in bytes. */
|
|
@@ -77,23 +78,40 @@ export declare class TreeTooLarge extends Error {
|
|
|
77
78
|
*/
|
|
78
79
|
constructor(maxRequests: number, reason?: TreeTooLargeReason);
|
|
79
80
|
}
|
|
80
|
-
/** The budget of a tree read, the folders it never walks into, and its abort signal. */
|
|
81
|
+
/** The budget of a tree read, the folders it never walks into, the folder or the file it reads, and its abort signal. */
|
|
81
82
|
export interface ReadTreeOptions {
|
|
82
83
|
/** At most this many requests ({@link DEFAULT_MAX_TREE_REQUESTS} when absent). */
|
|
83
84
|
maxRequests?: number;
|
|
84
85
|
/** Folders, by name, whose files are left out and which a read by subtree never requests. */
|
|
85
86
|
skipFolders?: readonly string[];
|
|
87
|
+
/**
|
|
88
|
+
* A folder of the tree, or a file, by its path with no leading or trailing slash: the files at it or under it are
|
|
89
|
+
* read, and no others. When GitHub truncates the recursive tree, the folders on the path are asked for one at a time
|
|
90
|
+
* and the folder it names is read as a whole tree is, so the read costs the path's depth and the folder's own
|
|
91
|
+
* subtree, whatever lies beside it. The whole tree when absent or `''`.
|
|
92
|
+
*/
|
|
93
|
+
path?: string;
|
|
86
94
|
signal?: AbortSignal;
|
|
87
95
|
}
|
|
88
96
|
/** A file's extension with its dot, in lower case, or `''` when its name has none. */
|
|
89
97
|
export declare function extensionOf(path: string): string;
|
|
90
98
|
/**
|
|
91
|
-
* Every file of a repository's tree at a commit (symbolic links aside)
|
|
92
|
-
* answers it truncated, its top level is read and each subtree is
|
|
93
|
-
* for one answer cost a request per folder. Each request counts
|
|
94
|
-
* {@link TreeTooLarge} (`budget`) rather than make one more. A level GitHub
|
|
95
|
-
* throws {@link TreeTooLarge} (`truncated`) at that answer, before any
|
|
96
|
-
* `truncated` field can be set on any answer, and a part of the tree
|
|
99
|
+
* Every file of a repository's tree at a commit (symbolic links aside), or of the folder or the file `options.path`
|
|
100
|
+
* names. The tree is asked for recursively; when GitHub answers it truncated, its top level is read and each subtree is
|
|
101
|
+
* asked for the same way, so only the parts too large for one answer cost a request per folder. Each request counts
|
|
102
|
+
* against `maxRequests`, and the read throws {@link TreeTooLarge} (`budget`) rather than make one more. A level GitHub
|
|
103
|
+
* answers truncated without recursion as well throws {@link TreeTooLarge} (`truncated`) at that answer, before any
|
|
104
|
+
* folder under it is asked for: the tree answer's `truncated` field can be set on any answer, and a part of the tree
|
|
105
|
+
* would leave out files that then read as removed.
|
|
106
|
+
*
|
|
107
|
+
* With a `path`, the files at it or under it are answered. A truncated tree is then read by the folders on the path
|
|
108
|
+
* alone, each asked for without recursion, down to the folder the path names, which is read as above, or to the file:
|
|
109
|
+
* a small folder of a large repository costs the path's depth and its own subtree, never a request for a folder beside
|
|
110
|
+
* it. A level that does not name the path's next folder or file answers no file, unless GitHub cut that level short,
|
|
111
|
+
* which throws {@link TreeTooLarge} (`truncated`), since the name may stand past the cut; a level cut short that names
|
|
112
|
+
* it is read on, since the folder's own subtree is whole. A path through a skipped folder (one of its segments before
|
|
113
|
+
* the last, which may name a file) holds no file kept, so it answers no file before any request, whatever the tree; a
|
|
114
|
+
* read whose signal is already aborted throws {@link GitHubNoAnswer} (`cancelled`) there, as a request would.
|
|
97
115
|
*
|
|
98
116
|
* Name the repository by its id. A full name reads whatever repository holds that name when the tree is asked for: a
|
|
99
117
|
* renamed repository's old name can be taken again, and an account's old login claimed by another account, which ends
|
|
@@ -105,8 +123,9 @@ export declare function extensionOf(path: string): string;
|
|
|
105
123
|
* @param repository The repository's id, read at `/repositories/<id>`, or its full name, `owner/name`.
|
|
106
124
|
* @param commit The commit whose tree is read.
|
|
107
125
|
* @param apiBase GitHub's REST API, or a stand-in's address in tests.
|
|
108
|
-
* @param options The request budget, the folders skipped and an abort signal.
|
|
109
|
-
* @throws TypeError before any request when `repository` is a number that is not a positive integer.
|
|
126
|
+
* @param options The request budget, the folders skipped, the folder or the file read and an abort signal.
|
|
127
|
+
* @throws TypeError before any request when `repository` is a number that is not a positive integer, or `options.path`
|
|
128
|
+
* has an empty, `.` or `..` segment or is not text.
|
|
110
129
|
*/
|
|
111
130
|
export declare function readTree(fetchImpl: typeof fetch, token: string, repository: number | string, commit: string, apiBase?: string, options?: ReadTreeOptions): Promise<TreeBlob[]>;
|
|
112
131
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../src/documents/tree.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../src/documents/tree.ts"],"names":[],"mappings":"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"}
|
package/dist/documents/tree.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @fileoverview A repository's tree at a commit, read within a request budget, and the filter that keeps its
|
|
3
3
|
* documentation. GitHub cuts a recursive tree past 100,000 entries or 7 MB and marks it `truncated`; such a tree is
|
|
4
|
-
* read again one subtree at a time,
|
|
4
|
+
* read again one subtree at a time, a folder's files by the folders on its path alone, and a level GitHub cuts short
|
|
5
|
+
* even when asked for alone is refused whole.
|
|
5
6
|
* @module agentos-ext-github/documents/tree
|
|
6
7
|
*/
|
|
7
|
-
import { arrayOf, GITHUB_API_BASE, githubFetch, objectOf, repositoryPath, stringIn } from '../app/http.js';
|
|
8
|
+
import { arrayOf, GITHUB_API_BASE, githubFetch, GitHubNoAnswer, objectOf, repositoryPath, stringIn } from '../app/http.js';
|
|
8
9
|
/** The documentation kept by default: Markdown, text, reStructuredText, HTML, PDF and Word files. */
|
|
9
10
|
export const DOCUMENT_EXTENSIONS = ['.md', '.markdown', '.txt', '.rst', '.html', '.htm', '.pdf', '.docx'];
|
|
10
11
|
/** The folders skipped by default: dependencies, build output and vendored code. */
|
|
@@ -89,12 +90,22 @@ function inSkippedFolder(path, skip) {
|
|
|
89
90
|
return path.split('/').slice(0, -1).some((folder) => skip.has(folder));
|
|
90
91
|
}
|
|
91
92
|
/**
|
|
92
|
-
* Every file of a repository's tree at a commit (symbolic links aside)
|
|
93
|
-
* answers it truncated, its top level is read and each subtree is
|
|
94
|
-
* for one answer cost a request per folder. Each request counts
|
|
95
|
-
* {@link TreeTooLarge} (`budget`) rather than make one more. A level GitHub
|
|
96
|
-
* throws {@link TreeTooLarge} (`truncated`) at that answer, before any
|
|
97
|
-
* `truncated` field can be set on any answer, and a part of the tree
|
|
93
|
+
* Every file of a repository's tree at a commit (symbolic links aside), or of the folder or the file `options.path`
|
|
94
|
+
* names. The tree is asked for recursively; when GitHub answers it truncated, its top level is read and each subtree is
|
|
95
|
+
* asked for the same way, so only the parts too large for one answer cost a request per folder. Each request counts
|
|
96
|
+
* against `maxRequests`, and the read throws {@link TreeTooLarge} (`budget`) rather than make one more. A level GitHub
|
|
97
|
+
* answers truncated without recursion as well throws {@link TreeTooLarge} (`truncated`) at that answer, before any
|
|
98
|
+
* folder under it is asked for: the tree answer's `truncated` field can be set on any answer, and a part of the tree
|
|
99
|
+
* would leave out files that then read as removed.
|
|
100
|
+
*
|
|
101
|
+
* With a `path`, the files at it or under it are answered. A truncated tree is then read by the folders on the path
|
|
102
|
+
* alone, each asked for without recursion, down to the folder the path names, which is read as above, or to the file:
|
|
103
|
+
* a small folder of a large repository costs the path's depth and its own subtree, never a request for a folder beside
|
|
104
|
+
* it. A level that does not name the path's next folder or file answers no file, unless GitHub cut that level short,
|
|
105
|
+
* which throws {@link TreeTooLarge} (`truncated`), since the name may stand past the cut; a level cut short that names
|
|
106
|
+
* it is read on, since the folder's own subtree is whole. A path through a skipped folder (one of its segments before
|
|
107
|
+
* the last, which may name a file) holds no file kept, so it answers no file before any request, whatever the tree; a
|
|
108
|
+
* read whose signal is already aborted throws {@link GitHubNoAnswer} (`cancelled`) there, as a request would.
|
|
98
109
|
*
|
|
99
110
|
* Name the repository by its id. A full name reads whatever repository holds that name when the tree is asked for: a
|
|
100
111
|
* renamed repository's old name can be taken again, and an account's old login claimed by another account, which ends
|
|
@@ -106,15 +117,23 @@ function inSkippedFolder(path, skip) {
|
|
|
106
117
|
* @param repository The repository's id, read at `/repositories/<id>`, or its full name, `owner/name`.
|
|
107
118
|
* @param commit The commit whose tree is read.
|
|
108
119
|
* @param apiBase GitHub's REST API, or a stand-in's address in tests.
|
|
109
|
-
* @param options The request budget, the folders skipped and an abort signal.
|
|
110
|
-
* @throws TypeError before any request when `repository` is a number that is not a positive integer.
|
|
120
|
+
* @param options The request budget, the folders skipped, the folder or the file read and an abort signal.
|
|
121
|
+
* @throws TypeError before any request when `repository` is a number that is not a positive integer, or `options.path`
|
|
122
|
+
* has an empty, `.` or `..` segment or is not text.
|
|
111
123
|
*/
|
|
112
124
|
export async function readTree(fetchImpl, token, repository, commit, apiBase = GITHUB_API_BASE, options = {}) {
|
|
113
125
|
const address = `${apiBase}/${repositoryPath(repository)}`;
|
|
126
|
+
const target = pathOf(options.path);
|
|
114
127
|
const maxRequests = options.maxRequests ?? DEFAULT_MAX_TREE_REQUESTS;
|
|
115
128
|
const skip = new Set(options.skipFolders ?? []);
|
|
116
129
|
const blobs = [];
|
|
117
130
|
let requests = 0;
|
|
131
|
+
// A path through a skipped folder holds no file kept, so no level, whole or cut short, is asked for.
|
|
132
|
+
if (inSkippedFolder(target, skip)) {
|
|
133
|
+
if (options.signal?.aborted === true)
|
|
134
|
+
throw new GitHubNoAnswer('cancelled');
|
|
135
|
+
return blobs;
|
|
136
|
+
}
|
|
118
137
|
const read = async (sha, recursive) => {
|
|
119
138
|
if (requests >= maxRequests)
|
|
120
139
|
throw new TreeTooLarge(maxRequests);
|
|
@@ -149,7 +168,47 @@ export async function readTree(fetchImpl, token, repository, commit, apiBase = G
|
|
|
149
168
|
}
|
|
150
169
|
}
|
|
151
170
|
};
|
|
152
|
-
|
|
171
|
+
/**
|
|
172
|
+
* The files at `target` or under it: the tree asked for recursively once, and, when GitHub cuts it short, each folder
|
|
173
|
+
* on the path asked for alone down to the folder the path names, which `walk` reads, or to the file.
|
|
174
|
+
*/
|
|
175
|
+
const within = async () => {
|
|
176
|
+
const whole = await read(commit, true);
|
|
177
|
+
if (!whole.truncated) {
|
|
178
|
+
const folder = `${target}/`;
|
|
179
|
+
for (const entry of whole.entries)
|
|
180
|
+
if (entry.path === target || entry.path.startsWith(folder))
|
|
181
|
+
keep(entry, entry.path);
|
|
182
|
+
return;
|
|
183
|
+
}
|
|
184
|
+
const names = target.split('/');
|
|
185
|
+
let sha = commit;
|
|
186
|
+
let prefix = '';
|
|
187
|
+
for (const [index, name] of names.entries()) {
|
|
188
|
+
const level = await read(sha, false);
|
|
189
|
+
const entry = level.entries.find((candidate) => candidate.path === name);
|
|
190
|
+
// A level cut short may hold the name past its cut; one read whole holds every name it has.
|
|
191
|
+
if (entry === undefined) {
|
|
192
|
+
if (level.truncated)
|
|
193
|
+
throw new TreeTooLarge(maxRequests, 'truncated');
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
196
|
+
if (entry.type !== 'tree') {
|
|
197
|
+
if (index === names.length - 1)
|
|
198
|
+
keep(entry, `${prefix}${name}`);
|
|
199
|
+
return;
|
|
200
|
+
}
|
|
201
|
+
if (skip.has(name))
|
|
202
|
+
return;
|
|
203
|
+
sha = entry.sha;
|
|
204
|
+
prefix = `${prefix}${name}/`;
|
|
205
|
+
}
|
|
206
|
+
await walk(sha, prefix);
|
|
207
|
+
};
|
|
208
|
+
if (target === '')
|
|
209
|
+
await walk(commit, '');
|
|
210
|
+
else
|
|
211
|
+
await within();
|
|
153
212
|
return blobs;
|
|
154
213
|
}
|
|
155
214
|
/** Blobs in path order. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree.js","sourceRoot":"","sources":["../../src/documents/tree.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tree.js","sourceRoot":"","sources":["../../src/documents/tree.ts"],"names":[],"mappings":"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"}
|
package/manifest.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$schema": "https://agentos.sh/schemas/extension-manifest-v1.json",
|
|
3
3
|
"id": "com.framers.integrations.github",
|
|
4
4
|
"name": "GitHub Extension",
|
|
5
|
-
"version": "0.
|
|
5
|
+
"version": "0.10.1",
|
|
6
6
|
"description": "GitHub API tools: 26 tools for repos, issues, PRs, branches, commits, releases, Actions, files, gists, and codebase indexing. Its ./documents entry adds a GitHub App's installation mode (the app's JWT, installation tokens, the user's web flow, webhook deliveries checked and read as typed events, a daily reconcile, every call under a deadline with rate limit timing) and a connector that reads a repository's documentation as account sources.",
|
|
7
7
|
"categories": ["tool", "developer"],
|
|
8
8
|
"extensions": [
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@framers/agentos-ext-github",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "GitHub API tools for AgentOS — search repos/code, manage issues/PRs, read files, create gists",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -42,10 +42,10 @@
|
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@types/node": "^20.0.0",
|
|
45
|
-
"typescript": "^
|
|
45
|
+
"typescript": "^6.0.3",
|
|
46
46
|
"vitest": "^3.2.7",
|
|
47
|
-
"@framers/agentos": "^0.
|
|
48
|
-
"@framers/agentos
|
|
47
|
+
"@framers/agentos-ext-account-sources": "^0.11.0",
|
|
48
|
+
"@framers/agentos": "^0.15.67"
|
|
49
49
|
},
|
|
50
50
|
"engines": {
|
|
51
51
|
"node": ">=22"
|
|
@@ -59,10 +59,12 @@
|
|
|
59
59
|
"bugs": {
|
|
60
60
|
"url": "https://github.com/framerslab/agentos-extensions/issues"
|
|
61
61
|
},
|
|
62
|
+
"gitHead": "6397d0f3417f6a74ad2fdcd666fd0634e832fb40",
|
|
62
63
|
"scripts": {
|
|
63
64
|
"build": "tsc",
|
|
64
65
|
"dev": "tsc --watch",
|
|
65
|
-
"
|
|
66
|
+
"typecheck": "tsc -p tsconfig.test.json",
|
|
67
|
+
"test": "tsc -p tsconfig.test.json && vitest run --passWithNoTests",
|
|
66
68
|
"clean": "rm -rf dist"
|
|
67
69
|
}
|
|
68
70
|
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview The GitHub App half of the `./documents` entry, driven over a fetch stand-in that records each
|
|
3
|
-
* request: the app's JWT, installation tokens, the user's web flow, a user's installations and repositories, the
|
|
4
|
-
* webhook signature, the daily reconcile and the uninstall, and the REST calls under them.
|
|
5
|
-
*/
|
|
6
|
-
export {};
|
|
7
|
-
//# sourceMappingURL=app.test.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"app.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/app.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
|