workspai 0.75.1 → 0.76.0
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/contracts/agent-framework-capabilities.v1.json +2 -2
- package/contracts/cli-runtime-command-inventory.v1.snapshot.json +12 -0
- package/contracts/create-planner-capabilities.v1.json +24 -0
- package/contracts/extension-cli-compatibility.v1.json +4 -2
- package/contracts/published-contract-catalog.v1.json +10 -0
- package/contracts/runtime-command-surface.v1.json +3 -1
- package/contracts/workspace-intelligence/agent-framework-admission-candidate.v2.json +217 -0
- package/contracts/workspace-intelligence/agent-framework-conformance-report.v2.json +274 -0
- package/contracts/workspace-intelligence-architecture.v1.json +5 -3
- package/dist/analyze-QVRVJB7I.js +1 -0
- package/dist/{artifact-remediation-plan-HD5K52UJ.js → artifact-remediation-plan-SRH2Q6N2.js} +1 -1
- package/dist/autopilot-release-DOGIETAT.js +1 -0
- package/dist/capabilities-command-FYBUVHZ7.js +1 -0
- package/dist/{chunk-SCKEFXF5.js → chunk-23CNBYIW.js} +1 -1
- package/dist/chunk-2DZLCINC.js +1 -0
- package/dist/{chunk-2GWQ6NZV.js → chunk-2I2A55RE.js} +1 -1
- package/dist/{chunk-W7I65IXY.js → chunk-3HXEPDFF.js} +2 -2
- package/dist/{chunk-2OCJKLTW.js → chunk-4BBFEHPL.js} +1 -1
- package/dist/{chunk-VHMDWRDG.js → chunk-4BPZJR4Z.js} +4 -4
- package/dist/{chunk-UE7ART6X.js → chunk-4MXKXHLW.js} +1 -1
- package/dist/{chunk-JKAAKE4Z.js → chunk-4R44E7HN.js} +1 -1
- package/dist/chunk-5HNQIMGW.js +1 -0
- package/dist/chunk-5S6IZ6PY.js +2 -0
- package/dist/chunk-6BO4QHKA.js +1 -0
- package/dist/{chunk-25V5XMWB.js → chunk-AGI46TSQ.js} +1 -1
- package/dist/{chunk-2CT5SN2L.js → chunk-BZLDCASY.js} +1 -1
- package/dist/{chunk-OA2YJN22.js → chunk-DWDYLKVW.js} +1 -1
- package/dist/{chunk-6B7L4NZE.js → chunk-EFHSRPW7.js} +6 -6
- package/dist/{chunk-RTD5D35M.js → chunk-FBF767WP.js} +1 -1
- package/dist/{chunk-NGZF4YJS.js → chunk-FD2ZGGCQ.js} +1 -1
- package/dist/chunk-H4YHIOCT.js +7 -0
- package/dist/{chunk-ZI54C2AO.js → chunk-HRGIHWYH.js} +1 -1
- package/dist/{chunk-HDISUL3F.js → chunk-IKNWNGLY.js} +1 -1
- package/dist/{chunk-NRIMJMTF.js → chunk-KO4DM2AV.js} +8 -8
- package/dist/{chunk-6KMR5PKQ.js → chunk-KW35SWG6.js} +5 -5
- package/dist/{chunk-NI5QWBZK.js → chunk-L6VNI4DN.js} +1 -1
- package/dist/chunk-NSC4VWV2.js +1 -0
- package/dist/chunk-P5LI5DL3.js +1 -0
- package/dist/chunk-PSQPKK6H.js +97 -0
- package/dist/chunk-PUH3TSPC.js +1 -0
- package/dist/chunk-QFDTKOYS.js +2649 -0
- package/dist/chunk-QIPW3G2H.js +1 -0
- package/dist/chunk-QVFIR64T.js +10 -0
- package/dist/{chunk-AICCXYY5.js → chunk-R3Z4LY3O.js} +1 -1
- package/dist/chunk-RKFTUIZ4.js +4 -0
- package/dist/chunk-ROOPODG6.js +2 -0
- package/dist/{chunk-COOVCORC.js → chunk-SVO2GGTV.js} +1 -1
- package/dist/chunk-TFFNHWXY.js +4 -0
- package/dist/chunk-TJ3MDZMC.js +6 -0
- package/dist/{chunk-DJH2CH42.js → chunk-UHIN3RS6.js} +1 -1
- package/dist/chunk-UOTOJJI4.js +681 -0
- package/dist/chunk-VODNLROY.js +1 -0
- package/dist/{chunk-3WQ5TYCO.js → chunk-X7MDTBX5.js} +1 -1
- package/dist/{chunk-RPM67N7A.js → chunk-XHUM372O.js} +1 -1
- package/dist/chunk-YLLCZMKP.js +2 -0
- package/dist/{chunk-4VSQNSGH.js → chunk-Z2M2XCIB.js} +1 -1
- package/dist/chunk-ZXQC36NJ.js +1 -0
- package/dist/{create-P4XJVZCL.js → create-ZRUQ3KNZ.js} +1 -1
- package/dist/{demo-kit-ALW6OSQV.js → demo-kit-QNGY4KQ5.js} +1 -1
- package/dist/{doctor-PFN6KB6P.js → doctor-7V7LJLHX.js} +1 -1
- package/dist/{dotnet-webapi-clean-6Z4EXEJY.js → dotnet-webapi-clean-GXTNZMKO.js} +1 -1
- package/dist/{goal-lifecycle-BDWTWS55.js → goal-lifecycle-EM4DUJCR.js} +1 -1
- package/dist/{goal-pack-5JDNZFKV.js → goal-pack-YMWZHAH6.js} +1 -1
- package/dist/{gofiber-standard-TDJQIVQZ.js → gofiber-standard-PFBIAMGR.js} +1 -1
- package/dist/{gogin-standard-UEF3IHSJ.js → gogin-standard-DW5GL7YG.js} +1 -1
- package/dist/index.d.ts +12 -6
- package/dist/index.js +255 -253
- package/dist/{pipeline-OUYS4ZYV.js → pipeline-6MBH3MU2.js} +1 -1
- package/dist/platform-capabilities-RWOWND5Q.js +1 -0
- package/dist/{project-agent-entry-75WO3QWP.js → project-agent-entry-ZXAE2MAJ.js} +1 -1
- package/dist/{project-intelligence-lens-JCHFOIA7.js → project-intelligence-lens-NBTPOK2R.js} +1 -1
- package/dist/{project-test-coverage-3P5FH6E5.js → project-test-coverage-HOZC72EK.js} +1 -1
- package/dist/proof-carrying-change-WJFAKK3C.js +1 -0
- package/dist/{pythonRapidkitExec-UMFLDIYR.js → pythonRapidkitExec-S35OEIEF.js} +1 -1
- package/dist/{rust-axum-4TRVPFMB.js → rust-axum-L7UAYARA.js} +1 -1
- package/dist/{springboot-standard-COWL75GT.js → springboot-standard-CZH24KWD.js} +1 -1
- package/dist/verified-goal-B7EX2PBE.js +1 -0
- package/dist/{workspace-CBQDOUSH.js → workspace-EBPYCSEM.js} +1 -1
- package/dist/{workspace-agent-sync-RTOTO3DY.js → workspace-agent-sync-Y4F6FBBC.js} +1 -1
- package/dist/{workspace-context-STRZO2N3.js → workspace-context-Y7F7GJCQ.js} +1 -1
- package/dist/{workspace-contract-PMHUUKFM.js → workspace-contract-XJMWMVQE.js} +1 -1
- package/dist/{workspace-explain-CATMJUMN.js → workspace-explain-T2J5ZLY7.js} +1 -1
- package/dist/{workspace-foundation-OULCDCXG.js → workspace-foundation-2UP6IMTH.js} +1 -1
- package/dist/{workspace-graph-stream-Q55CI4K4.js → workspace-graph-stream-MZVL3OCX.js} +1 -1
- package/dist/workspace-graph-token-efficiency-WF6TGSK7.js +1 -0
- package/dist/{workspace-intelligence-3RPZRWSF.js → workspace-intelligence-FZRQIFFM.js} +1 -1
- package/dist/{workspace-intelligence-benchmark-R5MEGJQS.js → workspace-intelligence-benchmark-V6AEVDMB.js} +1 -1
- package/dist/{workspace-intelligence-runner-BNZUYUUN.js → workspace-intelligence-runner-IXT62JG7.js} +1 -1
- package/dist/{workspace-knowledge-graph-VJLD35ES.js → workspace-knowledge-graph-EFC4TUDZ.js} +1 -1
- package/dist/workspace-knowledge-graph-query-BROIV27M.js +1 -0
- package/dist/workspace-knowledge-graph-snapshot-QIMF7TCF.js +1 -0
- package/dist/{workspace-mcp-serve-67NTYD67.js → workspace-mcp-serve-C42UUU7W.js} +1 -1
- package/dist/{workspace-model-6TKZMNEF.js → workspace-model-72SJ6WXT.js} +1 -1
- package/dist/{workspace-onboarding-7V7EH3RH.js → workspace-onboarding-TFDAIHTS.js} +1 -1
- package/dist/{workspace-registry-summary-ILVO7DEU.js → workspace-registry-summary-ZNTXSUI4.js} +1 -1
- package/dist/{workspace-repair-engine-2VGFB3DJ.js → workspace-repair-engine-542TAL3Z.js} +1 -1
- package/dist/workspace-run-NAPJYNSZ.js +1 -0
- package/dist/{workspace-verify-VQWYDAF2.js → workspace-verify-UXKENOQU.js} +1 -1
- package/dist/{workspace-watch-2Z636HWS.js → workspace-watch-DV5AHLOK.js} +1 -1
- package/docs/README.md +2 -2
- package/docs/agent-framework-adapters.md +190 -46
- package/docs/ci-workflows.md +37 -14
- package/docs/commands-reference.md +30 -14
- package/docs/creating-workspaces-and-projects.md +30 -10
- package/docs/doctor-command.md +6 -0
- package/docs/native-kit-baselines.md +4 -0
- package/docs/workspace-run.md +10 -0
- package/package.json +7 -4
- package/scripts/enterprise-package-smoke.mjs +98 -5
- package/dist/analyze-Z3EZNJRI.js +0 -1
- package/dist/autopilot-release-T6XFRWZT.js +0 -1
- package/dist/capabilities-command-VK3LQLP2.js +0 -1
- package/dist/chunk-566NQQTJ.js +0 -97
- package/dist/chunk-5EEXLM45.js +0 -1
- package/dist/chunk-65AE7EC5.js +0 -2
- package/dist/chunk-6NSJBKKK.js +0 -4
- package/dist/chunk-7NKM6EHE.js +0 -7
- package/dist/chunk-ABUSBLBH.js +0 -1
- package/dist/chunk-BR6QIYQS.js +0 -1
- package/dist/chunk-CMLLERGG.js +0 -418
- package/dist/chunk-DFREJHG7.js +0 -1
- package/dist/chunk-FU6SQ2ND.js +0 -1
- package/dist/chunk-M6DVNC6X.js +0 -2
- package/dist/chunk-O5XQP5E7.js +0 -1
- package/dist/chunk-OH6LV5JP.js +0 -6
- package/dist/chunk-PTI743SC.js +0 -7
- package/dist/chunk-QBKOPXKC.js +0 -1
- package/dist/chunk-RGNCL5OB.js +0 -1
- package/dist/chunk-VJQPIH2S.js +0 -681
- package/dist/chunk-WPPRUFJW.js +0 -4
- package/dist/chunk-ZKYH44ER.js +0 -1
- package/dist/platform-capabilities-DB4BZPTD.js +0 -1
- package/dist/proof-carrying-change-LAYV4LTI.js +0 -1
- package/dist/verified-goal-75KGBWTE.js +0 -1
- package/dist/workspace-graph-token-efficiency-YHXFGH3Z.js +0 -1
- package/dist/workspace-knowledge-graph-query-TT2KK3SF.js +0 -1
- package/dist/workspace-knowledge-graph-snapshot-TQAKDDUA.js +0 -1
- package/dist/workspace-run-X7KV6MIT.js +0 -1
|
@@ -9,6 +9,7 @@ import process from 'node:process';
|
|
|
9
9
|
const repoRoot = process.cwd();
|
|
10
10
|
const cliPath = path.join(repoRoot, 'dist', 'index.js');
|
|
11
11
|
const isolatedHome = fs.mkdtempSync(path.join(os.tmpdir(), 'workspai-enterprise-home-'));
|
|
12
|
+
let releaseAdmittedAdapterIds = new Set();
|
|
12
13
|
|
|
13
14
|
process.on('exit', () => {
|
|
14
15
|
fs.rmSync(isolatedHome, { recursive: true, force: true });
|
|
@@ -348,12 +349,43 @@ function assertCliContracts() {
|
|
|
348
349
|
}
|
|
349
350
|
|
|
350
351
|
const frameworks = parseTrailingJson(runCli(['agent', 'framework', 'list', '--json']));
|
|
352
|
+
if (frameworks.schemaVersion !== 'workspai.agent-framework-list.v1') {
|
|
353
|
+
fail(`unexpected agent framework list schema: ${frameworks.schemaVersion}`);
|
|
354
|
+
}
|
|
355
|
+
const adapters = Array.isArray(frameworks.adapters) ? frameworks.adapters : [];
|
|
356
|
+
const admittedIds = adapters
|
|
357
|
+
.filter((adapter) => adapter.status === 'admitted')
|
|
358
|
+
.map((adapter) => adapter.id)
|
|
359
|
+
.sort();
|
|
360
|
+
const expectedAdapterIds = [
|
|
361
|
+
'microsoft-agent-framework-dotnet',
|
|
362
|
+
'microsoft-agent-framework-python',
|
|
363
|
+
'openai-agents-python',
|
|
364
|
+
'openai-agents-typescript',
|
|
365
|
+
];
|
|
351
366
|
if (
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
frameworks.adapters.some((adapter) => adapter.status !== 'admitted')
|
|
367
|
+
admittedIds.length !== 0 &&
|
|
368
|
+
JSON.stringify(admittedIds) !== JSON.stringify(expectedAdapterIds)
|
|
355
369
|
) {
|
|
356
|
-
fail(
|
|
370
|
+
fail(
|
|
371
|
+
`published CLI does not expose the exact release-admitted framework adapters (admitted: ${
|
|
372
|
+
admittedIds.join(', ') || 'none'
|
|
373
|
+
})`
|
|
374
|
+
);
|
|
375
|
+
}
|
|
376
|
+
releaseAdmittedAdapterIds = new Set(admittedIds);
|
|
377
|
+
for (const openaiId of ['openai-agents-python', 'openai-agents-typescript']) {
|
|
378
|
+
const openai = adapters.find((adapter) => adapter.id === openaiId);
|
|
379
|
+
if (!openai) {
|
|
380
|
+
fail(`published CLI is missing implemented OpenAI adapter ${openaiId}`);
|
|
381
|
+
}
|
|
382
|
+
if (openai.stability !== 'stable') {
|
|
383
|
+
fail(
|
|
384
|
+
`${openaiId} must be labeled stable after the digest-changing promotion (observed: ${
|
|
385
|
+
openai.stability ?? 'missing'
|
|
386
|
+
})`
|
|
387
|
+
);
|
|
388
|
+
}
|
|
357
389
|
}
|
|
358
390
|
|
|
359
391
|
log(`verified CLI contract surfaces for v${version.version}`);
|
|
@@ -390,6 +422,7 @@ function smokeCreateAgentFrameworkKits() {
|
|
|
390
422
|
{
|
|
391
423
|
kit: 'agent.microsoft.python',
|
|
392
424
|
name: 'python-agent',
|
|
425
|
+
expectCreate: releaseAdmittedAdapterIds.has('microsoft-agent-framework-python'),
|
|
393
426
|
expectedFiles: [
|
|
394
427
|
'README.md',
|
|
395
428
|
'.workspai/project.json',
|
|
@@ -404,6 +437,7 @@ function smokeCreateAgentFrameworkKits() {
|
|
|
404
437
|
{
|
|
405
438
|
kit: 'agent.microsoft.dotnet',
|
|
406
439
|
name: 'dotnet-agent',
|
|
440
|
+
expectCreate: releaseAdmittedAdapterIds.has('microsoft-agent-framework-dotnet'),
|
|
407
441
|
expectedFiles: [
|
|
408
442
|
'README.md',
|
|
409
443
|
'.workspai/project.json',
|
|
@@ -417,6 +451,41 @@ function smokeCreateAgentFrameworkKits() {
|
|
|
417
451
|
'agents/primary/README.md',
|
|
418
452
|
],
|
|
419
453
|
},
|
|
454
|
+
{
|
|
455
|
+
kit: 'agent.openai.python',
|
|
456
|
+
name: 'openai-python-agent',
|
|
457
|
+
expectCreate: releaseAdmittedAdapterIds.has('openai-agents-python'),
|
|
458
|
+
expectedFiles: [
|
|
459
|
+
'README.md',
|
|
460
|
+
'.workspai/project.json',
|
|
461
|
+
'.workspai/agent-frameworks/openai-agents-python/primary.json',
|
|
462
|
+
'agents/primary/main.py',
|
|
463
|
+
'agents/primary/workspai_context.py',
|
|
464
|
+
'agents/primary/agent.py',
|
|
465
|
+
'agents/primary/pyproject.toml',
|
|
466
|
+
'agents/primary/tests/test_context.py',
|
|
467
|
+
'agents/primary/.env.example',
|
|
468
|
+
'agents/primary/README.md',
|
|
469
|
+
],
|
|
470
|
+
},
|
|
471
|
+
{
|
|
472
|
+
kit: 'agent.openai.typescript',
|
|
473
|
+
name: 'openai-typescript-agent',
|
|
474
|
+
expectCreate: releaseAdmittedAdapterIds.has('openai-agents-typescript'),
|
|
475
|
+
expectedFiles: [
|
|
476
|
+
'README.md',
|
|
477
|
+
'.workspai/project.json',
|
|
478
|
+
'.workspai/agent-frameworks/openai-agents-typescript/primary.json',
|
|
479
|
+
'agents/primary/src/main.ts',
|
|
480
|
+
'agents/primary/src/workspai-context.ts',
|
|
481
|
+
'agents/primary/src/agent.ts',
|
|
482
|
+
'agents/primary/package.json',
|
|
483
|
+
'agents/primary/tsconfig.json',
|
|
484
|
+
'agents/primary/tests/context.test.ts',
|
|
485
|
+
'agents/primary/.env.example',
|
|
486
|
+
'agents/primary/README.md',
|
|
487
|
+
],
|
|
488
|
+
},
|
|
420
489
|
];
|
|
421
490
|
try {
|
|
422
491
|
for (const scenario of scenarios) {
|
|
@@ -430,6 +499,22 @@ function smokeCreateAgentFrameworkKits() {
|
|
|
430
499
|
stdio: ['ignore', 'pipe', 'pipe'],
|
|
431
500
|
}
|
|
432
501
|
);
|
|
502
|
+
const combined = `${result.stdout}\n${result.stderr}`;
|
|
503
|
+
if (scenario.expectCreate === false) {
|
|
504
|
+
if (result.status === 0) {
|
|
505
|
+
fail(`${scenario.kit} create succeeded before the stable digest was release-admitted`);
|
|
506
|
+
}
|
|
507
|
+
if (
|
|
508
|
+
!/not release-admitted|adapter (?:manifest|implementation) changed after release admission/i.test(
|
|
509
|
+
combined
|
|
510
|
+
)
|
|
511
|
+
) {
|
|
512
|
+
fail(
|
|
513
|
+
`${scenario.kit} failed closed without an admission blocker\n${result.stdout}\n${result.stderr}`
|
|
514
|
+
);
|
|
515
|
+
}
|
|
516
|
+
continue;
|
|
517
|
+
}
|
|
433
518
|
if (result.status !== 0) {
|
|
434
519
|
fail(
|
|
435
520
|
`${scenario.kit} governed create failed with exit ${result.status}\n${result.stdout}\n${result.stderr}`
|
|
@@ -437,8 +522,16 @@ function smokeCreateAgentFrameworkKits() {
|
|
|
437
522
|
}
|
|
438
523
|
assertGeneratedProject(path.join(workspacePath, scenario.name), scenario.expectedFiles);
|
|
439
524
|
}
|
|
525
|
+
const admittedCreates = scenarios.filter((scenario) => scenario.expectCreate);
|
|
440
526
|
const ownershipRoot = path.join(workspacePath, '.workspai', 'agent-frameworks', 'ownership');
|
|
441
|
-
|
|
527
|
+
const recordedOwnership = fs.existsSync(ownershipRoot);
|
|
528
|
+
if (admittedCreates.length === 0) {
|
|
529
|
+
if (recordedOwnership) {
|
|
530
|
+
fail('agent kit smoke recorded ownership receipts without a release-admitted create');
|
|
531
|
+
}
|
|
532
|
+
} else if (!recordedOwnership) {
|
|
533
|
+
fail('agent kit smoke did not record ownership receipts');
|
|
534
|
+
}
|
|
442
535
|
} finally {
|
|
443
536
|
fs.rmSync(tempDir, { recursive: true, force: true });
|
|
444
537
|
}
|
package/dist/analyze-Z3EZNJRI.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{b as printAnalyzeReport,a as runAnalyze}from'./chunk-4VSQNSGH.js';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{b as AUTOPILOT_RELEASE_ALIAS_FILENAME,a as AUTOPILOT_RELEASE_LAST_RUN_FILENAME,c as runAutopilotRelease}from'./chunk-NI5QWBZK.js';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export{b as runDoctorCapabilities}from'./chunk-JKAAKE4Z.js';
|