baxian 2.0.6 → 2.0.8
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 +2 -3
- package/README.zh-CN.md +2 -3
- package/dist/agent/bootstrap-poller.d.ts +2 -2
- package/dist/agent/bootstrap-poller.d.ts.map +1 -1
- package/dist/agent/bootstrap-poller.js.map +1 -1
- package/dist/agent/bootstrap.d.ts +1 -1
- package/dist/agent/bootstrap.d.ts.map +1 -1
- package/dist/agent/bootstrap.js +24 -48
- package/dist/agent/bootstrap.js.map +1 -1
- package/dist/agent/manager.d.ts +10 -36
- package/dist/agent/manager.d.ts.map +1 -1
- package/dist/agent/manager.js +103 -342
- package/dist/agent/manager.js.map +1 -1
- package/dist/agent/net-exec.d.ts +0 -1
- package/dist/agent/net-exec.d.ts.map +1 -1
- package/dist/agent/net-exec.js +0 -1
- package/dist/agent/net-exec.js.map +1 -1
- package/dist/agent/pane-streamer-manager.d.ts.map +1 -1
- package/dist/agent/pane-streamer-manager.js +1 -3
- package/dist/agent/pane-streamer-manager.js.map +1 -1
- package/dist/agent/preflight.d.ts +1 -20
- package/dist/agent/preflight.d.ts.map +1 -1
- package/dist/agent/preflight.js +39 -122
- package/dist/agent/preflight.js.map +1 -1
- package/dist/agent/prompt.d.ts +6 -16
- package/dist/agent/prompt.d.ts.map +1 -1
- package/dist/agent/prompt.js +128 -79
- package/dist/agent/prompt.js.map +1 -1
- package/dist/agent/repo-store.d.ts +1 -5
- package/dist/agent/repo-store.d.ts.map +1 -1
- package/dist/agent/repo-store.js +8 -33
- package/dist/agent/repo-store.js.map +1 -1
- package/dist/agent/runner.d.ts +1 -1
- package/dist/agent/runner.d.ts.map +1 -1
- package/dist/agent/runner.js +1 -3
- package/dist/agent/runner.js.map +1 -1
- package/dist/api/config.d.ts +1 -2
- package/dist/api/config.d.ts.map +1 -1
- package/dist/api/config.js +5 -22
- package/dist/api/config.js.map +1 -1
- package/dist/api/platform-guard.d.ts.map +1 -1
- package/dist/api/platform-guard.js +5 -15
- package/dist/api/platform-guard.js.map +1 -1
- package/dist/api/projects.d.ts.map +1 -1
- package/dist/api/projects.js +18 -25
- package/dist/api/projects.js.map +1 -1
- package/dist/api/tasks.js +2 -2
- package/dist/api/tasks.js.map +1 -1
- package/dist/cli.js.map +1 -1
- package/dist/config/hot-reload.d.ts +3 -2
- package/dist/config/hot-reload.d.ts.map +1 -1
- package/dist/config/hot-reload.js +6 -16
- package/dist/config/hot-reload.js.map +1 -1
- package/dist/config/loader.d.ts +1 -5
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +31 -31
- package/dist/config/loader.js.map +1 -1
- package/dist/config/validator.d.ts +2 -8
- package/dist/config/validator.d.ts.map +1 -1
- package/dist/config/validator.js +42 -120
- package/dist/config/validator.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -29
- package/dist/index.js.map +1 -1
- package/dist/platform/driver-host.d.ts +4 -3
- package/dist/platform/driver-host.d.ts.map +1 -1
- package/dist/platform/driver-host.js +12 -11
- package/dist/platform/driver-host.js.map +1 -1
- package/dist/platform/feedback.d.ts +5 -6
- package/dist/platform/feedback.d.ts.map +1 -1
- package/dist/platform/feedback.js +4 -7
- package/dist/platform/feedback.js.map +1 -1
- package/dist/platform/github-driver.d.ts +36 -0
- package/dist/platform/github-driver.d.ts.map +1 -0
- package/dist/platform/github-driver.js +374 -0
- package/dist/platform/github-driver.js.map +1 -0
- package/dist/platform/markers.d.ts +1 -4
- package/dist/platform/markers.d.ts.map +1 -1
- package/dist/platform/markers.js +0 -8
- package/dist/platform/markers.js.map +1 -1
- package/dist/platform/platform-poller.d.ts +2 -17
- package/dist/platform/platform-poller.d.ts.map +1 -1
- package/dist/platform/platform-poller.js +9 -15
- package/dist/platform/platform-poller.js.map +1 -1
- package/dist/platform/response-parser.d.ts.map +1 -1
- package/dist/platform/response-parser.js +6 -63
- package/dist/platform/response-parser.js.map +1 -1
- package/dist/platform/review-timeline.d.ts +6 -8
- package/dist/platform/review-timeline.d.ts.map +1 -1
- package/dist/platform/review-timeline.js +4 -6
- package/dist/platform/review-timeline.js.map +1 -1
- package/dist/platform/row-schema.d.ts +1 -2
- package/dist/platform/row-schema.d.ts.map +1 -1
- package/dist/platform/row-schema.js +13 -1
- package/dist/platform/row-schema.js.map +1 -1
- package/dist/platform/startup.d.ts +6 -34
- package/dist/platform/startup.d.ts.map +1 -1
- package/dist/platform/startup.js +10 -109
- package/dist/platform/startup.js.map +1 -1
- package/dist/platform/types.d.ts +61 -54
- package/dist/platform/types.d.ts.map +1 -1
- package/dist/platform/types.js +38 -26
- package/dist/platform/types.js.map +1 -1
- package/dist/platform/verdict-engine.d.ts +1 -1
- package/dist/platform/verdict-engine.d.ts.map +1 -1
- package/dist/platform/verdict-engine.js +1 -1
- package/dist/platform/verdict-engine.js.map +1 -1
- package/dist/shared/constants.d.ts +2 -6
- package/dist/shared/constants.d.ts.map +1 -1
- package/dist/shared/constants.js +2 -17
- package/dist/shared/constants.js.map +1 -1
- package/dist/shared/git-url.d.ts +0 -14
- package/dist/shared/git-url.d.ts.map +1 -1
- package/dist/shared/git-url.js +4 -57
- package/dist/shared/git-url.js.map +1 -1
- package/dist/shared/types.d.ts +2 -10
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/shared/types.js.map +1 -1
- package/dist/state/agent-store.js +0 -3
- package/dist/state/agent-store.js.map +1 -1
- package/dist/state/task-store.js +2 -2
- package/dist/state/task-store.js.map +1 -1
- package/dist/web/assets/index-KH_4rYrI.js +15 -0
- package/dist/web/index.html +1 -1
- package/package.json +1 -1
- package/dist/config/normalizer.d.ts +0 -2
- package/dist/config/normalizer.d.ts.map +0 -1
- package/dist/config/normalizer.js +0 -46
- package/dist/config/normalizer.js.map +0 -1
- package/dist/platform/command-renderer.d.ts +0 -29
- package/dist/platform/command-renderer.d.ts.map +0 -1
- package/dist/platform/command-renderer.js +0 -113
- package/dist/platform/command-renderer.js.map +0 -1
- package/dist/platform/driver-spec.d.ts +0 -7
- package/dist/platform/driver-spec.d.ts.map +0 -1
- package/dist/platform/driver-spec.js +0 -506
- package/dist/platform/driver-spec.js.map +0 -1
- package/dist/platform/field-mapper.d.ts +0 -7
- package/dist/platform/field-mapper.d.ts.map +0 -1
- package/dist/platform/field-mapper.js +0 -109
- package/dist/platform/field-mapper.js.map +0 -1
- package/dist/platform/git-driver.d.ts +0 -64
- package/dist/platform/git-driver.d.ts.map +0 -1
- package/dist/platform/git-driver.js +0 -230
- package/dist/platform/git-driver.js.map +0 -1
- package/dist/platform/manifest.d.ts +0 -11
- package/dist/platform/manifest.d.ts.map +0 -1
- package/dist/platform/manifest.js +0 -42
- package/dist/platform/manifest.js.map +0 -1
- package/dist/platform/plugin-registry.d.ts +0 -31
- package/dist/platform/plugin-registry.d.ts.map +0 -1
- package/dist/platform/plugin-registry.js +0 -239
- package/dist/platform/plugin-registry.js.map +0 -1
- package/dist/platform/plugin-roots.d.ts +0 -3
- package/dist/platform/plugin-roots.d.ts.map +0 -1
- package/dist/platform/plugin-roots.js +0 -9
- package/dist/platform/plugin-roots.js.map +0 -1
- package/dist/platform/plugins/github/baxian-plugin.json +0 -8
- package/dist/platform/plugins/github/driver.json +0 -153
- package/dist/platform/plugins/github/skills/baxian-cli-gh/SKILL.md +0 -115
- package/dist/platform/plugins/github/skills/baxian-cli-gh/agents/openai.yaml +0 -2
- package/dist/platform/preflight-exec.d.ts +0 -21
- package/dist/platform/preflight-exec.d.ts.map +0 -1
- package/dist/platform/preflight-exec.js +0 -53
- package/dist/platform/preflight-exec.js.map +0 -1
- package/dist/skill/registry.d.ts +0 -37
- package/dist/skill/registry.d.ts.map +0 -1
- package/dist/skill/registry.js +0 -234
- package/dist/skill/registry.js.map +0 -1
- package/dist/skills/baxian-greeting/SKILL.md +0 -15
- package/dist/skills/baxian-greeting/agents/openai.yaml +0 -2
- package/dist/skills/baxian-pr-feedback/SKILL.md +0 -41
- package/dist/skills/baxian-pr-feedback/agents/openai.yaml +0 -2
- package/dist/skills/baxian-pr-recheck/SKILL.md +0 -27
- package/dist/skills/baxian-pr-recheck/agents/openai.yaml +0 -2
- package/dist/skills/baxian-pr-review/SKILL.md +0 -33
- package/dist/skills/baxian-pr-review/agents/openai.yaml +0 -2
- package/dist/skills/baxian-signals/SKILL.md +0 -86
- package/dist/skills/baxian-signals/agents/openai.yaml +0 -2
- package/dist/skills/baxian-task-check/SKILL.md +0 -52
- package/dist/skills/baxian-task-check/agents/openai.yaml +0 -2
- package/dist/web/assets/index-CF2C4Fq-.js +0 -15
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"field-mapper.js","sourceRoot":"","sources":["../../src/platform/field-mapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { type CommentSourceOp, type DriverSpec } from './types.js';
|
|
2
|
-
import { type RenderContext } from './command-renderer.js';
|
|
3
|
-
import { type DriverPreflightStepResult } from './preflight-exec.js';
|
|
4
|
-
import { type NormalizedRow } from './row-schema.js';
|
|
5
|
-
export declare const DRIVER_MAX_BUFFER: number;
|
|
6
|
-
export declare const DRIVER_EXEC_TIMEOUT_MS = 60000;
|
|
7
|
-
export interface DriverExecResult {
|
|
8
|
-
stdout: string;
|
|
9
|
-
stderr: string;
|
|
10
|
-
exitCode: number;
|
|
11
|
-
}
|
|
12
|
-
export type DriverExec = (command: string, opts: {
|
|
13
|
-
timeout: number;
|
|
14
|
-
maxBuffer: number;
|
|
15
|
-
stdin?: Buffer;
|
|
16
|
-
}) => Promise<DriverExecResult>;
|
|
17
|
-
export declare class DriverOpError extends Error {
|
|
18
|
-
readonly info: {
|
|
19
|
-
opName: string;
|
|
20
|
-
errorClass?: string;
|
|
21
|
-
exitCode?: number;
|
|
22
|
-
stderrTail?: string;
|
|
23
|
-
};
|
|
24
|
-
constructor(message: string, info: {
|
|
25
|
-
opName: string;
|
|
26
|
-
errorClass?: string;
|
|
27
|
-
exitCode?: number;
|
|
28
|
-
stderrTail?: string;
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
export declare function safeDriverErrorText(err: unknown): string;
|
|
32
|
-
export interface OpVars {
|
|
33
|
-
prNumber?: number;
|
|
34
|
-
expectedHeadSha?: string;
|
|
35
|
-
remoteProjectId?: string;
|
|
36
|
-
branch?: string;
|
|
37
|
-
body?: string;
|
|
38
|
-
}
|
|
39
|
-
export declare function buildDriverRunContext(repoUrl: string, binary: string): RenderContext;
|
|
40
|
-
export declare class GitDriver {
|
|
41
|
-
private readonly plugin;
|
|
42
|
-
private readonly ctx;
|
|
43
|
-
private readonly exec;
|
|
44
|
-
private readonly errorMatchers;
|
|
45
|
-
readonly preflightIdentity: string;
|
|
46
|
-
constructor(plugin: {
|
|
47
|
-
spec: DriverSpec;
|
|
48
|
-
manifest?: {
|
|
49
|
-
minToolVersion: string;
|
|
50
|
-
};
|
|
51
|
-
}, ctx: RenderContext, exec: DriverExec);
|
|
52
|
-
get visibilityLagMs(): number;
|
|
53
|
-
get commentSources(): CommentSourceOp[];
|
|
54
|
-
runPreflightSteps(): Promise<DriverPreflightStepResult[]>;
|
|
55
|
-
classify(text: string): string | undefined;
|
|
56
|
-
runOp(opName: string, vars?: OpVars): Promise<NormalizedRow[]>;
|
|
57
|
-
runListPrs(vars: OpVars, shouldStop?: (pageRows: NormalizedRow[], page: number) => boolean): Promise<NormalizedRow[]>;
|
|
58
|
-
runCommentSource(source: CommentSourceOp, vars: OpVars, projectPage?: (pageRows: NormalizedRow[]) => NormalizedRow[], shouldStop?: (pageRows: NormalizedRow[], page: number) => boolean): Promise<NormalizedRow[]>;
|
|
59
|
-
private namedOp;
|
|
60
|
-
private execRendered;
|
|
61
|
-
private assertGraphqlEnvelope;
|
|
62
|
-
private runPaged;
|
|
63
|
-
}
|
|
64
|
-
//# sourceMappingURL=git-driver.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"git-driver.d.ts","sourceRoot":"","sources":["../../src/platform/git-driver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,230 +0,0 @@
|
|
|
1
|
-
import { SINGLE_RESOURCE_OPS } from './types.js';
|
|
2
|
-
import { renderCommand, renderCommandStdin } from './command-renderer.js';
|
|
3
|
-
import { runDriverPreflightSteps } from './preflight-exec.js';
|
|
4
|
-
import { parseJsonResponse, parseJsonPagedPage } from './response-parser.js';
|
|
5
|
-
import { mapResponse } from './field-mapper.js';
|
|
6
|
-
import { validateRows } from './row-schema.js';
|
|
7
|
-
import { isGitHubRepo, repoSlug, parseRepoUrlParts } from '../shared/git-url.js';
|
|
8
|
-
import { isRecord } from '../shared/index.js';
|
|
9
|
-
import { createHash } from 'node:crypto';
|
|
10
|
-
export const DRIVER_MAX_BUFFER = 64 * 1024 * 1024;
|
|
11
|
-
export const DRIVER_EXEC_TIMEOUT_MS = 60_000;
|
|
12
|
-
const LIST_PRS_PAGE_CAP = 10;
|
|
13
|
-
const COMMENT_SOURCE_PAGE_CAP = 100;
|
|
14
|
-
const STDERR_TAIL_CHARS = 500;
|
|
15
|
-
export class DriverOpError extends Error {
|
|
16
|
-
info;
|
|
17
|
-
constructor(message, info) {
|
|
18
|
-
super(message);
|
|
19
|
-
this.info = info;
|
|
20
|
-
this.name = 'DriverOpError';
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
const SAFE_ERROR_SUMMARY_CHARS = 200;
|
|
24
|
-
export function safeDriverErrorText(err) {
|
|
25
|
-
if (err instanceof DriverOpError) {
|
|
26
|
-
const cls = err.info.errorClass ? `, class ${err.info.errorClass}` : '';
|
|
27
|
-
return `op ${err.info.opName} failed (exit ${err.info.exitCode ?? 'n/a'}${cls})`;
|
|
28
|
-
}
|
|
29
|
-
if (err instanceof Error) {
|
|
30
|
-
const head = err.message.slice(0, SAFE_ERROR_SUMMARY_CHARS);
|
|
31
|
-
const clipped = err.message.length > SAFE_ERROR_SUMMARY_CHARS ? '…' : '';
|
|
32
|
-
return `${err.name}: ${head}${clipped}`;
|
|
33
|
-
}
|
|
34
|
-
return String(err).slice(0, SAFE_ERROR_SUMMARY_CHARS);
|
|
35
|
-
}
|
|
36
|
-
export function buildDriverRunContext(repoUrl, binary) {
|
|
37
|
-
const t = repoUrl.trim();
|
|
38
|
-
if (isGitHubRepo(t)) {
|
|
39
|
-
return { scheme: 'https', hostname: 'github.com', host: 'github.com', repoPath: repoSlug(t), binary };
|
|
40
|
-
}
|
|
41
|
-
const parts = parseRepoUrlParts(t);
|
|
42
|
-
if (parts === null)
|
|
43
|
-
throw new Error(`cannot derive driver context from repo URL: ${t}`);
|
|
44
|
-
return {
|
|
45
|
-
scheme: parts.scheme,
|
|
46
|
-
hostname: parts.hostname,
|
|
47
|
-
host: parts.port === '' ? parts.hostname : `${parts.hostname}:${parts.port}`,
|
|
48
|
-
repoPath: parts.path,
|
|
49
|
-
binary,
|
|
50
|
-
};
|
|
51
|
-
}
|
|
52
|
-
const tail = (s) => (s.length > STDERR_TAIL_CHARS ? s.slice(-STDERR_TAIL_CHARS) : s);
|
|
53
|
-
export class GitDriver {
|
|
54
|
-
plugin;
|
|
55
|
-
ctx;
|
|
56
|
-
exec;
|
|
57
|
-
errorMatchers;
|
|
58
|
-
preflightIdentity;
|
|
59
|
-
constructor(plugin, ctx, exec) {
|
|
60
|
-
this.plugin = plugin;
|
|
61
|
-
this.ctx = ctx;
|
|
62
|
-
this.exec = exec;
|
|
63
|
-
this.preflightIdentity = createHash('sha256').update(JSON.stringify({
|
|
64
|
-
preflight: plugin.spec.preflight,
|
|
65
|
-
minToolVersion: plugin.manifest?.minToolVersion ?? '',
|
|
66
|
-
ctx,
|
|
67
|
-
}), 'utf8').digest('hex');
|
|
68
|
-
this.errorMatchers = plugin.spec.errorClasses.map(c => ({
|
|
69
|
-
class: c.class,
|
|
70
|
-
regexes: c.regex.map(r => new RegExp(r)),
|
|
71
|
-
}));
|
|
72
|
-
}
|
|
73
|
-
get visibilityLagMs() {
|
|
74
|
-
return this.plugin.spec.visibilityLagSeconds * 1000;
|
|
75
|
-
}
|
|
76
|
-
get commentSources() {
|
|
77
|
-
return this.plugin.spec.commentSources;
|
|
78
|
-
}
|
|
79
|
-
async runPreflightSteps() {
|
|
80
|
-
let rateLimited;
|
|
81
|
-
const results = await runDriverPreflightSteps((cmd) => this.exec(cmd, { timeout: DRIVER_EXEC_TIMEOUT_MS, maxBuffer: DRIVER_MAX_BUFFER }), this.plugin.spec.preflight, { ...this.ctx, minToolVersion: this.plugin.manifest?.minToolVersion ?? '' }, (step, rawOutput) => {
|
|
82
|
-
if (this.classify(rawOutput) === 'RATE_LIMIT')
|
|
83
|
-
rateLimited = step;
|
|
84
|
-
});
|
|
85
|
-
if (rateLimited !== undefined) {
|
|
86
|
-
throw new DriverOpError(`preflight ${rateLimited} failed (class RATE_LIMIT)`, {
|
|
87
|
-
opName: rateLimited, errorClass: 'RATE_LIMIT',
|
|
88
|
-
});
|
|
89
|
-
}
|
|
90
|
-
return results;
|
|
91
|
-
}
|
|
92
|
-
classify(text) {
|
|
93
|
-
for (const c of this.errorMatchers) {
|
|
94
|
-
if (c.regexes.some(r => r.test(text)))
|
|
95
|
-
return c.class;
|
|
96
|
-
}
|
|
97
|
-
return undefined;
|
|
98
|
-
}
|
|
99
|
-
async runOp(opName, vars = {}) {
|
|
100
|
-
const op = this.namedOp(opName);
|
|
101
|
-
if (op.parse === 'json-paged') {
|
|
102
|
-
throw new DriverOpError(`op ${opName} is paged; use the paged runner`, { opName });
|
|
103
|
-
}
|
|
104
|
-
let rows;
|
|
105
|
-
try {
|
|
106
|
-
const result = await this.execRendered(opName, op, vars);
|
|
107
|
-
rows = result === 'treated-success' || op.parse === undefined
|
|
108
|
-
? []
|
|
109
|
-
: validateRows(opName, mapResponse(opName, op, parseJsonResponse(result.stdout)));
|
|
110
|
-
}
|
|
111
|
-
catch (e) {
|
|
112
|
-
if (op.optional === true && e instanceof DriverOpError)
|
|
113
|
-
return [];
|
|
114
|
-
throw e;
|
|
115
|
-
}
|
|
116
|
-
if (SINGLE_RESOURCE_OPS.has(opName) && rows.length !== 1) {
|
|
117
|
-
throw new DriverOpError(`op ${opName} must yield exactly one row (got ${rows.length})`, { opName });
|
|
118
|
-
}
|
|
119
|
-
return rows;
|
|
120
|
-
}
|
|
121
|
-
async runListPrs(vars, shouldStop) {
|
|
122
|
-
return this.runPaged('listPrs', this.namedOp('listPrs'), vars, {
|
|
123
|
-
pageCap: LIST_PRS_PAGE_CAP, capBehavior: 'stop', idField: 'prNumber', shouldStop,
|
|
124
|
-
});
|
|
125
|
-
}
|
|
126
|
-
async runCommentSource(source, vars, projectPage, shouldStop) {
|
|
127
|
-
return this.runPaged('listComments', source, vars, {
|
|
128
|
-
pageCap: COMMENT_SOURCE_PAGE_CAP, capBehavior: 'fail', idField: 'id', sourceKey: source.key, projectPage, shouldStop,
|
|
129
|
-
});
|
|
130
|
-
}
|
|
131
|
-
namedOp(opName) {
|
|
132
|
-
const op = this.plugin.spec.ops[opName];
|
|
133
|
-
if (!op)
|
|
134
|
-
throw new DriverOpError(`op ${opName} is not declared by the driver`, { opName });
|
|
135
|
-
return op;
|
|
136
|
-
}
|
|
137
|
-
async execRendered(opName, op, vars) {
|
|
138
|
-
const context = { ...this.ctx, ...vars };
|
|
139
|
-
const cmd = renderCommand(op, context);
|
|
140
|
-
const stdin = renderCommandStdin(op, context);
|
|
141
|
-
const result = await this.exec(cmd, {
|
|
142
|
-
timeout: DRIVER_EXEC_TIMEOUT_MS,
|
|
143
|
-
maxBuffer: DRIVER_MAX_BUFFER,
|
|
144
|
-
...(stdin !== undefined ? { stdin } : {}),
|
|
145
|
-
});
|
|
146
|
-
if (result.exitCode === 0) {
|
|
147
|
-
if (op.responseEnvelope === 'graphql')
|
|
148
|
-
this.assertGraphqlEnvelope(opName, result);
|
|
149
|
-
return result;
|
|
150
|
-
}
|
|
151
|
-
const output = `${result.stderr}\n${result.stdout}`;
|
|
152
|
-
const cls = this.classify(output);
|
|
153
|
-
if (cls !== undefined && op.treatAsSuccess?.includes(cls))
|
|
154
|
-
return 'treated-success';
|
|
155
|
-
throw new DriverOpError(`op ${opName} failed (exit ${result.exitCode}${cls ? `, class ${cls}` : ''}): ${tail(output.trim())}`, { opName, errorClass: cls, exitCode: result.exitCode, stderrTail: tail(output.trim()) });
|
|
156
|
-
}
|
|
157
|
-
assertGraphqlEnvelope(opName, result) {
|
|
158
|
-
const { stdout, stderr } = result;
|
|
159
|
-
const errorInfo = () => ({
|
|
160
|
-
opName,
|
|
161
|
-
errorClass: this.classify(`${stderr}\n${stdout}`),
|
|
162
|
-
exitCode: 0,
|
|
163
|
-
stderrTail: tail(stdout),
|
|
164
|
-
});
|
|
165
|
-
let payload;
|
|
166
|
-
try {
|
|
167
|
-
payload = parseJsonResponse(stdout);
|
|
168
|
-
}
|
|
169
|
-
catch (err) {
|
|
170
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
171
|
-
throw new DriverOpError(`op ${opName} returned an invalid GraphQL envelope: ${message}`, errorInfo());
|
|
172
|
-
}
|
|
173
|
-
if (!isRecord(payload)) {
|
|
174
|
-
throw new DriverOpError(`op ${opName} returned a malformed GraphQL envelope`, errorInfo());
|
|
175
|
-
}
|
|
176
|
-
const errors = payload.errors;
|
|
177
|
-
if (errors !== undefined && !Array.isArray(errors)) {
|
|
178
|
-
throw new DriverOpError(`op ${opName} returned malformed GraphQL errors`, errorInfo());
|
|
179
|
-
}
|
|
180
|
-
if (Array.isArray(errors) && errors.length > 0) {
|
|
181
|
-
throw new DriverOpError(`op ${opName} failed with GraphQL errors: ${tail(JSON.stringify(errors))}`, errorInfo());
|
|
182
|
-
}
|
|
183
|
-
if (!Object.hasOwn(payload, 'data')) {
|
|
184
|
-
throw new DriverOpError(`op ${opName} returned a GraphQL envelope without data`, errorInfo());
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
async runPaged(rowOp, op, vars, opts) {
|
|
188
|
-
const label = opts.sourceKey === undefined ? rowOp : `${rowOp}[${opts.sourceKey}]`;
|
|
189
|
-
const { idField } = opts;
|
|
190
|
-
const all = [];
|
|
191
|
-
const seen = new Map();
|
|
192
|
-
let prevIds;
|
|
193
|
-
for (let page = 1; page <= opts.pageCap; page++) {
|
|
194
|
-
const result = await this.execRendered(label, op, { ...vars, page });
|
|
195
|
-
if (result === 'treated-success') {
|
|
196
|
-
throw new DriverOpError(`op ${label}: treatAsSuccess is not valid on a paged read`, { opName: label });
|
|
197
|
-
}
|
|
198
|
-
const rawPage = parseJsonPagedPage(result.stdout);
|
|
199
|
-
if (rawPage.length === 0)
|
|
200
|
-
return all;
|
|
201
|
-
const rows = validateRows(rowOp, mapResponse(rowOp, op, rawPage), opts.sourceKey === undefined ? undefined : { sourceKey: opts.sourceKey });
|
|
202
|
-
const projected = opts.projectPage === undefined ? rows : opts.projectPage(rows);
|
|
203
|
-
const ids = new Set(projected.map(r => String(r[idField])));
|
|
204
|
-
if (prevIds !== undefined && prevIds.size > 0 && ids.size === prevIds.size && [...ids].every(i => prevIds.has(i))) {
|
|
205
|
-
throw new DriverOpError(`op ${label}: pagination did not advance at page ${page} (backend ignoring {page}?)`, { opName: label });
|
|
206
|
-
}
|
|
207
|
-
prevIds = ids;
|
|
208
|
-
for (const row of projected) {
|
|
209
|
-
const key = String(row[idField]);
|
|
210
|
-
const fingerprint = JSON.stringify(row);
|
|
211
|
-
const prior = seen.get(key);
|
|
212
|
-
if (prior === undefined) {
|
|
213
|
-
seen.set(key, fingerprint);
|
|
214
|
-
all.push(row);
|
|
215
|
-
continue;
|
|
216
|
-
}
|
|
217
|
-
if (prior === fingerprint)
|
|
218
|
-
continue;
|
|
219
|
-
throw new DriverOpError(`op ${label}: conflicting duplicate row for ${idField}=${key} across pages (mid-scan mutation)`, { opName: label });
|
|
220
|
-
}
|
|
221
|
-
if (opts.shouldStop?.(projected, page) === true)
|
|
222
|
-
return all;
|
|
223
|
-
}
|
|
224
|
-
if (opts.capBehavior === 'fail') {
|
|
225
|
-
throw new DriverOpError(`op ${label}: exceeded page cap ${opts.pageCap} (refusing silent truncation)`, { opName: label });
|
|
226
|
-
}
|
|
227
|
-
return all;
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
//# sourceMappingURL=git-driver.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"git-driver.js","sourceRoot":"","sources":["../../src/platform/git-driver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { PluginManifest, PluginValidationError } from './types.js';
|
|
2
|
-
export interface ManifestIdentity {
|
|
3
|
-
name?: string;
|
|
4
|
-
tool?: string;
|
|
5
|
-
}
|
|
6
|
-
export declare function parseManifest(raw: string, pluginPath: string): {
|
|
7
|
-
manifest: PluginManifest;
|
|
8
|
-
} | ({
|
|
9
|
-
errors: PluginValidationError[];
|
|
10
|
-
} & ManifestIdentity);
|
|
11
|
-
//# sourceMappingURL=manifest.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/platform/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAKnE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,aAAa,CAC3B,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,GACjB;IAAE,QAAQ,EAAE,cAAc,CAAA;CAAE,GAAG,CAAC;IAAE,MAAM,EAAE,qBAAqB,EAAE,CAAA;CAAE,GAAG,gBAAgB,CAAC,CAiCzF"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { isRecord, TOOL_PATTERN } from '../shared/index.js';
|
|
2
|
-
const SEMVER = /^(\d{1,10})\.(\d{1,10})\.(\d{1,10})$/;
|
|
3
|
-
export function parseManifest(raw, pluginPath) {
|
|
4
|
-
const errors = [];
|
|
5
|
-
const err = (message) => errors.push({ pluginPath, message });
|
|
6
|
-
let obj;
|
|
7
|
-
try {
|
|
8
|
-
obj = JSON.parse(raw);
|
|
9
|
-
}
|
|
10
|
-
catch (e) {
|
|
11
|
-
err(`baxian-plugin.json is not valid JSON: ${e instanceof Error ? e.message : String(e)}`);
|
|
12
|
-
return { errors };
|
|
13
|
-
}
|
|
14
|
-
if (!isRecord(obj)) {
|
|
15
|
-
err('baxian-plugin.json must be a JSON object');
|
|
16
|
-
return { errors };
|
|
17
|
-
}
|
|
18
|
-
const m = obj;
|
|
19
|
-
if (typeof m.name !== 'string' || m.name === '')
|
|
20
|
-
err('name must be a non-empty string');
|
|
21
|
-
if (typeof m.version !== 'string' || m.version.trim() === '')
|
|
22
|
-
err(`version must be a non-empty string (got ${JSON.stringify(m.version)})`);
|
|
23
|
-
if (m.kind !== 'git-driver')
|
|
24
|
-
err(`kind must be 'git-driver', got ${JSON.stringify(m.kind)}`);
|
|
25
|
-
if (typeof m.tool !== 'string' || !TOOL_PATTERN.test(m.tool)) {
|
|
26
|
-
err(`tool must match ${TOOL_PATTERN} (got ${JSON.stringify(m.tool)})`);
|
|
27
|
-
}
|
|
28
|
-
if (typeof m.minToolVersion !== 'string' || !SEMVER.test(m.minToolVersion)) {
|
|
29
|
-
err(`minToolVersion must be x.y.z semver (got ${JSON.stringify(m.minToolVersion)})`);
|
|
30
|
-
}
|
|
31
|
-
if (m.driverSchema !== 1)
|
|
32
|
-
err(`driverSchema must be 1 (got ${JSON.stringify(m.driverSchema)})`);
|
|
33
|
-
if (errors.length > 0) {
|
|
34
|
-
return {
|
|
35
|
-
errors,
|
|
36
|
-
name: typeof m.name === 'string' && m.name !== '' ? m.name : undefined,
|
|
37
|
-
tool: typeof m.tool === 'string' && TOOL_PATTERN.test(m.tool) ? m.tool : undefined,
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
return { manifest: m };
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=manifest.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../src/platform/manifest.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE5D,MAAM,MAAM,GAAG,sCAAsC,CAAC;AAOtD,MAAM,UAAU,aAAa,CAC3B,GAAW,EACX,UAAkB;IAElB,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,MAAM,GAAG,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;IACtE,IAAI,GAAY,CAAC;IACjB,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,GAAG,CAAC,yCAAyC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC3F,OAAO,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACnB,GAAG,CAAC,0CAA0C,CAAC,CAAC;QAChD,OAAO,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC;IACD,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,EAAE;QAAE,GAAG,CAAC,iCAAiC,CAAC,CAAC;IACxF,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,GAAG,CAAC,2CAA2C,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC3I,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY;QAAE,GAAG,CAAC,kCAAkC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7F,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7D,GAAG,CAAC,mBAAmB,YAAY,SAAS,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,OAAO,CAAC,CAAC,cAAc,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC;QAC3E,GAAG,CAAC,4CAA4C,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IACvF,CAAC;IACD,IAAI,CAAC,CAAC,YAAY,KAAK,CAAC;QAAE,GAAG,CAAC,+BAA+B,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;IAChG,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO;YACL,MAAM;YACN,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;YACtE,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;SACnF,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,CAA8B,EAAE,CAAC;AACtD,CAAC"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import type { DriverSpec, PluginManifest } from './types.js';
|
|
2
|
-
export interface LoadedPlugin {
|
|
3
|
-
manifest: PluginManifest;
|
|
4
|
-
spec: DriverSpec;
|
|
5
|
-
pluginPath: string;
|
|
6
|
-
skillDir: string;
|
|
7
|
-
skillNames: string[];
|
|
8
|
-
source: 'builtin' | 'user';
|
|
9
|
-
}
|
|
10
|
-
export interface PluginDiagnostic {
|
|
11
|
-
pluginPath: string;
|
|
12
|
-
source: 'builtin' | 'user';
|
|
13
|
-
name?: string;
|
|
14
|
-
tool?: string;
|
|
15
|
-
overriddenBuiltinTool?: string;
|
|
16
|
-
messages: string[];
|
|
17
|
-
}
|
|
18
|
-
export declare class PluginRegistry {
|
|
19
|
-
private readonly byTool;
|
|
20
|
-
private constructor();
|
|
21
|
-
static load(roots: {
|
|
22
|
-
builtin: string;
|
|
23
|
-
user: string;
|
|
24
|
-
}): Promise<{
|
|
25
|
-
registry: PluginRegistry;
|
|
26
|
-
diagnostics: PluginDiagnostic[];
|
|
27
|
-
}>;
|
|
28
|
-
resolveTool(tool: string): LoadedPlugin | undefined;
|
|
29
|
-
all(): LoadedPlugin[];
|
|
30
|
-
}
|
|
31
|
-
//# sourceMappingURL=plugin-registry.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plugin-registry.d.ts","sourceRoot":"","sources":["../../src/platform/plugin-registry.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAyB,MAAM,YAAY,CAAC;AAEpF,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,cAAc,CAAC;IACzB,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,GAAG,MAAM,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAwKD,qBAAa,cAAc;IACL,OAAO,CAAC,QAAQ,CAAC,MAAM;IAA3C,OAAO;WAEM,IAAI,CACf,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GACvC,OAAO,CAAC;QAAE,QAAQ,EAAE,cAAc,CAAC;QAAC,WAAW,EAAE,gBAAgB,EAAE,CAAA;KAAE,CAAC;IA2DzE,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAInD,GAAG,IAAI,YAAY,EAAE;CAGtB"}
|