@nexusclawhq/cli 0.3.38 → 0.3.40
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 +22 -0
- package/dist/build-info.json +4 -4
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/community-capabilities.d.ts +27 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/community-capabilities.js +32 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/community-capabilities.js.map +1 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/types.d.ts +13 -2
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/types.js +12 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/types.js.map +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/validator.js +12 -0
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/employee-package/validator.js.map +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/index.d.ts +1 -3
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/index.js +1 -3
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/index.js.map +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.d.ts +988 -101
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.js +1004 -122
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.js.map +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/index.d.ts +1976 -202
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.d.ts +988 -101
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.js +1010 -125
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.js.map +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/platform-admin-route-readiness/index.js +2 -2
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/platform-admin-route-readiness/index.js.map +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/system-object-persistence.js +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/system-object-persistence.js.map +1 -1
- package/dist/nexus-cli/node_modules/@nexusclaw/shared/package.json +0 -12
- package/dist/nexus-cli/src/cli.d.ts +4 -1
- package/dist/nexus-cli/src/cli.js +8 -1
- package/dist/nexus-cli/src/cli.js.map +1 -1
- package/dist/nexus-cli/src/cli.test.js +6 -0
- package/dist/nexus-cli/src/cli.test.js.map +1 -1
- package/dist/nexus-cli/src/commands/ai/help.test.js +4 -4
- package/dist/nexus-cli/src/commands/commands.test.js +1 -1
- package/dist/nexus-cli/src/commands/commands.test.js.map +1 -1
- package/dist/nexus-cli/src/commands/employee/bundle.d.ts +16 -0
- package/dist/nexus-cli/src/commands/employee/bundle.js +31 -15
- package/dist/nexus-cli/src/commands/employee/bundle.js.map +1 -1
- package/dist/nexus-cli/src/commands/employee/bundle.test.d.ts +1 -0
- package/dist/nexus-cli/src/commands/employee/bundle.test.js +33 -0
- package/dist/nexus-cli/src/commands/employee/bundle.test.js.map +1 -0
- package/dist/nexus-cli/src/commands/workforce/curated-exemplar.d.ts +2 -0
- package/dist/nexus-cli/src/commands/workforce/curated-exemplar.js +51 -0
- package/dist/nexus-cli/src/commands/workforce/curated-exemplar.js.map +1 -0
- package/dist/nexus-cli/src/commands/workforce/index.js +2 -0
- package/dist/nexus-cli/src/commands/workforce/index.js.map +1 -1
- package/dist/nexus-cli/src/contracts/command-contract-matrix.generated.test.js +5 -5
- package/dist/nexus-cli/src/contracts/command-inventory.test.js +4 -4
- package/dist/nexus-cli/src/contracts/command-policy.exporter.test.js +2 -2
- package/dist/nexus-cli/src/contracts/command-policy.registry.js +2 -2
- package/dist/nexus-cli/src/contracts/command-policy.registry.js.map +1 -1
- package/dist/nexus-cli/src/contracts/command-policy.registry.test.js +4 -4
- package/dist/nexus-cli/src/contracts/command-policy.validator.test.js +3 -3
- package/dist/nexus-cli/src/runtime/output-coordinator.js +4 -3
- package/dist/nexus-cli/src/runtime/output-coordinator.js.map +1 -1
- package/dist/nexus-cli/src/runtime/output-coordinator.test.js +28 -0
- package/dist/nexus-cli/src/runtime/output-coordinator.test.js.map +1 -1
- package/dist/nexus-cli/src/services/curated-exemplar-remote.d.ts +32 -0
- package/dist/nexus-cli/src/services/curated-exemplar-remote.js +50 -0
- package/dist/nexus-cli/src/services/curated-exemplar-remote.js.map +1 -0
- package/dist/nexus-cli/src/services/workforce-bundle-archive.d.ts +1 -1
- package/dist/nexus-cli/src/services/workforce-bundle-remote.d.ts +1 -1
- package/dist/nexus-cli/src/services/workforce-test-remote.d.ts +1 -1
- package/dist/nexus-cli/src/services/workforce-test-remote.js +1 -1
- package/dist/nexus-cli/src/services/workforce-test-remote.test.js +2 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,33 @@
|
|
|
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_test_1 = __importDefault(require("node:test"));
|
|
8
|
+
const cli_1 = require("../../cli");
|
|
9
|
+
const bundle_1 = require("./bundle");
|
|
10
|
+
(0, node_test_1.default)('employee bundle machine command ids mirror commander subcommand names', () => {
|
|
11
|
+
const program = (0, cli_1.buildCliProgram)();
|
|
12
|
+
const employee = program.commands.find((command) => command.name() === 'employee');
|
|
13
|
+
strict_1.default.ok(employee, 'employee command group missing');
|
|
14
|
+
const bundle = employee.commands.find((command) => command.name() === 'bundle');
|
|
15
|
+
strict_1.default.ok(bundle, 'employee bundle command group missing');
|
|
16
|
+
const commanderIds = bundle.commands
|
|
17
|
+
.map((command) => `employee.bundle.${command.name()}`)
|
|
18
|
+
.sort();
|
|
19
|
+
const emittedIds = [...new Set(Object.values(bundle_1.EMPLOYEE_BUNDLE_MACHINE_COMMAND_IDS))].sort();
|
|
20
|
+
strict_1.default.deepEqual(emittedIds, commanderIds);
|
|
21
|
+
for (const id of emittedIds) {
|
|
22
|
+
strict_1.default.equal(id.includes('_'), false, `machine command id must use dashed spelling: ${id}`);
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
(0, node_test_1.default)('historically affected gate commands all resolve to dashed ids', () => {
|
|
26
|
+
strict_1.default.equal(bundle_1.EMPLOYEE_BUNDLE_MACHINE_COMMAND_IDS.approvalStatus, 'employee.bundle.approval-status');
|
|
27
|
+
strict_1.default.equal(bundle_1.EMPLOYEE_BUNDLE_MACHINE_COMMAND_IDS.approvalRequest, 'employee.bundle.approval-request');
|
|
28
|
+
strict_1.default.equal(bundle_1.EMPLOYEE_BUNDLE_MACHINE_COMMAND_IDS.activationReadiness, 'employee.bundle.activation-readiness');
|
|
29
|
+
strict_1.default.equal(bundle_1.EMPLOYEE_BUNDLE_MACHINE_COMMAND_IDS.replacementStage, 'employee.bundle.replacement-stage');
|
|
30
|
+
strict_1.default.equal(bundle_1.EMPLOYEE_BUNDLE_MACHINE_COMMAND_IDS.replacementStatus, 'employee.bundle.replacement-status');
|
|
31
|
+
strict_1.default.equal(bundle_1.EMPLOYEE_BUNDLE_MACHINE_COMMAND_IDS.revokeAction, 'employee.bundle.revoke-action');
|
|
32
|
+
});
|
|
33
|
+
//# sourceMappingURL=bundle.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bundle.test.js","sourceRoot":"","sources":["../../../../../src/commands/employee/bundle.test.ts"],"names":[],"mappings":";;;;;AAAA,gEAAwC;AACxC,0DAA6B;AAE7B,mCAA4C;AAC5C,qCAA+D;AAS/D,IAAA,mBAAI,EAAC,uEAAuE,EAAE,GAAG,EAAE;IACjF,MAAM,OAAO,GAAG,IAAA,qBAAe,GAAE,CAAC;IAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,UAAU,CAAC,CAAC;IACnF,gBAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,gCAAgC,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,QAAQ,CAAC,CAAC;IAChF,gBAAM,CAAC,EAAE,CAAC,MAAM,EAAE,uCAAuC,CAAC,CAAC;IAE3D,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ;SACjC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,mBAAmB,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;SACrD,IAAI,EAAE,CAAC;IACV,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,4CAAmC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAE3F,gBAAM,CAAC,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IAC3C,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;QAC5B,gBAAM,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,gDAAgD,EAAE,EAAE,CAAC,CAAC;IAC9F,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,IAAA,mBAAI,EAAC,+DAA+D,EAAE,GAAG,EAAE;IACzE,gBAAM,CAAC,KAAK,CACV,4CAAmC,CAAC,cAAc,EAClD,iCAAiC,CAClC,CAAC;IACF,gBAAM,CAAC,KAAK,CACV,4CAAmC,CAAC,eAAe,EACnD,kCAAkC,CACnC,CAAC;IACF,gBAAM,CAAC,KAAK,CACV,4CAAmC,CAAC,mBAAmB,EACvD,sCAAsC,CACvC,CAAC;IACF,gBAAM,CAAC,KAAK,CACV,4CAAmC,CAAC,gBAAgB,EACpD,mCAAmC,CACpC,CAAC;IACF,gBAAM,CAAC,KAAK,CACV,4CAAmC,CAAC,iBAAiB,EACrD,oCAAoC,CACrC,CAAC;IACF,gBAAM,CAAC,KAAK,CACV,4CAAmC,CAAC,YAAY,EAChD,+BAA+B,CAChC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.workforceCuratedExemplarCommand = void 0;
|
|
4
|
+
const commander_1 = require("commander");
|
|
5
|
+
const shared_1 = require("./shared");
|
|
6
|
+
const curated_exemplar_remote_1 = require("../../services/curated-exemplar-remote");
|
|
7
|
+
exports.workforceCuratedExemplarCommand = new commander_1.Command('curated-exemplar')
|
|
8
|
+
.description('策展场景范例:管理员录入/复用已审范例(knowledge.curate)');
|
|
9
|
+
exports.workforceCuratedExemplarCommand
|
|
10
|
+
.command('ingest')
|
|
11
|
+
.description('录入一条策展场景范例(同 scenario+content 幂等更新)')
|
|
12
|
+
.requiredOption('--target-org <alias>')
|
|
13
|
+
.requiredOption('--scenario <code>', 'scenarioCode,例如 price_objection')
|
|
14
|
+
.requiredOption('--role <roleId...>', '允许检索的 roleCodes(至少一个)')
|
|
15
|
+
.requiredOption('--content <text|@file>', '范例正文')
|
|
16
|
+
.requiredOption('--scope <scope>', 'orgSubtree | workspace')
|
|
17
|
+
.option('--org-node <id>', 'scope=orgSubtree 时的组织节点 id')
|
|
18
|
+
.option('--label <label>', 'positive | negative')
|
|
19
|
+
.option('--review-status <status>', 'pending | approved | rejected', 'pending')
|
|
20
|
+
.option('--privacy-review-status <status>', 'pending | approved | rejected', 'pending')
|
|
21
|
+
.option('--title <title>')
|
|
22
|
+
.option('--json')
|
|
23
|
+
.action(async (options) => {
|
|
24
|
+
const roleCodes = Array.isArray(options.role) ? options.role.filter(Boolean) : [];
|
|
25
|
+
if (roleCodes.length === 0) {
|
|
26
|
+
throw new Error('VALIDATION: --role requires at least one roleId');
|
|
27
|
+
}
|
|
28
|
+
(0, shared_1.emitWorkforceResult)('workforce.curated-exemplar.ingest', await (0, curated_exemplar_remote_1.ingestCuratedScenarioExemplarRemote)({
|
|
29
|
+
targetOrg: options.targetOrg,
|
|
30
|
+
scenarioCode: options.scenario,
|
|
31
|
+
roleCodes,
|
|
32
|
+
content: await (0, shared_1.resolveContentOption)(options.content),
|
|
33
|
+
scope: options.scope,
|
|
34
|
+
orgNodeId: options.orgNode,
|
|
35
|
+
label: options.label,
|
|
36
|
+
reviewStatus: options.reviewStatus,
|
|
37
|
+
privacyReviewStatus: options.privacyReviewStatus,
|
|
38
|
+
title: options.title,
|
|
39
|
+
}), options.json);
|
|
40
|
+
});
|
|
41
|
+
exports.workforceCuratedExemplarCommand
|
|
42
|
+
.command('list')
|
|
43
|
+
.description('列出当前工作区的策展场景范例')
|
|
44
|
+
.requiredOption('--target-org <alias>')
|
|
45
|
+
.option('--scenario <code>', '按 scenarioCode 过滤')
|
|
46
|
+
.option('--json')
|
|
47
|
+
.action(async (options) => (0, shared_1.emitWorkforceResult)('workforce.curated-exemplar.list', await (0, curated_exemplar_remote_1.listCuratedScenarioExemplarsRemote)({
|
|
48
|
+
targetOrg: options.targetOrg,
|
|
49
|
+
scenarioCode: options.scenario,
|
|
50
|
+
}), options.json));
|
|
51
|
+
//# sourceMappingURL=curated-exemplar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"curated-exemplar.js","sourceRoot":"","sources":["../../../../../src/commands/workforce/curated-exemplar.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AAEpC,qCAAqE;AACrE,oFAGgD;AAWnC,QAAA,+BAA+B,GAAG,IAAI,mBAAO,CAAC,kBAAkB,CAAC;KAC3E,WAAW,CAAC,uCAAuC,CAAC,CAAC;AAExD,uCAA+B;KAC5B,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,qCAAqC,CAAC;KAClD,cAAc,CAAC,sBAAsB,CAAC;KACtC,cAAc,CAAC,mBAAmB,EAAE,iCAAiC,CAAC;KACtE,cAAc,CAAC,oBAAoB,EAAE,uBAAuB,CAAC;KAC7D,cAAc,CAAC,wBAAwB,EAAE,MAAM,CAAC;KAChD,cAAc,CAAC,iBAAiB,EAAE,wBAAwB,CAAC;KAC3D,MAAM,CAAC,iBAAiB,EAAE,4BAA4B,CAAC;KACvD,MAAM,CAAC,iBAAiB,EAAE,qBAAqB,CAAC;KAChD,MAAM,CAAC,0BAA0B,EAAE,+BAA+B,EAAE,SAAS,CAAC;KAC9E,MAAM,CAAC,kCAAkC,EAAE,+BAA+B,EAAE,SAAS,CAAC;KACtF,MAAM,CAAC,iBAAiB,CAAC;KACzB,MAAM,CAAC,QAAQ,CAAC;KAChB,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IAExB,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClF,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IACD,IAAA,4BAAmB,EACjB,mCAAmC,EACnC,MAAM,IAAA,6DAAmC,EAAC;QACxC,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,YAAY,EAAE,OAAO,CAAC,QAAQ;QAC9B,SAAS;QACT,OAAO,EAAE,MAAM,IAAA,6BAAoB,EAAC,OAAO,CAAC,OAAO,CAAC;QACpD,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,SAAS,EAAE,OAAO,CAAC,OAAO;QAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,EACF,OAAO,CAAC,IAAI,CACb,CAAC;AACJ,CAAC,CAAC,CAAC;AAEL,uCAA+B;KAC5B,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,gBAAgB,CAAC;KAC7B,cAAc,CAAC,sBAAsB,CAAC;KACtC,MAAM,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;KAChD,MAAM,CAAC,QAAQ,CAAC;KAChB,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CACxB,IAAA,4BAAmB,EACjB,iCAAiC,EACjC,MAAM,IAAA,4DAAkC,EAAC;IACvC,SAAS,EAAE,OAAO,CAAC,SAAS;IAC5B,YAAY,EAAE,OAAO,CAAC,QAAQ;CAC/B,CAAC,EACF,OAAO,CAAC,IAAI,CACb,CACF,CAAC"}
|
|
@@ -8,6 +8,7 @@ const constitution_1 = require("./constitution");
|
|
|
8
8
|
const task_1 = require("./task");
|
|
9
9
|
const guardrail_1 = require("./guardrail");
|
|
10
10
|
const knowledge_1 = require("./knowledge");
|
|
11
|
+
const curated_exemplar_1 = require("./curated-exemplar");
|
|
11
12
|
const learning_1 = require("./learning");
|
|
12
13
|
const orchestration_1 = require("./orchestration");
|
|
13
14
|
const observe_1 = require("./observe");
|
|
@@ -32,6 +33,7 @@ function registerWorkforceCommands(program) {
|
|
|
32
33
|
workforceCommand.addCommand(prompt_1.workforcePromptCommand);
|
|
33
34
|
workforceCommand.addCommand(guardrail_1.workforceGuardrailCommand);
|
|
34
35
|
workforceCommand.addCommand(knowledge_1.workforceKnowledgeCommand);
|
|
36
|
+
workforceCommand.addCommand(curated_exemplar_1.workforceCuratedExemplarCommand);
|
|
35
37
|
workforceCommand.addCommand(provider_1.workforceProviderCommand);
|
|
36
38
|
workforceCommand.addCommand(permission_1.workforcePermissionCommand);
|
|
37
39
|
workforceCommand.addCommand(test_case_1.workforceTestCaseCommand);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/commands/workforce/index.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/commands/workforce/index.ts"],"names":[],"mappings":";;AAoCA,8DAqCC;AAvED,yCAAsD;AACtD,mCAAgD;AAChD,2CAAwD;AACxD,iDAA8D;AAC9D,iCAAmG;AACnG,2CAAwD;AACxD,2CAAwD;AACxD,yDAAqE;AACrE,yCAAsD;AACtD,mDAAgE;AAChE,uCAAoD;AACpD,6CAA0D;AAC1D,qCAAkD;AAClD,yCAAsD;AACtD,2CAAwD;AACxD,uCAAoD;AACpD,+BAA4C;AAC5C,2CAAuD;AACvD,iDAA8D;AAC9D,6CAA0D;AAe1D,SAAgB,yBAAyB,CAAC,OAAgB;IACxD,MAAM,gBAAgB,GAAG,OAAO;SAC7B,OAAO,CAAC,WAAW,CAAC;SACpB,WAAW,CAAC,kCAAkC,CAAC,CAAC;IAEnD,gBAAgB,CAAC,UAAU,CAAC,6BAAqB,CAAC,CAAC;IAEnD,gBAAgB,CAAC,UAAU,CAAC,mCAAwB,CAAC,CAAC;IAEtD,gBAAgB,CAAC,UAAU,CAAC,yBAAmB,CAAC,CAAC;IAEjD,gBAAgB,CAAC,UAAU,CAAC,qCAAyB,CAAC,CAAC;IAEvD,gBAAgB,CAAC,UAAU,CAAC,2CAA4B,CAAC,CAAC;IAC1D,gBAAgB,CAAC,UAAU,CAAC,+BAAsB,CAAC,CAAC;IACpD,gBAAgB,CAAC,UAAU,CAAC,qCAAyB,CAAC,CAAC;IACvD,gBAAgB,CAAC,UAAU,CAAC,qCAAyB,CAAC,CAAC;IAEvD,gBAAgB,CAAC,UAAU,CAAC,kDAA+B,CAAC,CAAC;IAC7D,gBAAgB,CAAC,UAAU,CAAC,mCAAwB,CAAC,CAAC;IACtD,gBAAgB,CAAC,UAAU,CAAC,uCAA0B,CAAC,CAAC;IAExD,gBAAgB,CAAC,UAAU,CAAC,oCAAwB,CAAC,CAAC;IAEtD,gBAAgB,CAAC,UAAU,CAAC,iCAAuB,CAAC,CAAC;IAErD,gBAAgB,CAAC,UAAU,CAAC,2BAAoB,CAAC,CAAC;IAClD,gBAAgB,CAAC,UAAU,CAAC,gCAAyB,CAAC,CAAC;IACvD,gBAAgB,CAAC,UAAU,CAAC,+BAAwB,CAAC,CAAC;IACtD,gBAAgB,CAAC,UAAU,CAAC,mCAAwB,CAAC,CAAC;IACtD,gBAAgB,CAAC,UAAU,CAAC,qCAAyB,CAAC,CAAC;IACvD,gBAAgB,CAAC,UAAU,CAAC,2CAA4B,CAAC,CAAC;IAC1D,gBAAgB,CAAC,UAAU,CAAC,uCAA0B,CAAC,CAAC;IAExD,gBAAgB,CAAC,UAAU,CAAC,6CAA6B,CAAC,CAAC;IAE3D,gBAAgB,CAAC,UAAU,CAAC,iCAAuB,CAAC,CAAC;AACvD,CAAC"}
|
|
@@ -823,14 +823,14 @@ async function workforceBundleSignedAdapter() {
|
|
|
823
823
|
executed.add(scenarioId);
|
|
824
824
|
}
|
|
825
825
|
const report = (0, command_contract_matrix_1.buildCommandContractMatrixReport)(policies, manifest, executed);
|
|
826
|
-
strict_1.default.equal(executed.size,
|
|
827
|
-
strict_1.default.equal(report.counts.tested,
|
|
826
|
+
strict_1.default.equal(executed.size, 967);
|
|
827
|
+
strict_1.default.equal(report.counts.tested, 967);
|
|
828
828
|
strict_1.default.equal(report.counts.inapplicable, 17);
|
|
829
|
-
strict_1.default.equal(report.counts.exempted,
|
|
829
|
+
strict_1.default.equal(report.counts.exempted, 167);
|
|
830
830
|
strict_1.default.equal(report.counts.missing, 0);
|
|
831
|
-
strict_1.default.equal(report.scenarioCount,
|
|
831
|
+
strict_1.default.equal(report.scenarioCount, 1151);
|
|
832
832
|
strict_1.default.equal(report.ok, true);
|
|
833
|
-
strict_1.default.equal(report.counts.exempted,
|
|
833
|
+
strict_1.default.equal(report.counts.exempted, 167);
|
|
834
834
|
strict_1.default.equal(report.entries.filter((entry) => entry.kind === 'failure')
|
|
835
835
|
.every((entry) => entry.status === 'tested'), true);
|
|
836
836
|
const reportPath = process.env.NEXUS_CLI_MATRIX_REPORT_PATH;
|
|
@@ -13,17 +13,17 @@ const command_inventory_1 = require("./command-inventory");
|
|
|
13
13
|
const second = (0, command_inventory_1.buildCommandInventory)((0, cli_1.buildCliProgram)());
|
|
14
14
|
strict_1.default.equal(first.schemaVersion, command_inventory_1.CLI_COMMAND_INVENTORY_SCHEMA_VERSION);
|
|
15
15
|
strict_1.default.equal(first.rootCommand, 'nexus');
|
|
16
|
-
strict_1.default.equal(first.leaves.length,
|
|
16
|
+
strict_1.default.equal(first.leaves.length, 289);
|
|
17
17
|
strict_1.default.deepEqual(first, second);
|
|
18
18
|
strict_1.default.deepEqual(first.leaves.map((leaf) => leaf.commandId), [...first.leaves.map((leaf) => leaf.commandId)].sort());
|
|
19
|
-
strict_1.default.equal(new Set(first.leaves.map((leaf) => leaf.commandId)).size,
|
|
19
|
+
strict_1.default.equal(new Set(first.leaves.map((leaf) => leaf.commandId)).size, 289);
|
|
20
20
|
});
|
|
21
21
|
(0, node_test_1.default)('inventory distinguishes inherited and local JSON declarations', () => {
|
|
22
22
|
const inventory = (0, command_inventory_1.buildCommandInventory)((0, cli_1.buildCliProgram)());
|
|
23
23
|
const withJson = inventory.leaves.filter((leaf) => leaf.options.some((option) => option.long === '--json'));
|
|
24
24
|
const withLocalJson = inventory.leaves.filter((leaf) => leaf.options.some((option) => option.long === '--json' && !option.inherited));
|
|
25
|
-
strict_1.default.equal(withJson.length,
|
|
26
|
-
strict_1.default.equal(withLocalJson.length,
|
|
25
|
+
strict_1.default.equal(withJson.length, 289);
|
|
26
|
+
strict_1.default.equal(withLocalJson.length, 289);
|
|
27
27
|
strict_1.default.equal(inventory.leaves.some((leaf) => leaf.options.some((option) => option.long === '--json' && option.inherited)), false);
|
|
28
28
|
});
|
|
29
29
|
(0, node_test_1.default)('inventory records arguments, aliases and effective option ownership', () => {
|
|
@@ -22,8 +22,8 @@ const command_policy_validator_1 = require("./command-policy.validator");
|
|
|
22
22
|
const second = build();
|
|
23
23
|
strict_1.default.deepEqual(first, second);
|
|
24
24
|
strict_1.default.equal(first.schemaVersion, 'nexusclaw.cli-command-registry/v2');
|
|
25
|
-
strict_1.default.equal(first.commands.length,
|
|
26
|
-
strict_1.default.equal(first.policyReport.modeCount,
|
|
25
|
+
strict_1.default.equal(first.commands.length, 289);
|
|
26
|
+
strict_1.default.equal(first.policyReport.modeCount, 328);
|
|
27
27
|
strict_1.default.match(first.registryDigest, /^sha256:[0-9a-f]{64}$/);
|
|
28
28
|
strict_1.default.deepEqual(first.commands.map((command) => command.commandId), [...first.commands.map((command) => command.commandId)].sort());
|
|
29
29
|
strict_1.default.equal(first.commands.some((command) => command.commandId === 'source.pull'), true);
|
|
@@ -19,7 +19,7 @@ const READ_ONLY_COMMANDS = [
|
|
|
19
19
|
'revision.baseline.show', 'revision.diff', 'revision.history',
|
|
20
20
|
'sandbox.list', 'source.get', 'source.status', 'test.report',
|
|
21
21
|
'validate.package', 'validate.source',
|
|
22
|
-
'workforce.escalation.list', 'workforce.knowledge.routing-readiness',
|
|
22
|
+
'workforce.curated-exemplar.list', 'workforce.escalation.list', 'workforce.knowledge.routing-readiness',
|
|
23
23
|
'workforce.notification.list', 'workforce.notification.template-status',
|
|
24
24
|
'workforce.task.conversation.get', 'workforce.task.conversation.list',
|
|
25
25
|
'workspace.current', 'workspace.health', 'workspace.status',
|
|
@@ -51,7 +51,7 @@ const REMOTE_WRITE_COMMANDS = [
|
|
|
51
51
|
'workforce.agent.archive', 'workforce.agent.bind-service-account',
|
|
52
52
|
'workforce.agent.publish', 'workforce.agent.rollback-version', 'workforce.agent.stage-activation',
|
|
53
53
|
'workforce.agent.use-assistant-identity',
|
|
54
|
-
'workforce.escalation.activate', 'workforce.escalation.create',
|
|
54
|
+
'workforce.curated-exemplar.ingest', 'workforce.escalation.activate', 'workforce.escalation.create',
|
|
55
55
|
'workforce.escalation.entry-add', 'workforce.notification.create',
|
|
56
56
|
'workforce.release', 'workforce.task.converse',
|
|
57
57
|
'workspace.push', 'workspace.replay',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-policy.registry.js","sourceRoot":"","sources":["../../../../src/contracts/command-policy.registry.ts"],"names":[],"mappings":";;AA2MA,gEA6BC;AAlND,MAAM,kBAAkB,GAAG;IACzB,qBAAqB,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,kBAAkB;IACrF,0BAA0B,EAAE,2BAA2B,EAAE,+BAA+B;IACxF,YAAY;IACZ,oBAAoB,EAAE,4BAA4B,EAAE,iCAAiC;IACrF,oBAAoB,EAAE,mBAAmB;IACzC,MAAM,EAAE,sCAAsC,EAAE,kBAAkB;IAClE,qCAAqC,EAAE,gCAAgC;IACvE,SAAS,EAAE,UAAU,EAAE,UAAU;IACjC,eAAe,EAAE,mBAAmB,EAAE,0BAA0B;IAChE,aAAa,EAAE,UAAU,EAAE,UAAU;IACrC,iBAAiB,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc;IACjE,2BAA2B,EAAE,wBAAwB,EAAE,4BAA4B;IACnF,gBAAgB,EAAE,kBAAkB,EAAE,kBAAkB;IACxD,eAAe;IACf,wBAAwB,EAAE,eAAe,EAAE,kBAAkB;IAC7D,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa;IAC5D,kBAAkB,EAAE,iBAAiB;IACrC,2BAA2B,EAAE,uCAAuC;
|
|
1
|
+
{"version":3,"file":"command-policy.registry.js","sourceRoot":"","sources":["../../../../src/contracts/command-policy.registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,13 +9,13 @@ const cli_1 = require("../cli");
|
|
|
9
9
|
const command_contract_registry_1 = require("./command-contract.registry");
|
|
10
10
|
const command_inventory_1 = require("./command-inventory");
|
|
11
11
|
const command_policy_registry_1 = require("./command-policy.registry");
|
|
12
|
-
(0, node_test_1.default)('policy registry covers all
|
|
12
|
+
(0, node_test_1.default)('policy registry covers all 289 leaves without anonymous fallback', () => {
|
|
13
13
|
const inventory = (0, command_inventory_1.buildCommandInventory)((0, cli_1.buildCliProgram)());
|
|
14
14
|
const policies = (0, command_policy_registry_1.buildCommandPolicyRegistry)(inventory, command_contract_registry_1.commandContractRegistry.all().map((entry) => entry.contract));
|
|
15
|
-
strict_1.default.equal(policies.length,
|
|
16
|
-
strict_1.default.equal(new Set(policies.map((policy) => policy.commandId)).size,
|
|
15
|
+
strict_1.default.equal(policies.length, 289);
|
|
16
|
+
strict_1.default.equal(new Set(policies.map((policy) => policy.commandId)).size, 289);
|
|
17
17
|
strict_1.default.equal(policies.filter((policy) => policy.source === 'v1-contract').length, 148);
|
|
18
|
-
strict_1.default.equal(policies.filter((policy) => policy.source === 'explicit-v2').length,
|
|
18
|
+
strict_1.default.equal(policies.filter((policy) => policy.source === 'explicit-v2').length, 141);
|
|
19
19
|
});
|
|
20
20
|
(0, node_test_1.default)('policy registry declares canonical target and machine-output semantics', () => {
|
|
21
21
|
const inventory = (0, command_inventory_1.buildCommandInventory)((0, cli_1.buildCliProgram)());
|
|
@@ -15,8 +15,8 @@ const command_policy_validator_1 = require("./command-policy.validator");
|
|
|
15
15
|
const inventory = (0, command_inventory_1.buildCommandInventory)((0, cli_1.buildCliProgram)());
|
|
16
16
|
const policies = (0, command_policy_registry_1.buildCommandPolicyRegistry)(inventory, command_contract_registry_1.commandContractRegistry.all().map((entry) => entry.contract));
|
|
17
17
|
const report = (0, command_policy_validator_1.validateCommandPolicyRegistry)(inventory, policies, '2026-08-02');
|
|
18
|
-
strict_1.default.equal(report.inventoryCount,
|
|
19
|
-
strict_1.default.equal(report.policyCount,
|
|
18
|
+
strict_1.default.equal(report.inventoryCount, 289);
|
|
19
|
+
strict_1.default.equal(report.policyCount, 289);
|
|
20
20
|
strict_1.default.equal(report.ok, true);
|
|
21
21
|
const rules = new Set(report.diagnostics.map((entry) => entry.ruleId));
|
|
22
22
|
strict_1.default.equal(rules.has('DRY_RUN_EXEMPTION_REQUIRED'), false);
|
|
@@ -26,7 +26,7 @@ const command_policy_validator_1 = require("./command-policy.validator");
|
|
|
26
26
|
strict_1.default.doesNotThrow(() => (0, command_policy_validator_1.assertCommandPolicyRegistryConforms)(inventory, policies, '2026-08-02'));
|
|
27
27
|
const exemptions = policies.flatMap((policy) => policy.modes)
|
|
28
28
|
.filter((mode) => mode.invocationPolicy.dryRunExemption);
|
|
29
|
-
strict_1.default.equal(exemptions.length,
|
|
29
|
+
strict_1.default.equal(exemptions.length, 167);
|
|
30
30
|
strict_1.default.equal(exemptions.every((mode) => mode.invocationPolicy.dryRunExemption?.expiresOn === '2026-09-30'), true);
|
|
31
31
|
strict_1.default.throws(() => (0, command_policy_validator_1.assertCommandPolicyRegistryConforms)(inventory, policies, '2026-10-01'), /DRY_RUN_EXEMPTION_EXPIRED/);
|
|
32
32
|
});
|
|
@@ -39,12 +39,13 @@ class CliOutputCoordinator {
|
|
|
39
39
|
throw new Error('CLI_TERMINAL_RESULT_ALREADY_EMITTED');
|
|
40
40
|
}
|
|
41
41
|
const normalizedResultCommand = result.command.trim().split(/\s+/u).join('.');
|
|
42
|
-
|
|
42
|
+
const equivalent = (left, right) => left.replace(/_/gu, '-') === right.replace(/_/gu, '-');
|
|
43
|
+
if (!equivalent(normalizedResultCommand, this.command)) {
|
|
43
44
|
throw new Error(`CLI_TERMINAL_RESULT_COMMAND_MISMATCH: expected ${this.command}, received ${result.command}`);
|
|
44
45
|
}
|
|
45
|
-
const canonicalResult =
|
|
46
|
+
const canonicalResult = result.command === this.command
|
|
46
47
|
? result
|
|
47
|
-
: { ...result, command:
|
|
48
|
+
: { ...result, command: this.command };
|
|
48
49
|
const rendered = this.renderResult(canonicalResult);
|
|
49
50
|
this.terminalEmitted = true;
|
|
50
51
|
this.setExitCode(result.exitCode);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output-coordinator.js","sourceRoot":"","sources":["../../../../src/runtime/output-coordinator.ts"],"names":[],"mappings":";;;AAoBA,kDAEC;
|
|
1
|
+
{"version":3,"file":"output-coordinator.js","sourceRoot":"","sources":["../../../../src/runtime/output-coordinator.ts"],"names":[],"mappings":"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"}
|
|
@@ -77,4 +77,32 @@ function memoryStream(target) {
|
|
|
77
77
|
strict_1.default.throws(() => coordinator.emitMachineResult(result), /CLI_TERMINAL_RESULT_COMMAND_MISMATCH/);
|
|
78
78
|
strict_1.default.equal(coordinator.hasEmittedTerminalResult(), false);
|
|
79
79
|
});
|
|
80
|
+
(0, node_test_1.default)('coordinator accepts underscore spelling of a dashed command and canonicalizes it (LYNC-167)', () => {
|
|
81
|
+
const stdout = [];
|
|
82
|
+
const exits = [];
|
|
83
|
+
const coordinator = new output_coordinator_1.CliOutputCoordinator({
|
|
84
|
+
command: 'employee.bundle.approval-status', machine: true,
|
|
85
|
+
stdout: memoryStream(stdout),
|
|
86
|
+
setExitCode: (exitCode) => exits.push(exitCode),
|
|
87
|
+
});
|
|
88
|
+
const result = (0, machine_result_1.buildCliResult)({
|
|
89
|
+
command: 'employee.bundle.approval_status', phase: 'complete',
|
|
90
|
+
contractVersion: 'nexusclaw.cli-command-contract/v2', ok: true, exitCode: 0,
|
|
91
|
+
});
|
|
92
|
+
coordinator.emitMachineResult(result);
|
|
93
|
+
const emitted = JSON.parse(stdout[0]);
|
|
94
|
+
strict_1.default.equal(emitted.command, 'employee.bundle.approval-status');
|
|
95
|
+
strict_1.default.equal(emitted.ok, true);
|
|
96
|
+
strict_1.default.deepEqual(exits, [0]);
|
|
97
|
+
strict_1.default.equal(coordinator.hasEmittedTerminalResult(), true);
|
|
98
|
+
});
|
|
99
|
+
(0, node_test_1.default)('coordinator still rejects a different command even with dash/underscore equivalence', () => {
|
|
100
|
+
const coordinator = new output_coordinator_1.CliOutputCoordinator({ command: 'employee.bundle.approval-status', machine: true });
|
|
101
|
+
const result = (0, machine_result_1.buildCliResult)({
|
|
102
|
+
command: 'employee.bundle.approval_request', phase: 'complete',
|
|
103
|
+
contractVersion: 'nexusclaw.cli-command-contract/v2', ok: true,
|
|
104
|
+
});
|
|
105
|
+
strict_1.default.throws(() => coordinator.emitMachineResult(result), /CLI_TERMINAL_RESULT_COMMAND_MISMATCH/);
|
|
106
|
+
strict_1.default.equal(coordinator.hasEmittedTerminalResult(), false);
|
|
107
|
+
});
|
|
80
108
|
//# sourceMappingURL=output-coordinator.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output-coordinator.test.js","sourceRoot":"","sources":["../../../../src/runtime/output-coordinator.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"output-coordinator.test.js","sourceRoot":"","sources":["../../../../src/runtime/output-coordinator.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export interface CuratedExemplarView {
|
|
2
|
+
id: string;
|
|
3
|
+
scenarioCode: string;
|
|
4
|
+
roleCodes: string[];
|
|
5
|
+
content: string;
|
|
6
|
+
scope: string;
|
|
7
|
+
orgNodeId?: string | null;
|
|
8
|
+
reviewStatus: string;
|
|
9
|
+
privacyReviewStatus: string;
|
|
10
|
+
label?: string | null;
|
|
11
|
+
contentDigest: string;
|
|
12
|
+
embedded: boolean;
|
|
13
|
+
accessLevel: string;
|
|
14
|
+
title?: string;
|
|
15
|
+
createdAt?: string;
|
|
16
|
+
}
|
|
17
|
+
export declare function ingestCuratedScenarioExemplarRemote(options: {
|
|
18
|
+
targetOrg: string;
|
|
19
|
+
scenarioCode: string;
|
|
20
|
+
roleCodes: string[];
|
|
21
|
+
content: string;
|
|
22
|
+
scope: 'orgSubtree' | 'workspace';
|
|
23
|
+
orgNodeId?: string;
|
|
24
|
+
label?: 'positive' | 'negative';
|
|
25
|
+
reviewStatus?: 'pending' | 'approved' | 'rejected';
|
|
26
|
+
privacyReviewStatus?: 'pending' | 'approved' | 'rejected';
|
|
27
|
+
title?: string;
|
|
28
|
+
}): Promise<CuratedExemplarView>;
|
|
29
|
+
export declare function listCuratedScenarioExemplarsRemote(options: {
|
|
30
|
+
targetOrg: string;
|
|
31
|
+
scenarioCode?: string;
|
|
32
|
+
}): Promise<CuratedExemplarView[]>;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ingestCuratedScenarioExemplarRemote = ingestCuratedScenarioExemplarRemote;
|
|
4
|
+
exports.listCuratedScenarioExemplarsRemote = listCuratedScenarioExemplarsRemote;
|
|
5
|
+
const api_client_1 = require("./api-client");
|
|
6
|
+
const INGEST_CURATED_EXEMPLAR = `
|
|
7
|
+
mutation IngestCuratedScenarioExemplar($input: IngestCuratedScenarioExemplarInput!) {
|
|
8
|
+
ingestCuratedScenarioExemplar(input: $input) {
|
|
9
|
+
id scenarioCode roleCodes content scope orgNodeId reviewStatus privacyReviewStatus
|
|
10
|
+
label contentDigest embedded accessLevel title createdAt
|
|
11
|
+
}
|
|
12
|
+
}`;
|
|
13
|
+
const LIST_CURATED_EXEMPLARS = `
|
|
14
|
+
query CuratedScenarioExemplars($scenarioCode: String) {
|
|
15
|
+
curatedScenarioExemplars(scenarioCode: $scenarioCode) {
|
|
16
|
+
id scenarioCode roleCodes content scope orgNodeId reviewStatus privacyReviewStatus
|
|
17
|
+
label contentDigest embedded accessLevel title createdAt
|
|
18
|
+
}
|
|
19
|
+
}`;
|
|
20
|
+
async function ingestCuratedScenarioExemplarRemote(options) {
|
|
21
|
+
const client = (0, api_client_1.createApiClient)(options.targetOrg);
|
|
22
|
+
const scopeInput = { scope: options.scope };
|
|
23
|
+
if (options.orgNodeId !== undefined)
|
|
24
|
+
scopeInput.orgNodeId = options.orgNodeId;
|
|
25
|
+
const input = {
|
|
26
|
+
scenarioCode: options.scenarioCode,
|
|
27
|
+
roleCodes: options.roleCodes,
|
|
28
|
+
content: options.content,
|
|
29
|
+
scope: scopeInput,
|
|
30
|
+
};
|
|
31
|
+
if (options.label !== undefined)
|
|
32
|
+
input.label = options.label;
|
|
33
|
+
if (options.reviewStatus !== undefined)
|
|
34
|
+
input.reviewStatus = options.reviewStatus;
|
|
35
|
+
if (options.privacyReviewStatus !== undefined)
|
|
36
|
+
input.privacyReviewStatus = options.privacyReviewStatus;
|
|
37
|
+
if (options.title !== undefined)
|
|
38
|
+
input.title = options.title;
|
|
39
|
+
const data = await client.graphql(INGEST_CURATED_EXEMPLAR, { input });
|
|
40
|
+
return data.ingestCuratedScenarioExemplar;
|
|
41
|
+
}
|
|
42
|
+
async function listCuratedScenarioExemplarsRemote(options) {
|
|
43
|
+
const client = (0, api_client_1.createApiClient)(options.targetOrg);
|
|
44
|
+
const variables = {};
|
|
45
|
+
if (options.scenarioCode !== undefined)
|
|
46
|
+
variables.scenarioCode = options.scenarioCode;
|
|
47
|
+
const data = await client.graphql(LIST_CURATED_EXEMPLARS, variables);
|
|
48
|
+
return data.curatedScenarioExemplars;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=curated-exemplar-remote.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"curated-exemplar-remote.js","sourceRoot":"","sources":["../../../../src/services/curated-exemplar-remote.ts"],"names":[],"mappings":";;AA4CA,kFA8BC;AAED,gFAYC;AAxFD,6CAA+C;AA4B/C,MAAM,uBAAuB,GAAG;;;;;;EAM9B,CAAC;AAEH,MAAM,sBAAsB,GAAG;;;;;;EAM7B,CAAC;AAEI,KAAK,UAAU,mCAAmC,CAAC,OAWzD;IACC,MAAM,MAAM,GAAG,IAAA,4BAAe,EAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAClD,MAAM,UAAU,GAA4B,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;IACrE,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS;QAAE,UAAU,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAC9E,MAAM,KAAK,GAA4B;QACrC,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,KAAK,EAAE,UAAU;KAClB,CAAC;IACF,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;QAAE,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC7D,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS;QAAE,KAAK,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAClF,IAAI,OAAO,CAAC,mBAAmB,KAAK,SAAS;QAAE,KAAK,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IACvG,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;QAAE,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC7D,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAC/B,uBAAuB,EACvB,EAAE,KAAK,EAAE,CACV,CAAC;IACF,OAAO,IAAI,CAAC,6BAA6B,CAAC;AAC5C,CAAC;AAEM,KAAK,UAAU,kCAAkC,CAAC,OAGxD;IACC,MAAM,MAAM,GAAG,IAAA,4BAAe,EAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAClD,MAAM,SAAS,GAA4B,EAAE,CAAC;IAC9C,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS;QAAE,SAAS,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IACtF,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAC/B,sBAAsB,EACtB,SAAS,CACV,CAAC;IACF,OAAO,IAAI,CAAC,wBAAwB,CAAC;AACvC,CAAC"}
|
|
@@ -8,5 +8,5 @@ export declare function buildCanonicalWorkforceBundleArchive(options: {
|
|
|
8
8
|
portableBundleDigest: `sha256:${string}`;
|
|
9
9
|
runtimeBindingsDigest: `sha256:${string}`;
|
|
10
10
|
fileCount: number;
|
|
11
|
-
declaredSurfaces: ("
|
|
11
|
+
declaredSurfaces: ("code" | "flow" | "employee")[];
|
|
12
12
|
}>;
|
|
@@ -15,7 +15,7 @@ export declare function prepareRemoteWorkforceBundle(options: {
|
|
|
15
15
|
portableBundleDigest: `sha256:${string}`;
|
|
16
16
|
runtimeBindingsDigest: `sha256:${string}`;
|
|
17
17
|
fileCount: number;
|
|
18
|
-
declaredSurfaces: ("
|
|
18
|
+
declaredSurfaces: ("code" | "flow" | "employee")[];
|
|
19
19
|
};
|
|
20
20
|
sealed: import("./api-client").SealedExecutablePackageArtifact;
|
|
21
21
|
artifactInput: {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const WORKFORCE_TEST_CLI_VERSION = "0.3.
|
|
1
|
+
export declare const WORKFORCE_TEST_CLI_VERSION = "0.3.40";
|
|
2
2
|
export declare function assertWorkforceTestCompatibility(compatibilityVersion: string): void;
|
|
3
3
|
export declare const WORKFORCE_TEST_REGRESSION_QUERY = "\nquery AgentTestRegression($agentId: ID!, $suiteRunId: ID!) {\n agentTestRegression(agentId: $agentId, suiteRunId: $suiteRunId) { suiteRunId current baseline deltas }\n}";
|
|
4
4
|
export interface WorkforceTestSuiteMetrics {
|
|
@@ -12,7 +12,7 @@ exports.listTestResultsRemote = listTestResultsRemote;
|
|
|
12
12
|
exports.getTestBaselineRemote = getTestBaselineRemote;
|
|
13
13
|
exports.getTestRegressionRemote = getTestRegressionRemote;
|
|
14
14
|
const api_client_1 = require("./api-client");
|
|
15
|
-
exports.WORKFORCE_TEST_CLI_VERSION = '0.3.
|
|
15
|
+
exports.WORKFORCE_TEST_CLI_VERSION = '0.3.40';
|
|
16
16
|
function parseCompatibilityVersion(version) {
|
|
17
17
|
const match = /^(\d+)\.(\d+)\.(\d+)$/.exec(version.trim());
|
|
18
18
|
if (!match)
|
|
@@ -22,10 +22,10 @@ const workforce_test_remote_1 = require("./workforce-test-remote");
|
|
|
22
22
|
strict_1.default.throws(() => (0, workforce_test_remote_1.assertWorkforceTestCompatibility)('unknown'), /did not publish cliCompatibilityVersion/);
|
|
23
23
|
});
|
|
24
24
|
(0, node_test_1.default)('evaluation preflight blocks a mismatched CLI/Core contract', () => {
|
|
25
|
-
strict_1.default.throws(() => (0, workforce_test_remote_1.assertWorkforceTestCompatibility)('0.4.0'), /CLI 0.3.
|
|
25
|
+
strict_1.default.throws(() => (0, workforce_test_remote_1.assertWorkforceTestCompatibility)('0.4.0'), /CLI 0.3.40, Core requires 0.4.0/);
|
|
26
26
|
});
|
|
27
27
|
(0, node_test_1.default)('evaluation preflight blocks an older CLI than the Core patch contract', () => {
|
|
28
|
-
strict_1.default.throws(() => (0, workforce_test_remote_1.assertWorkforceTestCompatibility)('0.3.
|
|
28
|
+
strict_1.default.throws(() => (0, workforce_test_remote_1.assertWorkforceTestCompatibility)('0.3.41'), /CLI 0.3.40, Core requires 0.3.41/);
|
|
29
29
|
});
|
|
30
30
|
(0, node_test_1.default)('regression query matches the native Core report fields', () => {
|
|
31
31
|
strict_1.default.match(workforce_test_remote_1.WORKFORCE_TEST_REGRESSION_QUERY, /suiteRunId current baseline deltas/);
|