@nexusclawhq/cli 0.3.9 → 0.3.11
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/CHANGELOG.md +19 -0
- package/dist/build-info.json +4 -4
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/index.d.ts +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/index.js +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/index.js.map +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/package-payload.d.ts +67 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/package-payload.js +148 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/package-payload.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/package.json +4 -0
- package/dist/nexus-cli/src/cli.js +0 -0
- package/dist/nexus-cli/src/commands/employee/deploy.e2e.test.js +111 -0
- package/dist/nexus-cli/src/commands/employee/deploy.e2e.test.js.map +1 -1
- package/dist/nexus-cli/src/commands/employee/deploy.js +60 -1
- package/dist/nexus-cli/src/commands/employee/deploy.js.map +1 -1
- package/dist/nexus-cli/src/commands/package/format.js +3 -5
- package/dist/nexus-cli/src/commands/package/format.js.map +1 -1
- package/dist/nexus-cli/src/commands/package/helpers.d.ts +0 -2
- package/dist/nexus-cli/src/commands/package/helpers.js +0 -32
- package/dist/nexus-cli/src/commands/package/helpers.js.map +1 -1
- package/dist/nexus-cli/src/commands/package/pack.js +2 -2
- package/dist/nexus-cli/src/commands/package/pack.js.map +1 -1
- package/dist/nexus-cli/src/commands/package/publish.js +2 -1
- package/dist/nexus-cli/src/commands/package/publish.js.map +1 -1
- package/dist/nexus-cli/src/commands/package/validate.js +5 -4
- package/dist/nexus-cli/src/commands/package/validate.js.map +1 -1
- package/dist/nexus-cli/src/services/__env-probe.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/__env-probe.test.js +13 -0
- package/dist/nexus-cli/src/services/__env-probe.test.js.map +1 -0
- package/dist/nexus-cli/src/services/ai-authoring-context-v2.pack.e2e.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/ai-authoring-context-v2.pack.e2e.test.js +132 -0
- package/dist/nexus-cli/src/services/ai-authoring-context-v2.pack.e2e.test.js.map +1 -0
- package/dist/nexus-cli/src/services/api-client.d.ts +45 -2
- package/dist/nexus-cli/src/services/api-client.js +52 -5
- package/dist/nexus-cli/src/services/api-client.js.map +1 -1
- package/dist/nexus-cli/src/services/api-client.test.js +25 -2
- package/dist/nexus-cli/src/services/api-client.test.js.map +1 -1
- package/dist/nexus-cli/src/services/package-payload.d.ts +8 -0
- package/dist/nexus-cli/src/services/package-payload.js +76 -0
- package/dist/nexus-cli/src/services/package-payload.js.map +1 -0
- package/dist/nexus-cli/src/services/package-payload.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/package-payload.test.js +59 -0
- package/dist/nexus-cli/src/services/package-payload.test.js.map +1 -0
- package/dist/nexus-cli/src/services/workforce-test-remote.d.ts +2 -3
- package/dist/nexus-cli/src/services/workforce-test-remote.js +16 -2
- package/dist/nexus-cli/src/services/workforce-test-remote.js.map +1 -1
- package/dist/nexus-cli/src/services/workforce-test-remote.test.d.ts +1 -0
- package/dist/nexus-cli/src/services/workforce-test-remote.test.js +24 -0
- package/dist/nexus-cli/src/services/workforce-test-remote.test.js.map +1 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/src/components/drill-code-extension-page/index.js +70 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/src/metadata/drill-code-extension-page.manifest.json +63 -0
- package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/src/tests/drill-code-extension-page.assertions.json +13 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -1,18 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.resolveInstallRecords = resolveInstallRecords;
|
|
7
4
|
exports.resolveRegistryRecord = resolveRegistryRecord;
|
|
8
5
|
exports.renderGitReleaseNotes = renderGitReleaseNotes;
|
|
9
6
|
exports.publishLocalPackage = publishLocalPackage;
|
|
10
7
|
exports.formatRegistryLocation = formatRegistryLocation;
|
|
11
|
-
exports.resolveBackendPayloadScript = resolveBackendPayloadScript;
|
|
12
|
-
exports.runBackendPayloadCommand = runBackendPayloadCommand;
|
|
13
8
|
const node_child_process_1 = require("node:child_process");
|
|
14
|
-
const node_fs_1 = __importDefault(require("node:fs"));
|
|
15
|
-
const node_path_1 = __importDefault(require("node:path"));
|
|
16
9
|
const pack_registry_1 = require("../../services/pack-registry");
|
|
17
10
|
const package_manifest_1 = require("../../services/package-manifest");
|
|
18
11
|
function resolveInstallRecords(options) {
|
|
@@ -90,29 +83,4 @@ function publishLocalPackage(options) {
|
|
|
90
83
|
function formatRegistryLocation(registryRoot) {
|
|
91
84
|
return registryRoot ? (0, pack_registry_1.describeRegistryRoot)(registryRoot) : undefined;
|
|
92
85
|
}
|
|
93
|
-
function resolveBackendPayloadScript() {
|
|
94
|
-
const candidates = [
|
|
95
|
-
node_path_1.default.resolve(__dirname, '../../../../backend/scripts/package-payload.ts'),
|
|
96
|
-
node_path_1.default.resolve(process.cwd(), 'packages/backend/scripts/package-payload.ts'),
|
|
97
|
-
node_path_1.default.resolve(process.cwd(), '../backend/scripts/package-payload.ts'),
|
|
98
|
-
];
|
|
99
|
-
for (const candidate of candidates) {
|
|
100
|
-
if (node_fs_1.default.existsSync(candidate)) {
|
|
101
|
-
return candidate;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
throw new Error('无法定位 backend payload 脚本 packages/backend/scripts/package-payload.ts');
|
|
105
|
-
}
|
|
106
|
-
function runBackendPayloadCommand(command, packageDirectory) {
|
|
107
|
-
const scriptPath = resolveBackendPayloadScript();
|
|
108
|
-
const backendPackageRoot = node_path_1.default.dirname(node_path_1.default.dirname(scriptPath));
|
|
109
|
-
return (0, node_child_process_1.execFileSync)(process.execPath, ['-r', 'ts-node/register/transpile-only', scriptPath, command, packageDirectory], {
|
|
110
|
-
encoding: 'utf8',
|
|
111
|
-
cwd: backendPackageRoot,
|
|
112
|
-
env: {
|
|
113
|
-
...process.env,
|
|
114
|
-
TS_NODE_PROJECT: node_path_1.default.join(backendPackageRoot, 'tsconfig.json'),
|
|
115
|
-
},
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
86
|
//# sourceMappingURL=helpers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../src/commands/package/helpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../src/commands/package/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,8 +12,8 @@ const chalk_1 = __importDefault(require("chalk"));
|
|
|
12
12
|
const package_manifest_1 = require("../../services/package-manifest");
|
|
13
13
|
const spinner_1 = require("../../utils/spinner");
|
|
14
14
|
const logger_1 = require("../../utils/logger");
|
|
15
|
-
const helpers_1 = require("./helpers");
|
|
16
15
|
const package_pack_inventory_1 = require("../../services/package-pack-inventory");
|
|
16
|
+
const package_payload_1 = require("../../services/package-payload");
|
|
17
17
|
function sanitizeArchiveName(input) {
|
|
18
18
|
return input.replace(/[^A-Za-z0-9._-]+/g, '-');
|
|
19
19
|
}
|
|
@@ -43,7 +43,7 @@ exports.packagePackCommand = new commander_1.Command('pack')
|
|
|
43
43
|
}
|
|
44
44
|
if (node_fs_1.default.existsSync(node_path_1.default.join(loaded.packageDirectory, 'payload'))) {
|
|
45
45
|
spinner.text = '正在校验 package payload...';
|
|
46
|
-
(0,
|
|
46
|
+
(0, package_payload_1.validatePackagePayloadDirectory)(loaded.packageDirectory);
|
|
47
47
|
}
|
|
48
48
|
const outputFile = resolveArchivePath(loaded.packageDirectory, loaded.manifest.name, loaded.manifest.version, options.output);
|
|
49
49
|
const inventory = await (0, package_pack_inventory_1.buildPackagePackInventory)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pack.js","sourceRoot":"","sources":["../../../../../src/commands/package/pack.ts"],"names":[],"mappings":";;;;;;AAAA,2DAAkD;AAClD,sDAAyB;AACzB,0DAA6B;AAC7B,yCAAoC;AACpC,kDAA0B;AAE1B,sEAAoG;AACpG,iDAAoD;AACpD,+CAA4C;AAC5C,
|
|
1
|
+
{"version":3,"file":"pack.js","sourceRoot":"","sources":["../../../../../src/commands/package/pack.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,7 @@ const package_manifest_1 = require("../../services/package-manifest");
|
|
|
10
10
|
const package_self_containment_1 = require("../../services/package-self-containment");
|
|
11
11
|
const spinner_1 = require("../../utils/spinner");
|
|
12
12
|
const logger_1 = require("../../utils/logger");
|
|
13
|
+
const package_payload_1 = require("../../services/package-payload");
|
|
13
14
|
const helpers_1 = require("./helpers");
|
|
14
15
|
exports.packagePublishCommand = new commander_1.Command('publish')
|
|
15
16
|
.description('发布本地 package 到 local registry')
|
|
@@ -33,7 +34,7 @@ exports.packagePublishCommand = new commander_1.Command('publish')
|
|
|
33
34
|
if (!selfContainment.valid) {
|
|
34
35
|
throw new Error(selfContainment.errors.join('; '));
|
|
35
36
|
}
|
|
36
|
-
(0,
|
|
37
|
+
(0, package_payload_1.validatePackagePayloadDirectory)(loaded.packageDirectory);
|
|
37
38
|
const { record, registryRoot, manifest } = (0, helpers_1.publishLocalPackage)({
|
|
38
39
|
source: options.source,
|
|
39
40
|
registryRoot: options.registryRoot,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../../../src/commands/package/publish.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAE1B,sEAAoG;AACpG,sFAAyF;AACzF,iDAAoD;AACpD,+CAA4C;AAC5C,
|
|
1
|
+
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../../../src/commands/package/publish.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAE1B,sEAAoG;AACpG,sFAAyF;AACzF,iDAAoD;AACpD,+CAA4C;AAC5C,oEAAiF;AACjF,uCAAgD;AAEnC,QAAA,qBAAqB,GAAG,IAAI,mBAAO,CAAC,SAAS,CAAC;KACxD,WAAW,CAAC,+BAA+B,CAAC;KAC5C,cAAc,CAAC,qBAAqB,EAAE,2BAA2B,CAAC;KAClE,MAAM,CAAC,oBAAoB,EAAE,gBAAgB,EAAE,GAAG,CAAC;KACnD,MAAM,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;KACvD,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;IAClB,MAAM,OAAO,GAAG,IAAA,uBAAa,EAAC,iBAAiB,CAAC,CAAC,KAAK,EAAE,CAAC;IACzD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAA,sCAAmB,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,UAAU,GAAG,IAAA,+CAA4B,EAAC,MAAM,CAAC,QAAQ,EAAE;YAC/D,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;SAC1C,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,CAAC;QACD,MAAM,eAAe,GAAG,IAAA,yDAA8B,EAAC,MAAM,CAAC,QAAQ,EAAE;YACtE,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;YACzC,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACrD,CAAC;QACD,IAAA,iDAA+B,EAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAEzD,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,IAAA,6BAAmB,EAAC;YAC7D,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC,CAAC;QAEH,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAChF,OAAO,CAAC,GAAG,CAAC,eAAe,YAAY,EAAE,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC9C,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,kBAAkB,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,eAAM,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -12,7 +12,7 @@ const package_manifest_1 = require("../../services/package-manifest");
|
|
|
12
12
|
const package_self_containment_1 = require("../../services/package-self-containment");
|
|
13
13
|
const pack_registry_1 = require("../../services/pack-registry");
|
|
14
14
|
const workspace_contract_1 = require("../../services/workspace-contract");
|
|
15
|
-
const
|
|
15
|
+
const package_payload_1 = require("../../services/package-payload");
|
|
16
16
|
exports.packageValidateCommand = new commander_1.Command('validate')
|
|
17
17
|
.description('校验 local package 或 workspace pack 状态')
|
|
18
18
|
.option('-s, --source <path>', 'package 目录或 manifest 文件路径')
|
|
@@ -72,9 +72,10 @@ exports.packageValidateCommand = new commander_1.Command('validate')
|
|
|
72
72
|
}
|
|
73
73
|
console.log('Manifest validation passed.');
|
|
74
74
|
try {
|
|
75
|
-
const
|
|
76
|
-
if (
|
|
77
|
-
console.log(
|
|
75
|
+
const payload = (0, package_payload_1.validatePackagePayloadDirectory)(loaded.packageDirectory);
|
|
76
|
+
if (payload.format === 'payload') {
|
|
77
|
+
console.log(`Payload validation passed for ${loaded.packageDirectory}`);
|
|
78
|
+
payload.warnings.forEach((warning) => console.log(` warning: ${warning}`));
|
|
78
79
|
}
|
|
79
80
|
}
|
|
80
81
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../../../src/commands/package/validate.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAE1B,0DAA4D;AAC5D,wFAA2F;AAC3F,sEAAwH;AACxH,sFAAyF;AACzF,gEAA4F;AAC5F,0EAA0E;AAC1E,
|
|
1
|
+
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../../../../src/commands/package/validate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const node_test_1 = __importDefault(require("node:test"));
|
|
7
|
+
(0, node_test_1.default)('dump npm env', () => {
|
|
8
|
+
const npmEnv = Object.entries(process.env)
|
|
9
|
+
.filter(([k]) => k.startsWith('npm_'))
|
|
10
|
+
.reduce((acc, [k, v]) => ({ ...acc, [k]: v }), {});
|
|
11
|
+
console.log('NPM_ENV:', JSON.stringify(npmEnv, null, 2));
|
|
12
|
+
});
|
|
13
|
+
//# sourceMappingURL=__env-probe.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"__env-probe.test.js","sourceRoot":"","sources":["../../../../src/services/__env-probe.test.ts"],"names":[],"mappings":";;;;;AAAA,0DAA6B;AAC7B,IAAA,mBAAI,EAAC,cAAc,EAAE,GAAG,EAAE;IACxB,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC;SACvC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;SACrC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const strict_1 = __importDefault(require("node:assert/strict"));
|
|
7
|
+
const node_child_process_1 = require("node:child_process");
|
|
8
|
+
const node_fs_1 = __importDefault(require("node:fs"));
|
|
9
|
+
const node_os_1 = __importDefault(require("node:os"));
|
|
10
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
11
|
+
const node_test_1 = __importDefault(require("node:test"));
|
|
12
|
+
const PACKAGE_ROOT = node_path_1.default.resolve(__dirname, '../..');
|
|
13
|
+
const RUNNING_INSIDE_PUBLISH = process.env.npm_command === 'publish';
|
|
14
|
+
const SKIP_REASON = RUNNING_INSIDE_PUBLISH
|
|
15
|
+
? 'skipped inside npm publish lifecycle (npm reserves the pack operation)'
|
|
16
|
+
: null;
|
|
17
|
+
function run(cmd, args, opts = { cwd: PACKAGE_ROOT }) {
|
|
18
|
+
return (0, node_child_process_1.execFileSync)(cmd, args, {
|
|
19
|
+
cwd: opts.cwd,
|
|
20
|
+
encoding: 'utf8',
|
|
21
|
+
env: { ...process.env, ...(opts.env ?? {}) },
|
|
22
|
+
stdio: ['ignore', 'pipe', 'pipe'],
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
async function buildTarballInTempDest() {
|
|
26
|
+
const dest = node_fs_1.default.mkdtempSync(node_path_1.default.join(node_os_1.default.tmpdir(), 'nexus-pack-dest-'));
|
|
27
|
+
const stdout = run('npm', ['pack', '--json', '--pack-destination', dest], {
|
|
28
|
+
cwd: PACKAGE_ROOT,
|
|
29
|
+
});
|
|
30
|
+
const jsonStart = stdout.indexOf('[\n');
|
|
31
|
+
let filename;
|
|
32
|
+
if (jsonStart !== -1) {
|
|
33
|
+
const jsonEnd = stdout.indexOf('\n]\n', jsonStart);
|
|
34
|
+
const sliceEnd = jsonEnd === -1 ? stdout.length : jsonEnd + 2;
|
|
35
|
+
try {
|
|
36
|
+
const parsed = JSON.parse(stdout.slice(jsonStart, sliceEnd));
|
|
37
|
+
filename = parsed[0]?.filename;
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
if (!filename) {
|
|
43
|
+
const tgzLine = stdout
|
|
44
|
+
.split('\n')
|
|
45
|
+
.map((line) => line.trim())
|
|
46
|
+
.filter((line) => line.endsWith('.tgz'))
|
|
47
|
+
.pop();
|
|
48
|
+
strict_1.default.ok(tgzLine, `npm pack produced no tarball: ${stdout}`);
|
|
49
|
+
filename = tgzLine;
|
|
50
|
+
}
|
|
51
|
+
return { tarballPath: node_path_1.default.join(dest, filename), dest };
|
|
52
|
+
}
|
|
53
|
+
(0, node_test_1.default)('the npm-packed CLI exports the complete action fixture schema (not a shell)', { timeout: 180_000, skip: SKIP_REASON ?? false }, async () => {
|
|
54
|
+
const { tarballPath, dest: packDest } = await buildTarballInTempDest();
|
|
55
|
+
strict_1.default.ok(node_fs_1.default.existsSync(tarballPath), `npm pack did not produce a tarball at ${tarballPath}`);
|
|
56
|
+
const installRoot = node_fs_1.default.mkdtempSync(node_path_1.default.join(node_os_1.default.tmpdir(), 'nexus-packed-install-'));
|
|
57
|
+
try {
|
|
58
|
+
run('npm', ['install', '--no-audit', '--no-fund', tarballPath], {
|
|
59
|
+
cwd: installRoot,
|
|
60
|
+
});
|
|
61
|
+
const nexusBin = node_path_1.default.join(installRoot, 'node_modules', '.bin', 'nexus');
|
|
62
|
+
strict_1.default.ok(node_fs_1.default.existsSync(nexusBin), 'installed nexus binary not found');
|
|
63
|
+
const packDir = node_path_1.default.join(installRoot, 'context');
|
|
64
|
+
run(nexusBin, ['ai', 'context', 'export', '--surface', 'code', '--offline', '--workspace', installRoot, '--out', packDir], {
|
|
65
|
+
cwd: installRoot,
|
|
66
|
+
env: { ...process.env, HOME: process.env.HOME },
|
|
67
|
+
});
|
|
68
|
+
const schemaPath = node_path_1.default.join(packDir, 'schemas', 'code-action-cases-v1.schema.json');
|
|
69
|
+
strict_1.default.ok(node_fs_1.default.existsSync(schemaPath), 'schema file not exported');
|
|
70
|
+
const schema = JSON.parse(node_fs_1.default.readFileSync(schemaPath, 'utf8'));
|
|
71
|
+
const isShell = typeof schema === 'object' &&
|
|
72
|
+
schema !== null &&
|
|
73
|
+
Object.keys(schema).length <= 2 &&
|
|
74
|
+
schema.type === 'object';
|
|
75
|
+
strict_1.default.equal(isShell, false, 'packed CLI exported an anonymous schema shell');
|
|
76
|
+
const callsSchema = schema.properties.cases.items.properties.hostFixtures.properties.calls
|
|
77
|
+
.items;
|
|
78
|
+
const recordsCall = callsSchema.oneOf.find((candidate) => candidate.properties?.namespace?.const === 'records');
|
|
79
|
+
strict_1.default.ok(recordsCall, 'records fixture variant missing from packed schema');
|
|
80
|
+
strict_1.default.deepEqual(recordsCall.properties.method.enum, [
|
|
81
|
+
'get',
|
|
82
|
+
'query',
|
|
83
|
+
'create',
|
|
84
|
+
'update',
|
|
85
|
+
'delete',
|
|
86
|
+
]);
|
|
87
|
+
strict_1.default.equal(recordsCall.properties.method.enum.includes('records.query'), false);
|
|
88
|
+
}
|
|
89
|
+
finally {
|
|
90
|
+
try {
|
|
91
|
+
node_fs_1.default.rmSync(installRoot, { recursive: true, force: true });
|
|
92
|
+
}
|
|
93
|
+
catch {
|
|
94
|
+
}
|
|
95
|
+
try {
|
|
96
|
+
node_fs_1.default.rmSync(packDest, { recursive: true, force: true });
|
|
97
|
+
}
|
|
98
|
+
catch {
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
(0, node_test_1.default)('the npm-packed CLI exposes build-info with gitSha and contentDigest', { timeout: 180_000, skip: SKIP_REASON ?? false }, async () => {
|
|
103
|
+
const { tarballPath, dest: packDest } = await buildTarballInTempDest();
|
|
104
|
+
const installRoot = node_fs_1.default.mkdtempSync(node_path_1.default.join(node_os_1.default.tmpdir(), 'nexus-packed-buildinfo-'));
|
|
105
|
+
try {
|
|
106
|
+
run('npm', ['install', '--no-audit', '--no-fund', tarballPath], {
|
|
107
|
+
cwd: installRoot,
|
|
108
|
+
});
|
|
109
|
+
const nexusBin = node_path_1.default.join(installRoot, 'node_modules', '.bin', 'nexus');
|
|
110
|
+
const output = run(nexusBin, ['--build-info', '--json'], {
|
|
111
|
+
cwd: installRoot,
|
|
112
|
+
});
|
|
113
|
+
const info = JSON.parse(output);
|
|
114
|
+
strict_1.default.equal(info.packageName, '@nexusclawhq/cli');
|
|
115
|
+
strict_1.default.ok(typeof info.gitSha === 'string' && info.gitSha !== 'unknown');
|
|
116
|
+
strict_1.default.match(info.contentDigest, /^sha256:[0-9a-f]{64}$/);
|
|
117
|
+
strict_1.default.ok(typeof info.version === 'string' && info.version !== '0.0.0');
|
|
118
|
+
}
|
|
119
|
+
finally {
|
|
120
|
+
try {
|
|
121
|
+
node_fs_1.default.rmSync(installRoot, { recursive: true, force: true });
|
|
122
|
+
}
|
|
123
|
+
catch {
|
|
124
|
+
}
|
|
125
|
+
try {
|
|
126
|
+
node_fs_1.default.rmSync(packDest, { recursive: true, force: true });
|
|
127
|
+
}
|
|
128
|
+
catch {
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
//# sourceMappingURL=ai-authoring-context-v2.pack.e2e.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-authoring-context-v2.pack.e2e.test.js","sourceRoot":"","sources":["../../../../src/services/ai-authoring-context-v2.pack.e2e.test.ts"],"names":[],"mappings":";;;;;AAqBA,gEAAwC;AACxC,2DAAkD;AAClD,sDAAyB;AACzB,sDAAyB;AACzB,0DAA6B;AAC7B,0DAA6B;AAE7B,MAAM,YAAY,GAAG,mBAAI,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAStD,MAAM,sBAAsB,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC;AACrE,MAAM,WAAW,GAAG,sBAAsB;IACxC,CAAC,CAAC,wEAAwE;IAC1E,CAAC,CAAC,IAAI,CAAC;AAET,SAAS,GAAG,CAAC,GAAW,EAAE,IAAc,EAAE,OAAiD,EAAE,GAAG,EAAE,YAAY,EAAE;IAC9G,OAAO,IAAA,iCAAY,EAAC,GAAG,EAAE,IAAI,EAAE;QAC7B,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,QAAQ,EAAE,MAAM;QAChB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE;QAC5C,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;KAClC,CAAC,CAAC;AACL,CAAC;AAWD,KAAK,UAAU,sBAAsB;IACnC,MAAM,IAAI,GAAG,iBAAE,CAAC,WAAW,CAAC,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,oBAAoB,EAAE,IAAI,CAAC,EAAE;QACxE,GAAG,EAAE,YAAY;KAClB,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,QAA4B,CAAC;IACjC,IAAI,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC;QAC9D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CACvB,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,CACF,CAAC;YAClC,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC;QACjC,CAAC;QAAC,MAAM,CAAC;QAET,CAAC;IACH,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,MAAM;aACnB,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;aAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;aACvC,GAAG,EAAE,CAAC;QACT,gBAAM,CAAC,EAAE,CAAC,OAAO,EAAE,iCAAiC,MAAM,EAAE,CAAC,CAAC;QAC9D,QAAQ,GAAG,OAAO,CAAC;IACrB,CAAC;IACD,OAAO,EAAE,WAAW,EAAE,mBAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAS,CAAC,EAAE,IAAI,EAAE,CAAC;AAC3D,CAAC;AAED,IAAA,mBAAI,EAAC,6EAA6E,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,IAAI,KAAK,EAAE,EAAE,KAAK,IAAI,EAAE;IAI/I,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,sBAAsB,EAAE,CAAC;IACvE,gBAAM,CAAC,EAAE,CACP,iBAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAC1B,yCAAyC,WAAW,EAAE,CACvD,CAAC;IAGF,MAAM,WAAW,GAAG,iBAAE,CAAC,WAAW,CAChC,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,MAAM,EAAE,EAAE,uBAAuB,CAAC,CAChD,CAAC;IACF,IAAI,CAAC;QACH,GAAG,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,CAAC,EAAE;YAC9D,GAAG,EAAE,WAAW;SACjB,CAAC,CAAC;QAGH,MAAM,QAAQ,GAAG,mBAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACzE,gBAAM,CAAC,EAAE,CAAC,iBAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,kCAAkC,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,mBAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAClD,GAAG,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;YACzH,GAAG,EAAE,WAAW;YAEhB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE;SAChD,CAAC,CAAC;QAGH,MAAM,UAAU,GAAG,mBAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,kCAAkC,CAAC,CAAC;QACrF,gBAAM,CAAC,EAAE,CAAC,iBAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,0BAA0B,CAAC,CAAC;QACjE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;QAC/D,MAAM,OAAO,GACX,OAAO,MAAM,KAAK,QAAQ;YAC1B,MAAM,KAAK,IAAI;YACf,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,IAAI,CAAC;YAC/B,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC;QAC3B,gBAAM,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,+CAA+C,CAAC,CAAC;QAE9E,MAAM,WAAW,GACf,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK;aACnE,KAAK,CAAC;QACX,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CACxC,CAAC,SAA8D,EAAE,EAAE,CACjE,SAAS,CAAC,UAAU,EAAE,SAAS,EAAE,KAAK,KAAK,SAAS,CACvD,CAAC;QACF,gBAAM,CAAC,EAAE,CAAC,WAAW,EAAE,oDAAoD,CAAC,CAAC;QAC7E,gBAAM,CAAC,SAAS,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE;YACnD,KAAK;YACL,OAAO;YACP,QAAQ;YACR,QAAQ;YACR,QAAQ;SACT,CAAC,CAAC;QACH,gBAAM,CAAC,KAAK,CACV,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAC5D,KAAK,CACN,CAAC;IACJ,CAAC;YAAS,CAAC;QAET,IAAI,CAAC;YACH,iBAAE,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,CAAC;QAAC,MAAM,CAAC;QAET,CAAC;QACD,IAAI,CAAC;YACH,iBAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;QAET,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAA,mBAAI,EAAC,qEAAqE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,IAAI,KAAK,EAAE,EAAE,KAAK,IAAI,EAAE;IACvI,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,sBAAsB,EAAE,CAAC;IACvE,MAAM,WAAW,GAAG,iBAAE,CAAC,WAAW,CAChC,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,MAAM,EAAE,EAAE,yBAAyB,CAAC,CAClD,CAAC;IACF,IAAI,CAAC;QACH,GAAG,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,CAAC,EAAE;YAC9D,GAAG,EAAE,WAAW;SACjB,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,mBAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAE;YACvD,GAAG,EAAE,WAAW;SACjB,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAChC,gBAAM,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;QACnD,gBAAM,CAAC,EAAE,CAAC,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;QACxE,gBAAM,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,uBAAuB,CAAC,CAAC;QAC1D,gBAAM,CAAC,EAAE,CAAC,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;IAC1E,CAAC;YAAS,CAAC;QACT,IAAI,CAAC;YACH,iBAAE,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,CAAC;QAAC,MAAM,CAAC;QAET,CAAC;QACD,IAAI,CAAC;YACH,iBAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;QAET,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -454,7 +454,8 @@ export interface MetadataPackageInstallResult {
|
|
|
454
454
|
details?: Record<string, unknown>;
|
|
455
455
|
}
|
|
456
456
|
export interface EmployeePackageInstallResult {
|
|
457
|
-
status: 'installed' | 'updated' | 'rejected';
|
|
457
|
+
status: 'queued' | 'installed' | 'updated' | 'rejected';
|
|
458
|
+
jobId?: string;
|
|
458
459
|
agentId?: string;
|
|
459
460
|
agentStatus?: 'draft' | 'active' | 'archived';
|
|
460
461
|
activated: boolean;
|
|
@@ -490,6 +491,14 @@ export interface EmployeePackageInstallResult {
|
|
|
490
491
|
gateReportId?: string;
|
|
491
492
|
auditId?: string;
|
|
492
493
|
}
|
|
494
|
+
export interface CoreHealthStatus {
|
|
495
|
+
status: 'ok' | 'error';
|
|
496
|
+
build: {
|
|
497
|
+
coreVersion: string;
|
|
498
|
+
coreCommitSha: string;
|
|
499
|
+
cliCompatibilityVersion: string;
|
|
500
|
+
};
|
|
501
|
+
}
|
|
493
502
|
export interface RuntimeDemoPreflightReport {
|
|
494
503
|
id: string;
|
|
495
504
|
workspaceId: string;
|
|
@@ -518,13 +527,14 @@ export interface RuntimeDemoPreflightReport {
|
|
|
518
527
|
}
|
|
519
528
|
export interface EmployeeDeploymentReportRecord {
|
|
520
529
|
id: string;
|
|
530
|
+
jobId?: string | null;
|
|
521
531
|
workspaceId: string;
|
|
522
532
|
agentId: string;
|
|
523
533
|
gateReportId?: string | null;
|
|
524
534
|
auditId?: string | null;
|
|
525
535
|
packageName: string;
|
|
526
536
|
packageVersion: string;
|
|
527
|
-
status: 'installed' | 'updated' | 'rejected';
|
|
537
|
+
status: 'queued' | 'running' | 'installed' | 'updated' | 'rejected' | 'failed';
|
|
528
538
|
activationStatus: 'draft' | 'active' | 'archived';
|
|
529
539
|
activated: boolean;
|
|
530
540
|
gatePassed: boolean;
|
|
@@ -535,6 +545,32 @@ export interface EmployeeDeploymentReportRecord {
|
|
|
535
545
|
createdAt: string;
|
|
536
546
|
updatedAt: string;
|
|
537
547
|
}
|
|
548
|
+
export interface DeploymentJobRecord {
|
|
549
|
+
id: string;
|
|
550
|
+
workspaceId: string;
|
|
551
|
+
phase: 'queued' | 'validating' | 'deploying' | 'verifying' | 'succeeded' | 'failed' | 'cancelled' | 'deployed_with_warnings';
|
|
552
|
+
progressPercent: number;
|
|
553
|
+
successCount: number;
|
|
554
|
+
failureCount: number;
|
|
555
|
+
totalComponents: number;
|
|
556
|
+
metadata?: Record<string, unknown>;
|
|
557
|
+
}
|
|
558
|
+
export interface EmployeeGateReportRecord {
|
|
559
|
+
id: string;
|
|
560
|
+
deploymentReportId?: string | null;
|
|
561
|
+
suiteRunId?: string | null;
|
|
562
|
+
passRate: number | null;
|
|
563
|
+
minPassRate: number;
|
|
564
|
+
baselinePassRate: number | null;
|
|
565
|
+
regressed: boolean;
|
|
566
|
+
passed: boolean;
|
|
567
|
+
casesRun: number;
|
|
568
|
+
failures: Array<{
|
|
569
|
+
testCaseId: string;
|
|
570
|
+
name: string;
|
|
571
|
+
failureReason?: string;
|
|
572
|
+
}>;
|
|
573
|
+
}
|
|
538
574
|
export interface InstallationContractRecord {
|
|
539
575
|
installationId: string;
|
|
540
576
|
workspaceId: string;
|
|
@@ -866,6 +902,7 @@ export declare class ApiClient {
|
|
|
866
902
|
private tokenRefreshInFlight?;
|
|
867
903
|
constructor(baseUrl?: string, token?: string, orgAlias?: string, requestTimeoutMs?: number);
|
|
868
904
|
ensureValidToken(): Promise<void>;
|
|
905
|
+
getCoreHealth(): Promise<CoreHealthStatus>;
|
|
869
906
|
private refreshOAuthTokenPair;
|
|
870
907
|
private getHeaders;
|
|
871
908
|
private request;
|
|
@@ -1060,6 +1097,12 @@ export declare class ApiClient {
|
|
|
1060
1097
|
deploymentReportId: string;
|
|
1061
1098
|
}): Promise<EmployeeDeploymentReportRecord | null>;
|
|
1062
1099
|
listEmployeeDeploymentReports(workspaceId: string): Promise<EmployeeDeploymentReportRecord[]>;
|
|
1100
|
+
getDeploymentJob(id: string): Promise<DeploymentJobRecord>;
|
|
1101
|
+
getEmployeeGateReport(input: {
|
|
1102
|
+
workspaceId: string;
|
|
1103
|
+
gateReportId: string;
|
|
1104
|
+
}): Promise<EmployeeGateReportRecord | null>;
|
|
1105
|
+
resumeEmployeePackageDeployment(id: string): Promise<DeploymentJobRecord>;
|
|
1063
1106
|
runRuntimeDemoPreflight(input: {
|
|
1064
1107
|
workspaceId: string;
|
|
1065
1108
|
expectedCoreSha?: string | null;
|
|
@@ -39,6 +39,7 @@ exports.createApiClient = createApiClient;
|
|
|
39
39
|
const http = __importStar(require("http"));
|
|
40
40
|
const https = __importStar(require("https"));
|
|
41
41
|
const node_crypto_1 = require("node:crypto");
|
|
42
|
+
const node_zlib_1 = require("node:zlib");
|
|
42
43
|
const url_1 = require("url");
|
|
43
44
|
const config_1 = require("./config");
|
|
44
45
|
const auth_store_1 = require("./auth-store");
|
|
@@ -207,6 +208,13 @@ class ApiClient {
|
|
|
207
208
|
this.tokenRefreshInFlight = undefined;
|
|
208
209
|
}
|
|
209
210
|
}
|
|
211
|
+
async getCoreHealth() {
|
|
212
|
+
const response = await this.request('GET', '/health');
|
|
213
|
+
if (!response.success || !response.data) {
|
|
214
|
+
throw new Error(response.error ?? 'Core health request failed');
|
|
215
|
+
}
|
|
216
|
+
return response.data;
|
|
217
|
+
}
|
|
210
218
|
async refreshOAuthTokenPair(cred) {
|
|
211
219
|
const clientId = cred.clientId || 'nexusclaw-cli';
|
|
212
220
|
const params = new URLSearchParams({
|
|
@@ -291,12 +299,24 @@ class ApiClient {
|
|
|
291
299
|
const url = new url_1.URL(endpoint, this.baseUrl);
|
|
292
300
|
const isHttps = url.protocol === 'https:';
|
|
293
301
|
const transport = isHttps ? https : http;
|
|
302
|
+
const serializedBody = body === undefined
|
|
303
|
+
? undefined
|
|
304
|
+
: Buffer.from(JSON.stringify(body));
|
|
305
|
+
const requestBody = serializedBody && serializedBody.byteLength >= 64 * 1024
|
|
306
|
+
? (0, node_zlib_1.gzipSync)(serializedBody)
|
|
307
|
+
: serializedBody;
|
|
308
|
+
const bodyHeaders = requestBody
|
|
309
|
+
? {
|
|
310
|
+
'Content-Length': String(requestBody.byteLength),
|
|
311
|
+
...(requestBody !== serializedBody ? { 'Content-Encoding': 'gzip' } : {}),
|
|
312
|
+
}
|
|
313
|
+
: {};
|
|
294
314
|
const options = {
|
|
295
315
|
method,
|
|
296
316
|
hostname: url.hostname,
|
|
297
317
|
port: url.port,
|
|
298
318
|
path: url.pathname + url.search,
|
|
299
|
-
headers: { ...this.getHeaders(), ...extraHeaders },
|
|
319
|
+
headers: { ...this.getHeaders(), ...bodyHeaders, ...extraHeaders },
|
|
300
320
|
};
|
|
301
321
|
const req = transport.request(options, (res) => {
|
|
302
322
|
let data = '';
|
|
@@ -334,8 +354,8 @@ class ApiClient {
|
|
|
334
354
|
req.destroy();
|
|
335
355
|
reject(new Error('请求超时'));
|
|
336
356
|
});
|
|
337
|
-
if (
|
|
338
|
-
req.write(
|
|
357
|
+
if (requestBody) {
|
|
358
|
+
req.write(requestBody);
|
|
339
359
|
}
|
|
340
360
|
req.end();
|
|
341
361
|
});
|
|
@@ -1068,7 +1088,7 @@ class ApiClient {
|
|
|
1068
1088
|
async getEmployeeDeploymentReport(input) {
|
|
1069
1089
|
const response = await this.graphql(`query EmployeeDeploymentReport($workspaceId: String!, $deploymentReportId: String!) {
|
|
1070
1090
|
employeeDeploymentReport(workspaceId: $workspaceId, deploymentReportId: $deploymentReportId) {
|
|
1071
|
-
id workspaceId agentId gateReportId auditId packageName packageVersion
|
|
1091
|
+
id jobId workspaceId agentId gateReportId auditId packageName packageVersion
|
|
1072
1092
|
status activationStatus activated gatePassed gateFailureReason
|
|
1073
1093
|
coreVersion cliVersion errors createdAt updatedAt
|
|
1074
1094
|
}
|
|
@@ -1078,13 +1098,40 @@ class ApiClient {
|
|
|
1078
1098
|
async listEmployeeDeploymentReports(workspaceId) {
|
|
1079
1099
|
const response = await this.graphql(`query EmployeeDeploymentReports($workspaceId: String!) {
|
|
1080
1100
|
employeeDeploymentReports(workspaceId: $workspaceId) {
|
|
1081
|
-
id workspaceId agentId gateReportId auditId packageName packageVersion
|
|
1101
|
+
id jobId workspaceId agentId gateReportId auditId packageName packageVersion
|
|
1082
1102
|
status activationStatus activated gatePassed gateFailureReason
|
|
1083
1103
|
coreVersion cliVersion errors createdAt updatedAt
|
|
1084
1104
|
}
|
|
1085
1105
|
}`, { workspaceId });
|
|
1086
1106
|
return response.employeeDeploymentReports ?? [];
|
|
1087
1107
|
}
|
|
1108
|
+
async getDeploymentJob(id) {
|
|
1109
|
+
const response = await this.graphql(`query DeploymentJob($id: ID!) {
|
|
1110
|
+
deploymentJob(id: $id) {
|
|
1111
|
+
id workspaceId phase progressPercent successCount failureCount
|
|
1112
|
+
totalComponents metadata
|
|
1113
|
+
}
|
|
1114
|
+
}`, { id });
|
|
1115
|
+
return response.deploymentJob;
|
|
1116
|
+
}
|
|
1117
|
+
async getEmployeeGateReport(input) {
|
|
1118
|
+
const response = await this.graphql(`query EmployeeGateReport($workspaceId: String!, $gateReportId: String!) {
|
|
1119
|
+
employeeGateReport(workspaceId: $workspaceId, gateReportId: $gateReportId) {
|
|
1120
|
+
id deploymentReportId suiteRunId passRate minPassRate baselinePassRate
|
|
1121
|
+
regressed passed casesRun failures
|
|
1122
|
+
}
|
|
1123
|
+
}`, input);
|
|
1124
|
+
return response.employeeGateReport;
|
|
1125
|
+
}
|
|
1126
|
+
async resumeEmployeePackageDeployment(id) {
|
|
1127
|
+
const response = await this.graphql(`mutation ResumeEmployeePackageDeployment($id: ID!) {
|
|
1128
|
+
resumeEmployeePackageDeployment(id: $id) {
|
|
1129
|
+
id workspaceId phase progressPercent successCount failureCount
|
|
1130
|
+
totalComponents metadata
|
|
1131
|
+
}
|
|
1132
|
+
}`, { id });
|
|
1133
|
+
return response.resumeEmployeePackageDeployment;
|
|
1134
|
+
}
|
|
1088
1135
|
async runRuntimeDemoPreflight(input) {
|
|
1089
1136
|
const response = await this.graphql(`mutation RunRuntimeDemoPreflight(
|
|
1090
1137
|
$workspaceId: String!,
|