@nexusclawhq/cli 0.3.6 → 0.3.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.
Files changed (29) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/build-info.json +4 -4
  3. package/dist/nexus-cli/src/cli.test.js +10 -0
  4. package/dist/nexus-cli/src/cli.test.js.map +1 -1
  5. package/dist/nexus-cli/src/commands/employee/candidate.d.ts +2 -0
  6. package/dist/nexus-cli/src/commands/employee/candidate.js +60 -0
  7. package/dist/nexus-cli/src/commands/employee/candidate.js.map +1 -0
  8. package/dist/nexus-cli/src/commands/employee/candidate.test.d.ts +1 -0
  9. package/dist/nexus-cli/src/commands/employee/candidate.test.js +110 -0
  10. package/dist/nexus-cli/src/commands/employee/candidate.test.js.map +1 -0
  11. package/dist/nexus-cli/src/commands/employee/code-candidate.test.d.ts +1 -0
  12. package/dist/nexus-cli/src/commands/employee/code-candidate.test.js +112 -0
  13. package/dist/nexus-cli/src/commands/employee/code-candidate.test.js.map +1 -0
  14. package/dist/nexus-cli/src/commands/employee/code.js +38 -7
  15. package/dist/nexus-cli/src/commands/employee/code.js.map +1 -1
  16. package/dist/nexus-cli/src/commands/employee/index.js +2 -0
  17. package/dist/nexus-cli/src/commands/employee/index.js.map +1 -1
  18. package/dist/nexus-cli/src/contracts/command-contract.registry.js +24 -0
  19. package/dist/nexus-cli/src/contracts/command-contract.registry.js.map +1 -1
  20. package/dist/nexus-cli/src/services/api-client.d.ts +92 -0
  21. package/dist/nexus-cli/src/services/api-client.js +21 -1
  22. package/dist/nexus-cli/src/services/api-client.js.map +1 -1
  23. package/dist/nexus-cli/src/services/api-client.test.js +40 -0
  24. package/dist/nexus-cli/src/services/api-client.test.js.map +1 -1
  25. package/dist/nexus-cli/src/services/workforce-remote-operations.d.ts +10 -0
  26. package/dist/nexus-cli/src/services/workforce-remote-operations.js +26 -0
  27. package/dist/nexus-cli/src/services/workforce-remote-operations.js.map +1 -1
  28. package/dist/tsconfig.tsbuildinfo +1 -1
  29. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.3.8 - 2026-07-28
4
+
5
+ - Treat fixture call-order mismatch as a candidate assertion failure while
6
+ still completing workspace cleanup and regenerating READY capacity.
7
+ - Return dimension, ordinal, expected/actual digests, JSON Pointer and
8
+ unconsumed-tail count in redacted candidate diagnostics.
9
+ - Separate sandbox lifecycle into six product stages and make failed sandbox
10
+ runs emit one non-success CLI JSON document containing observability.
11
+
12
+ ## 0.3.7 - 2026-07-28
13
+
14
+ - Return product-level candidate sandbox lifecycle, capacity, lease release,
15
+ cleanup/reset, production-mutation and workspace-isolation evidence.
16
+ - Add read-only `employee candidate status` and `employee candidate diagnostics`
17
+ commands so DX acceptance does not require Docker, `kubectl`, cluster
18
+ credentials or Kubernetes white-box access.
19
+ - Attach the same redacted observability snapshot to remote sandbox suite
20
+ results and preserve stable machine JSON for candidate failures.
21
+
3
22
  ## 0.3.6 - 2026-07-28
4
23
 
5
24
  - Supersede 0.3.5 so published build provenance records the exact immutable
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "packageName": "@nexusclawhq/cli",
3
- "version": "0.3.6",
4
- "gitSha": "a7f0f62d18940b0f5904e77364c3f29109d90e93",
3
+ "version": "0.3.8",
4
+ "gitSha": "unknown",
5
5
  "ciRunId": null,
6
- "contentDigest": "sha256:b1cf9fa93e67392ad1d2fdf09e6e364881c02561a0d74f72fada71f8079a6a4e",
7
- "generatedAt": "2026-07-28T02:55:19.207Z"
6
+ "contentDigest": "sha256:4b8f515e36272305bc8c2fd9a8d5372a9a0cdc9b53723c790c2d27e7fc011b54",
7
+ "generatedAt": "2026-07-28T03:52:37.838Z"
8
8
  }
@@ -66,4 +66,14 @@ const cli_1 = require("./cli");
66
66
  }
67
67
  }
68
68
  });
69
+ (0, node_test_1.default)('Phase 11 exposes read-only candidate status and diagnostics commands', () => {
70
+ const employee = (0, cli_1.buildCliProgram)().commands.find((command) => command.name() === 'employee');
71
+ const candidate = employee.commands.find((command) => command.name() === 'candidate');
72
+ strict_1.default.deepEqual(candidate.commands.map((command) => command.name()).sort(), ['diagnostics', 'status']);
73
+ for (const command of candidate.commands) {
74
+ strict_1.default.equal(command.options.some((option) => option.long === '--candidate-release-set-id'), true);
75
+ strict_1.default.equal(command.options.some((option) => option.long === '--target-org'), true);
76
+ strict_1.default.equal(command.options.some((option) => option.long === '--evidence-run-id'), true);
77
+ }
78
+ });
69
79
  //# sourceMappingURL=cli.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli.test.js","sourceRoot":"","sources":["../../../src/cli.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.test.js","sourceRoot":"","sources":["../../../src/cli.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Command } from 'commander';
2
+ export declare const employeeCandidateCommand: Command;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.employeeCandidateCommand = void 0;
4
+ const commander_1 = require("commander");
5
+ const shared_1 = require("@nexusclaw/shared");
6
+ const contracts_1 = require("../../contracts");
7
+ const workforce_remote_operations_1 = require("../../services/workforce-remote-operations");
8
+ const error_handler_1 = require("../../utils/error-handler");
9
+ exports.employeeCandidateCommand = new commander_1.Command('candidate')
10
+ .description('Read-only candidate lifecycle and isolation evidence');
11
+ exports.employeeCandidateCommand
12
+ .command('status')
13
+ .requiredOption('--candidate-release-set-id <id>')
14
+ .requiredOption('--target-org <alias>')
15
+ .option('--evidence-run-id <id>')
16
+ .option('--json')
17
+ .action(async (options, command) => {
18
+ await emitCandidateRead('employee.candidate.status', () => (0, workforce_remote_operations_1.readRemoteCandidateStatus)({
19
+ targetOrg: options.targetOrg,
20
+ candidateReleaseSetId: options.candidateReleaseSetId,
21
+ ...(options.evidenceRunId
22
+ ? { evidenceRunId: options.evidenceRunId }
23
+ : {}),
24
+ }), options.json === true || command.optsWithGlobals().json === true);
25
+ });
26
+ exports.employeeCandidateCommand
27
+ .command('diagnostics')
28
+ .requiredOption('--candidate-release-set-id <id>')
29
+ .requiredOption('--target-org <alias>')
30
+ .option('--evidence-run-id <id>')
31
+ .option('--json')
32
+ .action(async (options, command) => {
33
+ await emitCandidateRead('employee.candidate.diagnostics', () => (0, workforce_remote_operations_1.readRemoteCandidateDiagnostics)({
34
+ targetOrg: options.targetOrg,
35
+ candidateReleaseSetId: options.candidateReleaseSetId,
36
+ ...(options.evidenceRunId
37
+ ? { evidenceRunId: options.evidenceRunId }
38
+ : {}),
39
+ }), options.json === true || command.optsWithGlobals().json === true);
40
+ });
41
+ async function emitCandidateRead(command, read, json) {
42
+ try {
43
+ const data = await read();
44
+ if (json) {
45
+ (0, contracts_1.emitCliResult)((0, contracts_1.buildCliResult)({
46
+ command,
47
+ phase: 'complete',
48
+ contractVersion: shared_1.CLI_COMMAND_CONTRACT_SCHEMA_VERSION,
49
+ ok: true,
50
+ data: data,
51
+ }));
52
+ return;
53
+ }
54
+ process.stdout.write(`${JSON.stringify(data, null, 2)}\n`);
55
+ }
56
+ catch (error) {
57
+ (0, error_handler_1.handleError)(error, { command, json });
58
+ }
59
+ }
60
+ //# sourceMappingURL=candidate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"candidate.js","sourceRoot":"","sources":["../../../../../src/commands/employee/candidate.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,8CAAwE;AACxE,+CAAgE;AAChE,4FAGoD;AACpD,6DAAwD;AAE3C,QAAA,wBAAwB,GAAG,IAAI,mBAAO,CAAC,WAAW,CAAC;KAC7D,WAAW,CAAC,sDAAsD,CAAC,CAAC;AAEvE,gCAAwB;KACrB,OAAO,CAAC,QAAQ,CAAC;KACjB,cAAc,CAAC,iCAAiC,CAAC;KACjD,cAAc,CAAC,sBAAsB,CAAC;KACtC,MAAM,CAAC,wBAAwB,CAAC;KAChC,MAAM,CAAC,QAAQ,CAAC;KAChB,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAgB,EAAE,EAAE;IAC1C,MAAM,iBAAiB,CACrB,2BAA2B,EAC3B,GAAG,EAAE,CACH,IAAA,uDAAyB,EAAC;QACxB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;QACpD,GAAG,CAAC,OAAO,CAAC,aAAa;YACvB,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE;YAC1C,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,EACJ,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,IAAI,KAAK,IAAI,CACjE,CAAC;AACJ,CAAC,CAAC,CAAC;AAEL,gCAAwB;KACrB,OAAO,CAAC,aAAa,CAAC;KACtB,cAAc,CAAC,iCAAiC,CAAC;KACjD,cAAc,CAAC,sBAAsB,CAAC;KACtC,MAAM,CAAC,wBAAwB,CAAC;KAChC,MAAM,CAAC,QAAQ,CAAC;KAChB,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAgB,EAAE,EAAE;IAC1C,MAAM,iBAAiB,CACrB,gCAAgC,EAChC,GAAG,EAAE,CACH,IAAA,4DAA8B,EAAC;QAC7B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;QACpD,GAAG,CAAC,OAAO,CAAC,aAAa;YACvB,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE;YAC1C,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,EACJ,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,IAAI,KAAK,IAAI,CACjE,CAAC;AACJ,CAAC,CAAC,CAAC;AAEL,KAAK,UAAU,iBAAiB,CAC9B,OAAe,EACf,IAA4B,EAC5B,IAAa;IAEb,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,IAAI,EAAE,CAAC;QAC1B,IAAI,IAAI,EAAE,CAAC;YACT,IAAA,yBAAa,EACX,IAAA,0BAAc,EAAC;gBACb,OAAO;gBACP,KAAK,EAAE,UAAU;gBACjB,eAAe,EAAE,4CAAmC;gBACpD,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,IAAa;aACpB,CAAC,CACH,CAAC;YACF,OAAO;QACT,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAA,2BAAW,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;AACH,CAAC"}
@@ -0,0 +1,110 @@
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_fs_1 = __importDefault(require("node:fs"));
8
+ const node_http_1 = __importDefault(require("node:http"));
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 cli_1 = require("../../cli");
13
+ const auth_store_1 = require("../../services/auth-store");
14
+ (0, node_test_1.default)('candidate status and diagnostics emit one JSON document without cluster tooling', async () => {
15
+ const priorHome = process.env.NEXUS_CLI_HOME;
16
+ const tempHome = node_fs_1.default.mkdtempSync(node_path_1.default.join(node_os_1.default.tmpdir(), 'nexus-candidate-observability-'));
17
+ process.env.NEXUS_CLI_HOME = tempHome;
18
+ const queries = [];
19
+ const server = node_http_1.default.createServer((request, response) => {
20
+ let body = '';
21
+ request.on('data', (chunk) => {
22
+ body += chunk.toString();
23
+ });
24
+ request.on('end', () => {
25
+ const query = String(JSON.parse(body).query);
26
+ queries.push(query);
27
+ const field = query.includes('Diagnostics')
28
+ ? 'getWorkforceCandidateDiagnostics'
29
+ : 'getWorkforceCandidateStatus';
30
+ response.writeHead(200, { 'Content-Type': 'application/json' });
31
+ response.end(JSON.stringify({
32
+ data: {
33
+ [field]: {
34
+ schemaVersion: 'nexusclaw.candidate-observability/v1',
35
+ candidate: {
36
+ releaseSetId: '11111111-1111-4111-8111-111111111111',
37
+ eligibilityStatus: 'staged',
38
+ },
39
+ lifecycle: {
40
+ status: 'PASSED',
41
+ evidenceRunId: '22222222-2222-4222-8222-222222222222',
42
+ },
43
+ sandbox: { status: 'PASSED' },
44
+ capacity: { totalSlots: 1, readySlots: 1 },
45
+ lease: { status: 'RELEASED', released: true },
46
+ cleanup: { status: 'PASSED' },
47
+ isolation: {
48
+ workspaceIsolated: true,
49
+ productionMutationCount: 0,
50
+ passed: true,
51
+ },
52
+ diagnostics: [],
53
+ },
54
+ },
55
+ }));
56
+ });
57
+ });
58
+ await new Promise((resolve) => server.listen(0, '127.0.0.1', resolve));
59
+ const address = server.address();
60
+ strict_1.default.ok(address && typeof address !== 'string');
61
+ (0, auth_store_1.saveCredential)({
62
+ alias: 'candidate-test',
63
+ orgId: '33333333-3333-4333-8333-333333333333',
64
+ instanceUrl: `http://127.0.0.1:${address.port}`,
65
+ accessToken: 'test-token',
66
+ username: 'test@example.test',
67
+ });
68
+ const output = [];
69
+ const priorLog = console.log;
70
+ console.log = (value) => {
71
+ output.push(String(value));
72
+ };
73
+ try {
74
+ for (const operation of ['status', 'diagnostics']) {
75
+ const program = (0, cli_1.buildCliProgram)();
76
+ await program.parseAsync([
77
+ 'node',
78
+ 'nexus',
79
+ 'employee',
80
+ 'candidate',
81
+ operation,
82
+ '--candidate-release-set-id',
83
+ '11111111-1111-4111-8111-111111111111',
84
+ '--target-org',
85
+ 'candidate-test',
86
+ '--json',
87
+ ]);
88
+ }
89
+ strict_1.default.equal(output.length, 2);
90
+ for (const line of output) {
91
+ const result = JSON.parse(line);
92
+ strict_1.default.equal(result.schemaVersion, 'nexusclaw.cli-result/v1');
93
+ strict_1.default.equal(result.ok, true);
94
+ strict_1.default.equal(result.data.schemaVersion, 'nexusclaw.candidate-observability/v1');
95
+ strict_1.default.doesNotMatch(line, /kubectl|kubernetes|secret|private.?key/i);
96
+ }
97
+ strict_1.default.equal(queries.length, 2);
98
+ strict_1.default.ok(queries.every((query) => query.trimStart().startsWith('query')));
99
+ }
100
+ finally {
101
+ console.log = priorLog;
102
+ await new Promise((resolve, reject) => server.close((error) => (error ? reject(error) : resolve())));
103
+ if (priorHome === undefined)
104
+ delete process.env.NEXUS_CLI_HOME;
105
+ else
106
+ process.env.NEXUS_CLI_HOME = priorHome;
107
+ node_fs_1.default.rmSync(tempHome, { recursive: true, force: true });
108
+ }
109
+ });
110
+ //# sourceMappingURL=candidate.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"candidate.test.js","sourceRoot":"","sources":["../../../../../src/commands/employee/candidate.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,112 @@
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_fs_1 = __importDefault(require("node:fs"));
8
+ const node_http_1 = __importDefault(require("node:http"));
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 cli_1 = require("../../cli");
13
+ const auth_store_1 = require("../../services/auth-store");
14
+ const DIGEST = `sha256:${'a'.repeat(64)}`;
15
+ (0, node_test_1.default)('failed sandbox emits one non-success CLI result with observability', async () => {
16
+ const previousHome = process.env.NEXUS_CLI_HOME;
17
+ const previousExitCode = process.exitCode;
18
+ const home = node_fs_1.default.mkdtempSync(node_path_1.default.join(node_os_1.default.tmpdir(), 'nexus-code-candidate-'));
19
+ process.env.NEXUS_CLI_HOME = home;
20
+ const server = node_http_1.default.createServer((_request, response) => {
21
+ response.writeHead(200, { 'Content-Type': 'application/json' });
22
+ response.end(JSON.stringify({
23
+ data: {
24
+ runWorkforceCandidateTests: {
25
+ evidenceRunId: 'run-1',
26
+ evidenceRunDigest: DIGEST,
27
+ passed: false,
28
+ refs: [],
29
+ isolationBindingId: 'binding-1',
30
+ isolationSnapshotHash: DIGEST,
31
+ resetReceiptId: 'receipt-1',
32
+ resetReceiptDigest: DIGEST,
33
+ newAuthorizationGeneration: 2,
34
+ observability: {
35
+ schemaVersion: 'nexusclaw.candidate-observability/v1',
36
+ sandbox: {
37
+ status: 'FAILED',
38
+ stages: {
39
+ preflight: 'PASSED',
40
+ workspaceProvisioned: 'PASSED',
41
+ tenantStarted: 'PASSED',
42
+ firstHostRpc: 'PASSED',
43
+ assertionsExecuted: 'NOT_RUN',
44
+ cleanup: 'PASSED',
45
+ },
46
+ },
47
+ cleanup: { status: 'PASSED', failureCode: null },
48
+ diagnostics: [{
49
+ code: 'CODE_TEST_CALL_ORDER_MISMATCH',
50
+ severity: 'error',
51
+ retryable: false,
52
+ details: {
53
+ dimension: 'args_digest',
54
+ callOrdinal: 1,
55
+ expectedOrdinal: 1,
56
+ expectedRequestDigest: DIGEST,
57
+ actualRequestDigest: DIGEST,
58
+ firstDivergingJsonPointer: '/filters/0',
59
+ unconsumedTailCount: 0,
60
+ },
61
+ }],
62
+ },
63
+ },
64
+ },
65
+ }));
66
+ });
67
+ await new Promise((resolve) => server.listen(0, '127.0.0.1', resolve));
68
+ const address = server.address();
69
+ strict_1.default.ok(address && typeof address !== 'string');
70
+ (0, auth_store_1.saveCredential)({
71
+ alias: 'candidate-test',
72
+ orgId: '33333333-3333-4333-8333-333333333333',
73
+ instanceUrl: `http://127.0.0.1:${address.port}`,
74
+ accessToken: 'test-token',
75
+ username: 'test@example.test',
76
+ });
77
+ const output = [];
78
+ const previousLog = console.log;
79
+ console.log = (value) => output.push(String(value));
80
+ try {
81
+ await (0, cli_1.buildCliProgram)().parseAsync([
82
+ 'node', 'nexus', 'employee', 'code', 'test',
83
+ '--export-id', 'QuarterlyBusinessAnalysis',
84
+ '--suite', 'sandbox',
85
+ '--candidate-release-set-id', '11111111-1111-4111-8111-111111111111',
86
+ '--target-org', 'candidate-test',
87
+ '--expected-source-lock-digest', DIGEST,
88
+ '--expected-release-item-set-digest', DIGEST,
89
+ '--expected-materialized-item-refs-digest', DIGEST,
90
+ '--json',
91
+ ]);
92
+ strict_1.default.equal(output.length, 1);
93
+ const result = JSON.parse(output[0]);
94
+ strict_1.default.equal(result.schemaVersion, 'nexusclaw.cli-result/v1');
95
+ strict_1.default.equal(result.ok, false);
96
+ strict_1.default.equal(result.exitCode, 1);
97
+ strict_1.default.equal(result.data.observability.cleanup.status, 'PASSED');
98
+ strict_1.default.equal(result.data.observability.diagnostics[0].details.dimension, 'args_digest');
99
+ strict_1.default.equal(process.exitCode, 1);
100
+ }
101
+ finally {
102
+ console.log = previousLog;
103
+ process.exitCode = previousExitCode;
104
+ await new Promise((resolve, reject) => server.close((error) => error ? reject(error) : resolve()));
105
+ if (previousHome === undefined)
106
+ delete process.env.NEXUS_CLI_HOME;
107
+ else
108
+ process.env.NEXUS_CLI_HOME = previousHome;
109
+ node_fs_1.default.rmSync(home, { recursive: true, force: true });
110
+ }
111
+ });
112
+ //# sourceMappingURL=code-candidate.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-candidate.test.js","sourceRoot":"","sources":["../../../../../src/commands/employee/code-candidate.test.ts"],"names":[],"mappings":"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"}
@@ -71,23 +71,28 @@ exports.employeeCodeCommand
71
71
  .option('--expected-release-item-set-digest <digest>')
72
72
  .option('--expected-materialized-item-refs-digest <digest>')
73
73
  .option('--json')
74
- .action(async (options) => {
74
+ .action(async (options, command) => {
75
+ const json = Boolean(command.optsWithGlobals().json);
75
76
  try {
76
- emit('employee.code.test', options.candidateReleaseSetId
77
- ? await (0, workforce_remote_operations_1.runRemoteCandidateTests)({
77
+ if (options.candidateReleaseSetId) {
78
+ const result = await (0, workforce_remote_operations_1.runRemoteCandidateTests)({
78
79
  ...remoteIdentity(options),
79
80
  selectors: [{
80
81
  kind: 'action',
81
82
  exportId: options.exportId,
82
83
  suites: expandSuite(options.suite, ['contract', 'compile', 'sandbox', 'permission', 'unit']),
83
84
  }],
84
- })
85
- : await (0, code_authoring_local_1.runLocalCodeTests)({
85
+ });
86
+ emitCandidateTest(result, json);
87
+ }
88
+ else {
89
+ emit('employee.code.test', await (0, code_authoring_local_1.runLocalCodeTests)({
86
90
  sourcePath: required(options.source, 'SOURCE_REQUIRED'),
87
91
  exportId: options.exportId,
88
92
  contextManifestPath: required(options.context, 'CONTEXT_REQUIRED'),
89
93
  suite: options.suite,
90
- }), options.json);
94
+ }), json);
95
+ }
91
96
  }
92
97
  catch (error) {
93
98
  if (error instanceof code_authoring_local_1.CodeRuntimeProviderUnavailableError) {
@@ -109,7 +114,7 @@ exports.employeeCodeCommand
109
114
  process.exitCode = result.exitCode;
110
115
  return;
111
116
  }
112
- throw error;
117
+ (0, error_handler_1.handleError)(error, { json, command: 'employee.code.test' });
113
118
  }
114
119
  });
115
120
  function remoteIdentity(options) {
@@ -153,4 +158,30 @@ function emit(command, data, json) {
153
158
  process.stdout.write(`${JSON.stringify(data, null, 2)}\n`);
154
159
  }
155
160
  }
161
+ function emitCandidateTest(data, json) {
162
+ if (!json) {
163
+ process.stdout.write(`${JSON.stringify(data, null, 2)}\n`);
164
+ if (!data.passed)
165
+ process.exitCode = 1;
166
+ return;
167
+ }
168
+ const diagnostics = data.observability.diagnostics.map((diagnostic) => ({
169
+ code: diagnostic.code,
170
+ severity: diagnostic.severity,
171
+ phase: 'candidate-test',
172
+ message: diagnostic.code,
173
+ retryable: diagnostic.retryable,
174
+ }));
175
+ const result = (0, contracts_1.buildCliResult)({
176
+ command: 'employee.code.test',
177
+ phase: 'complete',
178
+ contractVersion: shared_1.CLI_COMMAND_CONTRACT_SCHEMA_VERSION,
179
+ ok: data.passed,
180
+ data,
181
+ diagnostics,
182
+ exitCode: data.passed ? 0 : 1,
183
+ });
184
+ (0, contracts_1.emitCliResult)(result);
185
+ process.exitCode = result.exitCode;
186
+ }
156
187
  //# sourceMappingURL=code.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"code.js","sourceRoot":"","sources":["../../../../../src/commands/employee/code.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"code.js","sourceRoot":"","sources":["../../../../../src/commands/employee/code.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ const deploy_1 = require("./deploy");
5
5
  const code_1 = require("./code");
6
6
  const flow_1 = require("./flow");
7
7
  const bundle_1 = require("./bundle");
8
+ const candidate_1 = require("./candidate");
8
9
  function registerEmployeeCommands(program) {
9
10
  const employeeCommand = program
10
11
  .command('employee')
@@ -13,5 +14,6 @@ function registerEmployeeCommands(program) {
13
14
  employeeCommand.addCommand(code_1.employeeCodeCommand);
14
15
  employeeCommand.addCommand(flow_1.employeeFlowCommand);
15
16
  employeeCommand.addCommand(bundle_1.employeeBundleCommand);
17
+ employeeCommand.addCommand(candidate_1.employeeCandidateCommand);
16
18
  }
17
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/commands/employee/index.ts"],"names":[],"mappings":";;AAOA,4DASC;AAdD,qCAAiD;AACjD,iCAA6C;AAC7C,iCAA6C;AAC7C,qCAAiD;AAEjD,SAAgB,wBAAwB,CAAC,OAAgB;IACvD,MAAM,eAAe,GAAG,OAAO;SAC5B,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,kCAAkC,CAAC,CAAC;IAEnD,eAAe,CAAC,UAAU,CAAC,8BAAqB,CAAC,CAAC;IAClD,eAAe,CAAC,UAAU,CAAC,0BAAmB,CAAC,CAAC;IAChD,eAAe,CAAC,UAAU,CAAC,0BAAmB,CAAC,CAAC;IAChD,eAAe,CAAC,UAAU,CAAC,8BAAqB,CAAC,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/commands/employee/index.ts"],"names":[],"mappings":";;AAQA,4DAUC;AAhBD,qCAAiD;AACjD,iCAA6C;AAC7C,iCAA6C;AAC7C,qCAAiD;AACjD,2CAAuD;AAEvD,SAAgB,wBAAwB,CAAC,OAAgB;IACvD,MAAM,eAAe,GAAG,OAAO;SAC5B,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,kCAAkC,CAAC,CAAC;IAEnD,eAAe,CAAC,UAAU,CAAC,8BAAqB,CAAC,CAAC;IAClD,eAAe,CAAC,UAAU,CAAC,0BAAmB,CAAC,CAAC;IAChD,eAAe,CAAC,UAAU,CAAC,0BAAmB,CAAC,CAAC;IAChD,eAAe,CAAC,UAAU,CAAC,8BAAqB,CAAC,CAAC;IAClD,eAAe,CAAC,UAAU,CAAC,oCAAwB,CAAC,CAAC;AACvD,CAAC"}
@@ -433,6 +433,30 @@ const PLANNED_CONTRACTS = [
433
433
  { id: 'candidate_remote', when: candidateTest, profile: 'CANDIDATE_TEST', effects: ['remote_write'], implementationId: 'nexus-cli/employee.code.test#candidate_remote@v1' },
434
434
  ],
435
435
  }),
436
+ plannedContract({
437
+ id: 'employee.candidate.status',
438
+ path: 'employee candidate status',
439
+ options: ['--candidate-release-set-id', '--target-org', '--evidence-run-id'],
440
+ modes: [{
441
+ id: 'read',
442
+ when: allOf(present('--candidate-release-set-id'), present('--target-org')),
443
+ profile: 'CANDIDATE_TEST',
444
+ effects: ['remote_read'],
445
+ implementationId: 'nexus-cli/employee.candidate.status#read@v1',
446
+ }],
447
+ }),
448
+ plannedContract({
449
+ id: 'employee.candidate.diagnostics',
450
+ path: 'employee candidate diagnostics',
451
+ options: ['--candidate-release-set-id', '--target-org', '--evidence-run-id'],
452
+ modes: [{
453
+ id: 'read',
454
+ when: allOf(present('--candidate-release-set-id'), present('--target-org')),
455
+ profile: 'CANDIDATE_TEST',
456
+ effects: ['remote_read'],
457
+ implementationId: 'nexus-cli/employee.candidate.diagnostics#read@v1',
458
+ }],
459
+ }),
436
460
  plannedContract({ id: 'employee.flow.describe', path: 'employee flow describe', options: ['--contract'], modes: [{ id: 'describe', when: present('--contract'), implementationId: 'nexus-cli/employee.flow.describe#describe@v1' }] }),
437
461
  plannedContract({ id: 'employee.flow.scaffold', path: 'employee flow scaffold', arguments: ['apiName'], options: ['--package-name', '--out'], modes: [{ id: 'scaffold', when: present('--out'), effects: ['local_write'], implementationId: 'nexus-cli/employee.flow.scaffold#scaffold@v1' }] }),
438
462
  plannedContract({ id: 'employee.flow.validate', path: 'employee flow validate', options: ['--source', '--context'], modes: [{ id: 'local', when: allOf(present('--source'), present('--context')), implementationId: 'nexus-cli/employee.flow.validate#local@v1' }] }),