@llm-dev-ops/agentics-cli 1.3.5 → 1.3.6
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/dist/adapters/base-adapter.d.ts +18 -0
- package/dist/adapters/base-adapter.d.ts.map +1 -1
- package/dist/adapters/base-adapter.js +134 -4
- package/dist/adapters/base-adapter.js.map +1 -1
- package/dist/adapters/index.d.ts +1 -1
- package/dist/adapters/index.d.ts.map +1 -1
- package/dist/adapters/index.js +1 -1
- package/dist/adapters/index.js.map +1 -1
- package/dist/cli/index.js +16 -3
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/deploy.js +2 -2
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/diligence.js +2 -2
- package/dist/commands/diligence.js.map +1 -1
- package/dist/commands/export.js +2 -2
- package/dist/commands/export.js.map +1 -1
- package/dist/commands/inspect.js +2 -2
- package/dist/commands/inspect.js.map +1 -1
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +16 -4
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/plan.js +2 -2
- package/dist/commands/plan.js.map +1 -1
- package/dist/commands/quantify.js +2 -2
- package/dist/commands/quantify.js.map +1 -1
- package/dist/commands/simulate.d.ts.map +1 -1
- package/dist/commands/simulate.js +93 -9
- package/dist/commands/simulate.js.map +1 -1
- package/dist/config/endpoints.d.ts +49 -0
- package/dist/config/endpoints.d.ts.map +1 -1
- package/dist/config/endpoints.js +120 -2
- package/dist/config/endpoints.js.map +1 -1
- package/dist/contracts/schemas/index.d.ts +109 -7
- package/dist/contracts/schemas/index.d.ts.map +1 -1
- package/dist/contracts/schemas/index.js +39 -1
- package/dist/contracts/schemas/index.js.map +1 -1
- package/dist/contracts/validator.d.ts +1 -1
- package/dist/contracts/validator.d.ts.map +1 -1
- package/dist/contracts/validator.js.map +1 -1
- package/dist/errors/index.d.ts +5 -0
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +47 -0
- package/dist/errors/index.js.map +1 -1
- package/dist/server/routes/simulate.d.ts +4 -3
- package/dist/server/routes/simulate.d.ts.map +1 -1
- package/dist/server/routes/simulate.js +85 -9
- package/dist/server/routes/simulate.js.map +1 -1
- package/dist/server/utils/response-builder.d.ts +4 -0
- package/dist/server/utils/response-builder.d.ts.map +1 -1
- package/dist/server/utils/response-builder.js +62 -0
- package/dist/server/utils/response-builder.js.map +1 -1
- package/package.json +1 -1
package/dist/commands/plan.js
CHANGED
|
@@ -21,7 +21,7 @@ import { ManifestsAdapter, PlannerAdapter, } from '../adapters/base-adapter.js';
|
|
|
21
21
|
import { createOrchestrationEngine, } from '../modules/orchestration-engine.js';
|
|
22
22
|
import { createArtifactHandoff } from '../modules/artifact-handoff.js';
|
|
23
23
|
import { createAuditTrail } from '../audit/audit-trail.js';
|
|
24
|
-
import { failFast } from '../errors/index.js';
|
|
24
|
+
import { failFast, toError } from '../errors/index.js';
|
|
25
25
|
import { loadEndpointConfig } from '../config/endpoints.js';
|
|
26
26
|
import { validateRequest, validateResponse, RequestSchemas, ResponseSchemas, } from '../contracts/validator.js';
|
|
27
27
|
// ============================================================================
|
|
@@ -132,7 +132,7 @@ export async function executePlanCommand(input, options) {
|
|
|
132
132
|
failFast({
|
|
133
133
|
command: 'plan',
|
|
134
134
|
phase: 'orchestration',
|
|
135
|
-
upstreamError:
|
|
135
|
+
upstreamError: toError(error),
|
|
136
136
|
inputs: input,
|
|
137
137
|
correlationId,
|
|
138
138
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../src/commands/plan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAMH,OAAO,EACL,gBAAgB,EAChB,cAAc,GACf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,yBAAyB,GAE1B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../src/commands/plan.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,7 +21,7 @@ import { RoiEngineAdapter } from '../adapters/base-adapter.js';
|
|
|
21
21
|
import { createOrchestrationEngine, } from '../modules/orchestration-engine.js';
|
|
22
22
|
import { createArtifactHandoff } from '../modules/artifact-handoff.js';
|
|
23
23
|
import { createAuditTrail } from '../audit/audit-trail.js';
|
|
24
|
-
import { failFast } from '../errors/index.js';
|
|
24
|
+
import { failFast, toError } from '../errors/index.js';
|
|
25
25
|
import { loadEndpointConfig } from '../config/endpoints.js';
|
|
26
26
|
import { validateRequest, validateResponse, RequestSchemas, ResponseSchemas, } from '../contracts/validator.js';
|
|
27
27
|
// ============================================================================
|
|
@@ -142,7 +142,7 @@ export async function executeQuantifyCommand(input, options) {
|
|
|
142
142
|
failFast({
|
|
143
143
|
command: 'quantify',
|
|
144
144
|
phase: 'generation',
|
|
145
|
-
upstreamError:
|
|
145
|
+
upstreamError: toError(error),
|
|
146
146
|
inputs: input,
|
|
147
147
|
correlationId,
|
|
148
148
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quantify.js","sourceRoot":"","sources":["../../src/commands/quantify.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAUH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EACL,yBAAyB,GAE1B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"quantify.js","sourceRoot":"","sources":["../../src/commands/quantify.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulate.d.ts","sourceRoot":"","sources":["../../src/commands/simulate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,aAAa,EAEd,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"simulate.d.ts","sourceRoot":"","sources":["../../src/commands/simulate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,aAAa,EAEd,MAAM,mBAAmB,CAAC;AAiH3B,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,mBAAmB,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,qBAAqB,CAAC,CAkJhC"}
|
|
@@ -21,10 +21,97 @@ import { RunnerAdapter, SimulationEngineAdapter } from '../adapters/base-adapter
|
|
|
21
21
|
import { createOrchestrationEngine, } from '../modules/orchestration-engine.js';
|
|
22
22
|
import { createArtifactHandoff } from '../modules/artifact-handoff.js';
|
|
23
23
|
import { createAuditTrail } from '../audit/audit-trail.js';
|
|
24
|
-
import { failFast } from '../errors/index.js';
|
|
24
|
+
import { failFast, toError } from '../errors/index.js';
|
|
25
25
|
import { loadEndpointConfig } from '../config/endpoints.js';
|
|
26
26
|
import { validateRequest, validateResponse, RequestSchemas, ResponseSchemas, } from '../contracts/validator.js';
|
|
27
27
|
// ============================================================================
|
|
28
|
+
// Scenario Builder - Converts natural language input to structured scenario
|
|
29
|
+
// ============================================================================
|
|
30
|
+
/**
|
|
31
|
+
* Builds a valid ScenarioObject from natural language description.
|
|
32
|
+
* Generates deterministic IDs and provides reasonable defaults for all required fields.
|
|
33
|
+
*/
|
|
34
|
+
function buildScenarioFromDescription(description) {
|
|
35
|
+
// Generate deterministic scenarioId from description + timestamp
|
|
36
|
+
const timestamp = Date.now();
|
|
37
|
+
const hash = description.split('').reduce((acc, char) => ((acc << 5) - acc) + char.charCodeAt(0), 0);
|
|
38
|
+
const scenarioId = `scenario-${Math.abs(hash).toString(36)}-${timestamp.toString(36)}`;
|
|
39
|
+
// Parse description to extract meaningful parts
|
|
40
|
+
const normalizedDesc = description.trim().toLowerCase();
|
|
41
|
+
// Determine category from description keywords
|
|
42
|
+
let category = 'general';
|
|
43
|
+
if (normalizedDesc.includes('erp') || normalizedDesc.includes('enterprise')) {
|
|
44
|
+
category = 'enterprise';
|
|
45
|
+
}
|
|
46
|
+
else if (normalizedDesc.includes('api') || normalizedDesc.includes('endpoint')) {
|
|
47
|
+
category = 'api';
|
|
48
|
+
}
|
|
49
|
+
else if (normalizedDesc.includes('load') || normalizedDesc.includes('performance')) {
|
|
50
|
+
category = 'performance';
|
|
51
|
+
}
|
|
52
|
+
else if (normalizedDesc.includes('integration') || normalizedDesc.includes('connect')) {
|
|
53
|
+
category = 'integration';
|
|
54
|
+
}
|
|
55
|
+
else if (normalizedDesc.includes('cost') || normalizedDesc.includes('optimization')) {
|
|
56
|
+
category = 'optimization';
|
|
57
|
+
}
|
|
58
|
+
// Extract tags from description
|
|
59
|
+
const potentialTags = ['cli', category];
|
|
60
|
+
const tagKeywords = ['test', 'simulation', 'production', 'staging', 'development', 'enterprise', 'erp', 'api', 'load'];
|
|
61
|
+
for (const keyword of tagKeywords) {
|
|
62
|
+
if (normalizedDesc.includes(keyword) && !potentialTags.includes(keyword)) {
|
|
63
|
+
potentialTags.push(keyword);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
// Build the scenario name from description (first 50 chars, title case)
|
|
67
|
+
const scenarioName = description.length > 50
|
|
68
|
+
? description.slice(0, 47) + '...'
|
|
69
|
+
: description;
|
|
70
|
+
return {
|
|
71
|
+
scenarioId,
|
|
72
|
+
version: '1.0.0',
|
|
73
|
+
name: scenarioName,
|
|
74
|
+
description: description,
|
|
75
|
+
category,
|
|
76
|
+
tags: potentialTags,
|
|
77
|
+
preconditions: [
|
|
78
|
+
'System is in operational state',
|
|
79
|
+
'Required services are available',
|
|
80
|
+
],
|
|
81
|
+
setup: {
|
|
82
|
+
environment: {
|
|
83
|
+
mode: 'simulation',
|
|
84
|
+
target: 'default',
|
|
85
|
+
},
|
|
86
|
+
fixtures: [],
|
|
87
|
+
},
|
|
88
|
+
steps: [
|
|
89
|
+
{
|
|
90
|
+
stepId: `${scenarioId}-step-1`,
|
|
91
|
+
action: 'execute_simulation',
|
|
92
|
+
params: {
|
|
93
|
+
description: description,
|
|
94
|
+
category: category,
|
|
95
|
+
},
|
|
96
|
+
expected: 'Simulation executes successfully',
|
|
97
|
+
},
|
|
98
|
+
],
|
|
99
|
+
teardown: {
|
|
100
|
+
cleanup: ['Reset simulation state'],
|
|
101
|
+
},
|
|
102
|
+
expectations: {
|
|
103
|
+
success_criteria: [
|
|
104
|
+
'Simulation completes without errors',
|
|
105
|
+
'Results are generated successfully',
|
|
106
|
+
],
|
|
107
|
+
metrics: {
|
|
108
|
+
target_success_rate: 0.95,
|
|
109
|
+
max_duration_ms: 300000,
|
|
110
|
+
},
|
|
111
|
+
},
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
// ============================================================================
|
|
28
115
|
// Simulate Command Implementation
|
|
29
116
|
// ============================================================================
|
|
30
117
|
export async function executeSimulateCommand(input, options) {
|
|
@@ -59,15 +146,12 @@ export async function executeSimulateCommand(input, options) {
|
|
|
59
146
|
if (isNaturalLanguage(input.planRef)) {
|
|
60
147
|
// ============================================================================
|
|
61
148
|
// CONTRACT VALIDATION - Natural language scenario format
|
|
149
|
+
// Build a full scenario object from the description
|
|
62
150
|
// ============================================================================
|
|
63
|
-
const
|
|
151
|
+
const nlInput = input.planRef;
|
|
152
|
+
const scenario = buildScenarioFromDescription(nlInput.description);
|
|
64
153
|
requestBody = {
|
|
65
|
-
scenario
|
|
66
|
-
id: scenarioId,
|
|
67
|
-
name: 'CLI Simulation',
|
|
68
|
-
description: input.planRef.description,
|
|
69
|
-
tags: ['cli', 'enterprise'],
|
|
70
|
-
},
|
|
154
|
+
scenario,
|
|
71
155
|
config: input.config ?? {},
|
|
72
156
|
iterations: input.iterations ?? 1,
|
|
73
157
|
};
|
|
@@ -149,7 +233,7 @@ export async function executeSimulateCommand(input, options) {
|
|
|
149
233
|
failFast({
|
|
150
234
|
command: 'simulate',
|
|
151
235
|
phase: 'execution',
|
|
152
|
-
upstreamError:
|
|
236
|
+
upstreamError: toError(error),
|
|
153
237
|
inputs: input,
|
|
154
238
|
correlationId,
|
|
155
239
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulate.js","sourceRoot":"","sources":["../../src/commands/simulate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AASH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACrF,OAAO,EACL,yBAAyB,GAE1B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"simulate.js","sourceRoot":"","sources":["../../src/commands/simulate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AASH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACrF,OAAO,EACL,yBAAyB,GAE1B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,eAAe,GAChB,MAAM,2BAA2B,CAAC;AAGnC,+EAA+E;AAC/E,4EAA4E;AAC5E,+EAA+E;AAE/E;;;GAGG;AACH,SAAS,4BAA4B,CAAC,WAAmB;IACvD,iEAAiE;IACjE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrG,MAAM,UAAU,GAAG,YAAY,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;IAEvF,gDAAgD;IAChD,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAExD,+CAA+C;IAC/C,IAAI,QAAQ,GAAG,SAAS,CAAC;IACzB,IAAI,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;QAC5E,QAAQ,GAAG,YAAY,CAAC;IAC1B,CAAC;SAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QACjF,QAAQ,GAAG,KAAK,CAAC;IACnB,CAAC;SAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QACrF,QAAQ,GAAG,aAAa,CAAC;IAC3B,CAAC;SAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QACxF,QAAQ,GAAG,aAAa,CAAC;IAC3B,CAAC;SAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;QACtF,QAAQ,GAAG,cAAc,CAAC;IAC5B,CAAC;IAED,gCAAgC;IAChC,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACvH,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;QAClC,IAAI,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YACzE,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,GAAG,EAAE;QAC1C,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK;QAClC,CAAC,CAAC,WAAW,CAAC;IAEhB,OAAO;QACL,UAAU;QACV,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,WAAW;QACxB,QAAQ;QACR,IAAI,EAAE,aAAa;QACnB,aAAa,EAAE;YACb,gCAAgC;YAChC,iCAAiC;SAClC;QACD,KAAK,EAAE;YACL,WAAW,EAAE;gBACX,IAAI,EAAE,YAAY;gBAClB,MAAM,EAAE,SAAS;aAClB;YACD,QAAQ,EAAE,EAAE;SACb;QACD,KAAK,EAAE;YACL;gBACE,MAAM,EAAE,GAAG,UAAU,SAAS;gBAC9B,MAAM,EAAE,oBAAoB;gBAC5B,MAAM,EAAE;oBACN,WAAW,EAAE,WAAW;oBACxB,QAAQ,EAAE,QAAQ;iBACnB;gBACD,QAAQ,EAAE,kCAAkC;aAC7C;SACF;QACD,QAAQ,EAAE;YACR,OAAO,EAAE,CAAC,wBAAwB,CAAC;SACpC;QACD,YAAY,EAAE;YACZ,gBAAgB,EAAE;gBAChB,qCAAqC;gBACrC,oCAAoC;aACrC;YACD,OAAO,EAAE;gBACP,mBAAmB,EAAE,IAAI;gBACzB,eAAe,EAAE,MAAM;aACxB;SACF;KACF,CAAC;AACJ,CAAC;AAiBD,+EAA+E;AAC/E,kCAAkC;AAClC,+EAA+E;AAE/E,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,KAA2B,EAC3B,OAAuB;IAEvB,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;IAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,wBAAwB;IACxB,MAAM,MAAM,GAAG,yBAAyB,CAAC,aAAa,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;IACxC,MAAM,KAAK,GAAG,gBAAgB,EAAE,CAAC;IAEjC,0FAA0F;IAC1F,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,4BAA4B,CAAC,CAAC;IAC1E,MAAM,YAAY,GAAG,kBAAkB,CAAC,4BAA4B,CAAC,CAAC;IAEtE,qCAAqC;IACrC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,mBAAmB;QACjC,CAAC,CAAC,IAAI,uBAAuB,CAAC,gBAAgB,EAAE,aAAa,CAAC;QAC9D,CAAC,CAAC,IAAI,aAAa,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IAEnD,yCAAyC;IACzC,sEAAsE;IACtE,0DAA0D;IAC1D,MAAM,QAAQ,GAAG,mBAAmB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY,CAAC;IAErE,8BAA8B;IAC9B,MAAM,MAAM,GAAyB;QACnC;YACE,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE;gBACP,QAAQ;gBACR,MAAM,EAAE,MAAM;gBACd,SAAS,EAAE,GAAG,EAAE;oBACd,IAAI,WAAoC,CAAC;oBAEzC,IAAI,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;wBACrC,+EAA+E;wBAC/E,yDAAyD;wBACzD,oDAAoD;wBACpD,+EAA+E;wBAC/E,MAAM,OAAO,GAAG,KAAK,CAAC,OAA+B,CAAC;wBACtD,MAAM,QAAQ,GAAG,4BAA4B,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;wBACnE,WAAW,GAAG;4BACZ,QAAQ;4BACR,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE;4BAC1B,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,CAAC;yBAClC,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,+EAA+E;wBAC/E,yDAAyD;wBACzD,+EAA+E;wBAC/E,MAAM,OAAO,GAAG,KAAK,CAAC,OAAwB,CAAC;wBAC/C,WAAW,GAAG;4BACZ,QAAQ,EAAE;gCACR,EAAE,EAAE,OAAO,CAAC,EAAE;gCACd,IAAI,EAAE,eAAe;gCACrB,UAAU,EAAE,OAAO,CAAC,UAAU;gCAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;gCAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;6BAC3B;4BACD,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE;4BAC1B,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,CAAC;yBAClC,CAAC;oBACJ,CAAC;oBAED,mDAAmD;oBACnD,eAAe,CACb,cAAc,CAAC,QAAQ,EACvB,WAAW,EACX,aAAa,CACd,CAAC;oBAEF,OAAO,WAAW,CAAC;gBACrB,CAAC;aACF;SACF;KACF,CAAC;IAEF,IAAI,CAAC;QACH,wBAAwB;QACxB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAErD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,IAAI,mBAAmB,CAAC,CAAC;QACtE,CAAC;QAED,+EAA+E;QAC/E,oDAAoD;QACpD,+EAA+E;QAE/E,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,oBAAoB,CAAC,CAAC;QAC1E,MAAM,mBAAmB,GAAG,gBAAgB,CAC1C,eAAe,CAAC,UAAU,EAC1B,QAAQ,EAAE,QAAQ,EAClB,aAAa,CACd,CAAC;QAEF,MAAM,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,mBAAmB,CAAwB,CAAC;QAEpF,qBAAqB;QACrB,MAAM,SAAS,GAAG,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC;YAChD,CAAC,CAAC,MAAO,KAAK,CAAC,OAAgC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;YAC1E,CAAC,CAAE,KAAK,CAAC,OAAyB,CAAC,EAAE,CAAC;QACxC,KAAK,CAAC,MAAM,CAAC;YACX,OAAO,EAAE,UAAU;YACnB,MAAM,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE;YAClF,OAAO,EAAE,MAAM;YACf,YAAY,EAAE;gBACZ,EAAE,OAAO,EAAE,4BAA4B,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE;aACnJ;YACD,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;YAChC,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,aAAa;SACxB,CAAC,CAAC;QAEH,OAAO;YACL,SAAS,EAAE,MAAM;YACjB,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;SAC/B,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,0BAA0B;QAC1B,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC;YACtD,CAAC,CAAC,MAAO,KAAK,CAAC,OAAgC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;YAC1E,CAAC,CAAE,KAAK,CAAC,OAAyB,CAAC,EAAE,CAAC;QACxC,KAAK,CAAC,MAAM,CAAC;YACX,OAAO,EAAE,UAAU;YACnB,MAAM,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE;YAC1D,OAAO,EAAE,IAAI;YACb,YAAY,EAAE,EAAE;YAChB,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YACnC,MAAM,EAAE,QAAQ;YAChB,UAAU,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;YAC3D,aAAa,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;YACvE,QAAQ,EAAE,aAAa;SACxB,CAAC,CAAC;QAEH,YAAY;QACZ,QAAQ,CAAC;YACP,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,WAAW;YAClB,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC;YAC7B,MAAM,EAAE,KAAK;YACb,aAAa;SACd,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
|
|
@@ -8,9 +8,58 @@
|
|
|
8
8
|
* FORBIDDEN:
|
|
9
9
|
* - Business Logic
|
|
10
10
|
* - Dynamic endpoint construction based on data
|
|
11
|
+
*
|
|
12
|
+
* LOCALHOST SAFEGUARD:
|
|
13
|
+
* - By default, the CLI targets production Cloud Run endpoints
|
|
14
|
+
* - If any endpoint URL resolves to localhost, the CLI will fail fast
|
|
15
|
+
* - To enable local development, set AGENTICS_LOCAL_DEV=true explicitly
|
|
16
|
+
* - This prevents accidental localhost usage in production
|
|
11
17
|
*/
|
|
12
18
|
import type { EndpointRegistry, EndpointConfig } from '../types/index.js';
|
|
19
|
+
/**
|
|
20
|
+
* Check if local development mode is explicitly enabled.
|
|
21
|
+
* Must be set to 'true' or '1' to enable localhost endpoints.
|
|
22
|
+
*/
|
|
23
|
+
export declare function isLocalDevMode(): boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Check if a URL points to localhost or 127.0.0.1
|
|
26
|
+
*/
|
|
27
|
+
export declare function isLocalhostUrl(url: string): boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Error thrown when localhost is used without explicit local development mode.
|
|
30
|
+
*/
|
|
31
|
+
export declare class LocalhostInProductionError extends Error {
|
|
32
|
+
readonly serviceName: string;
|
|
33
|
+
readonly url: string;
|
|
34
|
+
constructor(serviceName: string, url: string);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Validate that an endpoint URL is allowed based on the current mode.
|
|
38
|
+
* Throws LocalhostInProductionError if localhost is used without local dev mode.
|
|
39
|
+
*/
|
|
40
|
+
export declare function validateEndpointUrl(serviceName: string, url: string): void;
|
|
13
41
|
export declare const DEFAULT_ENDPOINTS: EndpointRegistry;
|
|
42
|
+
/**
|
|
43
|
+
* Load endpoint configuration for a specific service.
|
|
44
|
+
* Validates that the endpoint URL is allowed (fails fast if localhost without local dev mode).
|
|
45
|
+
*
|
|
46
|
+
* @throws LocalhostInProductionError if localhost is used without AGENTICS_LOCAL_DEV=true
|
|
47
|
+
*/
|
|
14
48
|
export declare function loadEndpointConfig(serviceName: keyof EndpointRegistry, overrides?: Partial<EndpointConfig>): EndpointConfig;
|
|
49
|
+
/**
|
|
50
|
+
* Load all endpoint configurations.
|
|
51
|
+
* Validates that all endpoint URLs are allowed (fails fast if any localhost without local dev mode).
|
|
52
|
+
*
|
|
53
|
+
* @throws LocalhostInProductionError if any localhost is used without AGENTICS_LOCAL_DEV=true
|
|
54
|
+
*/
|
|
15
55
|
export declare function loadAllEndpoints(overrides?: Partial<EndpointRegistry>): EndpointRegistry;
|
|
56
|
+
/**
|
|
57
|
+
* Get information about the current endpoint mode.
|
|
58
|
+
* Useful for debugging and logging.
|
|
59
|
+
*/
|
|
60
|
+
export declare function getEndpointModeInfo(): {
|
|
61
|
+
isLocalDev: boolean;
|
|
62
|
+
mode: 'local' | 'production';
|
|
63
|
+
description: string;
|
|
64
|
+
};
|
|
16
65
|
//# sourceMappingURL=endpoints.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"endpoints.d.ts","sourceRoot":"","sources":["../../src/config/endpoints.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"endpoints.d.ts","sourceRoot":"","sources":["../../src/config/endpoints.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAM1E;;;GAGG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAGxC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAuBnD;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,KAAK;IACnD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;gBAET,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;CA6B7C;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAI1E;AASD,eAAO,MAAM,iBAAiB,EAAE,gBAyC/B,CAAC;AAMF;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,gBAAgB,EACnC,SAAS,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GAClC,cAAc,CAWhB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GACpC,gBAAgB,CAYlB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI;IACrC,UAAU,EAAE,OAAO,CAAC;IACpB,IAAI,EAAE,OAAO,GAAG,YAAY,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;CACrB,CASA"}
|
package/dist/config/endpoints.js
CHANGED
|
@@ -8,7 +8,91 @@
|
|
|
8
8
|
* FORBIDDEN:
|
|
9
9
|
* - Business Logic
|
|
10
10
|
* - Dynamic endpoint construction based on data
|
|
11
|
+
*
|
|
12
|
+
* LOCALHOST SAFEGUARD:
|
|
13
|
+
* - By default, the CLI targets production Cloud Run endpoints
|
|
14
|
+
* - If any endpoint URL resolves to localhost, the CLI will fail fast
|
|
15
|
+
* - To enable local development, set AGENTICS_LOCAL_DEV=true explicitly
|
|
16
|
+
* - This prevents accidental localhost usage in production
|
|
17
|
+
*/
|
|
18
|
+
// ============================================================================
|
|
19
|
+
// Local Development Mode Detection
|
|
20
|
+
// ============================================================================
|
|
21
|
+
/**
|
|
22
|
+
* Check if local development mode is explicitly enabled.
|
|
23
|
+
* Must be set to 'true' or '1' to enable localhost endpoints.
|
|
24
|
+
*/
|
|
25
|
+
export function isLocalDevMode() {
|
|
26
|
+
const localDev = process.env['AGENTICS_LOCAL_DEV'];
|
|
27
|
+
return localDev === 'true' || localDev === '1';
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Check if a URL points to localhost or 127.0.0.1
|
|
31
|
+
*/
|
|
32
|
+
export function isLocalhostUrl(url) {
|
|
33
|
+
try {
|
|
34
|
+
const parsed = new URL(url);
|
|
35
|
+
// URL parsing strips brackets from IPv6, so [::1] becomes ::1
|
|
36
|
+
const hostname = parsed.hostname.toLowerCase();
|
|
37
|
+
return (hostname === 'localhost' ||
|
|
38
|
+
hostname === '127.0.0.1' ||
|
|
39
|
+
hostname === '::1' ||
|
|
40
|
+
hostname === '[::1]' ||
|
|
41
|
+
hostname.startsWith('127.') ||
|
|
42
|
+
hostname.endsWith('.localhost'));
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
// If URL parsing fails, check for common localhost patterns in the string
|
|
46
|
+
const lower = url.toLowerCase();
|
|
47
|
+
return (lower.includes('localhost') ||
|
|
48
|
+
lower.includes('127.0.0.1') ||
|
|
49
|
+
lower.includes('[::1]') ||
|
|
50
|
+
lower.includes('//::1'));
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Error thrown when localhost is used without explicit local development mode.
|
|
55
|
+
*/
|
|
56
|
+
export class LocalhostInProductionError extends Error {
|
|
57
|
+
serviceName;
|
|
58
|
+
url;
|
|
59
|
+
constructor(serviceName, url) {
|
|
60
|
+
super(`\n` +
|
|
61
|
+
`━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n` +
|
|
62
|
+
` LOCALHOST ENDPOINT BLOCKED\n` +
|
|
63
|
+
`━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n` +
|
|
64
|
+
`\n` +
|
|
65
|
+
` Service: ${serviceName}\n` +
|
|
66
|
+
` URL: ${url}\n` +
|
|
67
|
+
`\n` +
|
|
68
|
+
` The CLI detected a localhost URL for a production service.\n` +
|
|
69
|
+
` This is blocked to prevent accidental local execution in production.\n` +
|
|
70
|
+
`\n` +
|
|
71
|
+
` TO FIX:\n` +
|
|
72
|
+
`\n` +
|
|
73
|
+
` Option 1: Use production endpoints (recommended)\n` +
|
|
74
|
+
` - Unset the environment variable overriding this endpoint\n` +
|
|
75
|
+
` - The CLI will use the default Cloud Run URL\n` +
|
|
76
|
+
`\n` +
|
|
77
|
+
` Option 2: Enable local development mode\n` +
|
|
78
|
+
` - Set AGENTICS_LOCAL_DEV=true to allow localhost endpoints\n` +
|
|
79
|
+
` - Example: AGENTICS_LOCAL_DEV=true agentics simulate "test"\n` +
|
|
80
|
+
`\n` +
|
|
81
|
+
`━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\n`);
|
|
82
|
+
this.name = 'LocalhostInProductionError';
|
|
83
|
+
this.serviceName = serviceName;
|
|
84
|
+
this.url = url;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Validate that an endpoint URL is allowed based on the current mode.
|
|
89
|
+
* Throws LocalhostInProductionError if localhost is used without local dev mode.
|
|
11
90
|
*/
|
|
91
|
+
export function validateEndpointUrl(serviceName, url) {
|
|
92
|
+
if (isLocalhostUrl(url) && !isLocalDevMode()) {
|
|
93
|
+
throw new LocalhostInProductionError(serviceName, url);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
12
96
|
// ============================================================================
|
|
13
97
|
// Default Endpoint Configuration
|
|
14
98
|
// ============================================================================
|
|
@@ -59,17 +143,51 @@ export const DEFAULT_ENDPOINTS = {
|
|
|
59
143
|
// ============================================================================
|
|
60
144
|
// Configuration Loader
|
|
61
145
|
// ============================================================================
|
|
146
|
+
/**
|
|
147
|
+
* Load endpoint configuration for a specific service.
|
|
148
|
+
* Validates that the endpoint URL is allowed (fails fast if localhost without local dev mode).
|
|
149
|
+
*
|
|
150
|
+
* @throws LocalhostInProductionError if localhost is used without AGENTICS_LOCAL_DEV=true
|
|
151
|
+
*/
|
|
62
152
|
export function loadEndpointConfig(serviceName, overrides) {
|
|
63
153
|
const defaults = DEFAULT_ENDPOINTS[serviceName];
|
|
64
|
-
|
|
154
|
+
const config = {
|
|
65
155
|
...defaults,
|
|
66
156
|
...overrides,
|
|
67
157
|
};
|
|
158
|
+
// Validate endpoint URL - fail fast if localhost in production mode
|
|
159
|
+
validateEndpointUrl(serviceName, config.baseUrl);
|
|
160
|
+
return config;
|
|
68
161
|
}
|
|
162
|
+
/**
|
|
163
|
+
* Load all endpoint configurations.
|
|
164
|
+
* Validates that all endpoint URLs are allowed (fails fast if any localhost without local dev mode).
|
|
165
|
+
*
|
|
166
|
+
* @throws LocalhostInProductionError if any localhost is used without AGENTICS_LOCAL_DEV=true
|
|
167
|
+
*/
|
|
69
168
|
export function loadAllEndpoints(overrides) {
|
|
70
|
-
|
|
169
|
+
const endpoints = {
|
|
71
170
|
...DEFAULT_ENDPOINTS,
|
|
72
171
|
...overrides,
|
|
73
172
|
};
|
|
173
|
+
// Validate all endpoint URLs
|
|
174
|
+
for (const [serviceName, config] of Object.entries(endpoints)) {
|
|
175
|
+
validateEndpointUrl(serviceName, config.baseUrl);
|
|
176
|
+
}
|
|
177
|
+
return endpoints;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Get information about the current endpoint mode.
|
|
181
|
+
* Useful for debugging and logging.
|
|
182
|
+
*/
|
|
183
|
+
export function getEndpointModeInfo() {
|
|
184
|
+
const isLocalDev = isLocalDevMode();
|
|
185
|
+
return {
|
|
186
|
+
isLocalDev,
|
|
187
|
+
mode: isLocalDev ? 'local' : 'production',
|
|
188
|
+
description: isLocalDev
|
|
189
|
+
? 'Local development mode (localhost endpoints allowed)'
|
|
190
|
+
: 'Production mode (Cloud Run endpoints only)',
|
|
191
|
+
};
|
|
74
192
|
}
|
|
75
193
|
//# sourceMappingURL=endpoints.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../../src/config/endpoints.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../../src/config/endpoints.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAIH,+EAA+E;AAC/E,mCAAmC;AACnC,+EAA+E;AAE/E;;;GAGG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IACnD,OAAO,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,GAAG,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5B,8DAA8D;QAC9D,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC/C,OAAO,CACL,QAAQ,KAAK,WAAW;YACxB,QAAQ,KAAK,WAAW;YACxB,QAAQ,KAAK,KAAK;YAClB,QAAQ,KAAK,OAAO;YACpB,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;YAC3B,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAChC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,0EAA0E;QAC1E,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QAChC,OAAO,CACL,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC3B,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC3B,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;YACvB,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CACxB,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,0BAA2B,SAAQ,KAAK;IAC1C,WAAW,CAAS;IACpB,GAAG,CAAS;IAErB,YAAY,WAAmB,EAAE,GAAW;QAC1C,KAAK,CACH,IAAI;YACJ,+EAA+E;YAC/E,gCAAgC;YAChC,+EAA+E;YAC/E,IAAI;YACJ,cAAc,WAAW,IAAI;YAC7B,cAAc,GAAG,IAAI;YACrB,IAAI;YACJ,gEAAgE;YAChE,0EAA0E;YAC1E,IAAI;YACJ,aAAa;YACb,IAAI;YACJ,sDAAsD;YACtD,iEAAiE;YACjE,oDAAoD;YACpD,IAAI;YACJ,6CAA6C;YAC7C,kEAAkE;YAClE,mEAAmE;YACnE,IAAI;YACJ,+EAA+E,CAChF,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,WAAmB,EAAE,GAAW;IAClE,IAAI,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;QAC7C,MAAM,IAAI,0BAA0B,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;IACzD,CAAC;AACH,CAAC;AAED,+EAA+E;AAC/E,iCAAiC;AACjC,+EAA+E;AAE/E,sEAAsE;AACtE,kEAAkE;AAElE,MAAM,CAAC,MAAM,iBAAiB,GAAqB;IACjD,wBAAwB,EAAE;QACxB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,IAAI,8DAA8D;QAChH,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,KAAK;KACf;IACD,6BAA6B,EAAE;QAC7B,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,IAAI,4DAA4D;QAC5G,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,KAAK;KACf;IACD,4BAA4B,EAAE;QAC5B,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,2DAA2D;QAC1G,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,MAAM,EAAE,4BAA4B;KAC9C;IACD,4BAA4B,EAAE;QAC5B,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,IAAI,+DAA+D;QACzH,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,MAAM,EAAE,mCAAmC;KACrD;IACD,uBAAuB,EAAE;QACvB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,IAAI,wDAAwD;QAC7G,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,MAAM,EAAE,iCAAiC;KACnD;IACD,4BAA4B,EAAE;QAC5B,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,2DAA2D;QAC1G,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,KAAK;KACf;IACD,+BAA+B,EAAE;QAC/B,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,IAAI,8DAA8D;QAChH,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,MAAM;KAChB;IACD,qBAAqB,EAAE;QACrB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,8DAA8D;QACvG,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,MAAM;KAChB;CACF,CAAC;AAEF,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAAmC,EACnC,SAAmC;IAEnC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG;QACb,GAAG,QAAQ;QACX,GAAG,SAAS;KACb,CAAC;IAEF,oEAAoE;IACpE,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAEjD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC9B,SAAqC;IAErC,MAAM,SAAS,GAAG;QAChB,GAAG,iBAAiB;QACpB,GAAG,SAAS;KACb,CAAC;IAEF,6BAA6B;IAC7B,KAAK,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9D,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IAKjC,MAAM,UAAU,GAAG,cAAc,EAAE,CAAC;IACpC,OAAO;QACL,UAAU;QACV,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY;QACzC,WAAW,EAAE,UAAU;YACrB,CAAC,CAAC,sDAAsD;YACxD,CAAC,CAAC,4CAA4C;KACjD,CAAC;AACJ,CAAC"}
|
|
@@ -48,7 +48,10 @@ export declare const simulateRequestSchema: {
|
|
|
48
48
|
scenario: {
|
|
49
49
|
type: string;
|
|
50
50
|
properties: {
|
|
51
|
-
|
|
51
|
+
scenarioId: {
|
|
52
|
+
type: string;
|
|
53
|
+
};
|
|
54
|
+
version: {
|
|
52
55
|
type: string;
|
|
53
56
|
};
|
|
54
57
|
name: {
|
|
@@ -57,13 +60,84 @@ export declare const simulateRequestSchema: {
|
|
|
57
60
|
description: {
|
|
58
61
|
type: string;
|
|
59
62
|
};
|
|
63
|
+
category: {
|
|
64
|
+
type: string;
|
|
65
|
+
};
|
|
60
66
|
tags: {
|
|
61
67
|
type: string;
|
|
62
68
|
items: {
|
|
63
69
|
type: string;
|
|
64
70
|
};
|
|
65
71
|
};
|
|
72
|
+
preconditions: {
|
|
73
|
+
type: string;
|
|
74
|
+
items: {
|
|
75
|
+
type: string;
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
setup: {
|
|
79
|
+
type: string;
|
|
80
|
+
properties: {
|
|
81
|
+
environment: {
|
|
82
|
+
type: string;
|
|
83
|
+
};
|
|
84
|
+
fixtures: {
|
|
85
|
+
type: string;
|
|
86
|
+
items: {
|
|
87
|
+
type: string;
|
|
88
|
+
};
|
|
89
|
+
};
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
steps: {
|
|
93
|
+
type: string;
|
|
94
|
+
items: {
|
|
95
|
+
type: string;
|
|
96
|
+
properties: {
|
|
97
|
+
stepId: {
|
|
98
|
+
type: string;
|
|
99
|
+
};
|
|
100
|
+
action: {
|
|
101
|
+
type: string;
|
|
102
|
+
};
|
|
103
|
+
params: {
|
|
104
|
+
type: string;
|
|
105
|
+
};
|
|
106
|
+
expected: {
|
|
107
|
+
type: string;
|
|
108
|
+
};
|
|
109
|
+
};
|
|
110
|
+
required: string[];
|
|
111
|
+
};
|
|
112
|
+
minItems: number;
|
|
113
|
+
};
|
|
114
|
+
teardown: {
|
|
115
|
+
type: string;
|
|
116
|
+
properties: {
|
|
117
|
+
cleanup: {
|
|
118
|
+
type: string;
|
|
119
|
+
items: {
|
|
120
|
+
type: string;
|
|
121
|
+
};
|
|
122
|
+
};
|
|
123
|
+
};
|
|
124
|
+
};
|
|
125
|
+
expectations: {
|
|
126
|
+
type: string;
|
|
127
|
+
properties: {
|
|
128
|
+
success_criteria: {
|
|
129
|
+
type: string;
|
|
130
|
+
items: {
|
|
131
|
+
type: string;
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
metrics: {
|
|
135
|
+
type: string;
|
|
136
|
+
};
|
|
137
|
+
};
|
|
138
|
+
};
|
|
66
139
|
};
|
|
140
|
+
required: string[];
|
|
67
141
|
};
|
|
68
142
|
config: {
|
|
69
143
|
type: string;
|
|
@@ -357,6 +431,39 @@ export interface ManifestsRequestContract {
|
|
|
357
431
|
query?: string;
|
|
358
432
|
[key: string]: unknown;
|
|
359
433
|
}
|
|
434
|
+
/**
|
|
435
|
+
* Step definition for simulation scenario
|
|
436
|
+
*/
|
|
437
|
+
export interface ScenarioStep {
|
|
438
|
+
stepId: string;
|
|
439
|
+
action: string;
|
|
440
|
+
params?: Record<string, unknown>;
|
|
441
|
+
expected?: string;
|
|
442
|
+
}
|
|
443
|
+
/**
|
|
444
|
+
* Full scenario structure required by the API
|
|
445
|
+
*/
|
|
446
|
+
export interface ScenarioObject {
|
|
447
|
+
scenarioId: string;
|
|
448
|
+
version: string;
|
|
449
|
+
name: string;
|
|
450
|
+
description: string;
|
|
451
|
+
category: string;
|
|
452
|
+
tags: string[];
|
|
453
|
+
preconditions: string[];
|
|
454
|
+
setup: {
|
|
455
|
+
environment?: Record<string, unknown>;
|
|
456
|
+
fixtures?: Record<string, unknown>[];
|
|
457
|
+
};
|
|
458
|
+
steps: ScenarioStep[];
|
|
459
|
+
teardown: {
|
|
460
|
+
cleanup?: string[];
|
|
461
|
+
};
|
|
462
|
+
expectations: {
|
|
463
|
+
success_criteria?: string[];
|
|
464
|
+
metrics?: Record<string, unknown>;
|
|
465
|
+
};
|
|
466
|
+
}
|
|
360
467
|
export interface SimulateRequestContract {
|
|
361
468
|
plan_ref?: {
|
|
362
469
|
id: string;
|
|
@@ -365,12 +472,7 @@ export interface SimulateRequestContract {
|
|
|
365
472
|
created_at?: string;
|
|
366
473
|
checksum?: string;
|
|
367
474
|
};
|
|
368
|
-
scenario?:
|
|
369
|
-
id: string;
|
|
370
|
-
name: string;
|
|
371
|
-
description: string;
|
|
372
|
-
tags?: string[];
|
|
373
|
-
};
|
|
475
|
+
scenario?: ScenarioObject;
|
|
374
476
|
config?: Record<string, unknown>;
|
|
375
477
|
iterations?: number;
|
|
376
478
|
[key: string]: unknown;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/contracts/schemas/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;CAS7B,CAAC;AAEF,eAAO,MAAM,qBAAqB
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/contracts/schemas/index.ts"],"names":[],"mappings":"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"}
|