@llm-dev-ops/agentics-cli 2.7.36 → 2.7.38

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/dist/adapters/base-adapter.d.ts.map +1 -1
  2. package/dist/adapters/base-adapter.js.map +1 -1
  3. package/dist/agents/repo-agent-runner.d.ts.map +1 -1
  4. package/dist/agents/repo-agent-runner.js +0 -2
  5. package/dist/agents/repo-agent-runner.js.map +1 -1
  6. package/dist/agents/system-prompts.d.ts.map +1 -1
  7. package/dist/agents/system-prompts.js +0 -19
  8. package/dist/agents/system-prompts.js.map +1 -1
  9. package/dist/cli/index.js +1 -1
  10. package/dist/cli/index.js.map +1 -1
  11. package/dist/commands/agents.d.ts +4 -24
  12. package/dist/commands/agents.d.ts.map +1 -1
  13. package/dist/commands/agents.js +30 -106
  14. package/dist/commands/agents.js.map +1 -1
  15. package/dist/mcp/agent-event-parser.d.ts +1 -11
  16. package/dist/mcp/agent-event-parser.d.ts.map +1 -1
  17. package/dist/mcp/agent-event-parser.js +7 -153
  18. package/dist/mcp/agent-event-parser.js.map +1 -1
  19. package/dist/mcp/mcp-server.js +0 -58
  20. package/dist/mcp/mcp-server.js.map +1 -1
  21. package/dist/pipeline/auto-chain.d.ts.map +1 -1
  22. package/dist/pipeline/auto-chain.js +27 -169
  23. package/dist/pipeline/auto-chain.js.map +1 -1
  24. package/dist/pipeline/local-fallback/phase5a-local-fallback.d.ts +21 -18
  25. package/dist/pipeline/local-fallback/phase5a-local-fallback.d.ts.map +1 -1
  26. package/dist/pipeline/local-fallback/phase5a-local-fallback.js +92 -397
  27. package/dist/pipeline/local-fallback/phase5a-local-fallback.js.map +1 -1
  28. package/dist/pipeline/phase2/phases/adr-generator.d.ts +29 -1
  29. package/dist/pipeline/phase2/phases/adr-generator.d.ts.map +1 -1
  30. package/dist/pipeline/phase2/phases/adr-generator.js +709 -1399
  31. package/dist/pipeline/phase2/phases/adr-generator.js.map +1 -1
  32. package/dist/pipeline/phase2/phases/ddd-generator.d.ts.map +1 -1
  33. package/dist/pipeline/phase2/phases/ddd-generator.js +7 -42
  34. package/dist/pipeline/phase2/phases/ddd-generator.js.map +1 -1
  35. package/dist/pipeline/phase2/phases/research-dossier.d.ts.map +1 -1
  36. package/dist/pipeline/phase2/phases/research-dossier.js +2 -33
  37. package/dist/pipeline/phase2/phases/research-dossier.js.map +1 -1
  38. package/dist/pipeline/phase2/phases/sparc-specification.d.ts.map +1 -1
  39. package/dist/pipeline/phase2/phases/sparc-specification.js +2 -27
  40. package/dist/pipeline/phase2/phases/sparc-specification.js.map +1 -1
  41. package/dist/pipeline/phase2/types.d.ts +19 -57
  42. package/dist/pipeline/phase2/types.d.ts.map +1 -1
  43. package/dist/pipeline/phase4-adrs/adr-index-extractor.d.ts +75 -0
  44. package/dist/pipeline/phase4-adrs/adr-index-extractor.d.ts.map +1 -0
  45. package/dist/pipeline/phase4-adrs/adr-index-extractor.js +200 -0
  46. package/dist/pipeline/phase4-adrs/adr-index-extractor.js.map +1 -0
  47. package/dist/pipeline/phase4-adrs/phase4-adrs-coordinator.d.ts.map +1 -1
  48. package/dist/pipeline/phase4-adrs/phase4-adrs-coordinator.js +70 -68
  49. package/dist/pipeline/phase4-adrs/phase4-adrs-coordinator.js.map +1 -1
  50. package/dist/pipeline/phase7/deliverables-registry.js +1 -1
  51. package/dist/pipeline/phase7/deliverables-registry.js.map +1 -1
  52. package/dist/pipeline/phases/adr-ddd-generator.d.ts.map +1 -1
  53. package/dist/pipeline/phases/adr-ddd-generator.js +48 -2
  54. package/dist/pipeline/phases/adr-ddd-generator.js.map +1 -1
  55. package/dist/pipeline/phases/prompt-generator.js +191 -80
  56. package/dist/pipeline/phases/prompt-generator.js.map +1 -1
  57. package/dist/pipeline/ruflo-phase-executor.d.ts +2 -5
  58. package/dist/pipeline/ruflo-phase-executor.d.ts.map +1 -1
  59. package/dist/pipeline/ruflo-phase-executor.js +72 -23
  60. package/dist/pipeline/ruflo-phase-executor.js.map +1 -1
  61. package/dist/pipeline/types.d.ts +14 -1
  62. package/dist/pipeline/types.d.ts.map +1 -1
  63. package/dist/routing/domain-boundary.d.ts +4 -20
  64. package/dist/routing/domain-boundary.d.ts.map +1 -1
  65. package/dist/routing/domain-boundary.js +6 -81
  66. package/dist/routing/domain-boundary.js.map +1 -1
  67. package/dist/routing/graph-router.d.ts.map +1 -1
  68. package/dist/routing/graph-router.js +0 -22
  69. package/dist/routing/graph-router.js.map +1 -1
  70. package/dist/synthesis/ask-artifact-writer.d.ts +1 -1
  71. package/dist/synthesis/ask-artifact-writer.d.ts.map +1 -1
  72. package/dist/synthesis/ask-artifact-writer.js +9 -9
  73. package/dist/synthesis/ask-artifact-writer.js.map +1 -1
  74. package/dist/synthesis/simulation-artifact-generator.d.ts +1 -27
  75. package/dist/synthesis/simulation-artifact-generator.d.ts.map +1 -1
  76. package/dist/synthesis/simulation-artifact-generator.js +38 -128
  77. package/dist/synthesis/simulation-artifact-generator.js.map +1 -1
  78. package/docs/ecosystem.graph.json +15 -65
  79. package/package.json +1 -1
  80. package/dist/cli/ui/heartbeat.d.ts +0 -88
  81. package/dist/cli/ui/heartbeat.d.ts.map +0 -1
  82. package/dist/cli/ui/heartbeat.js +0 -158
  83. package/dist/cli/ui/heartbeat.js.map +0 -1
  84. package/dist/config/qe-gating.d.ts +0 -81
  85. package/dist/config/qe-gating.d.ts.map +0 -1
  86. package/dist/config/qe-gating.js +0 -138
  87. package/dist/config/qe-gating.js.map +0 -1
  88. package/dist/pipeline/phase5-build/qe-gating-executor.d.ts +0 -73
  89. package/dist/pipeline/phase5-build/qe-gating-executor.d.ts.map +0 -1
  90. package/dist/pipeline/phase5-build/qe-gating-executor.js +0 -134
  91. package/dist/pipeline/phase5-build/qe-gating-executor.js.map +0 -1
  92. package/dist/synthesis/agent-fleet-decomposer.d.ts +0 -124
  93. package/dist/synthesis/agent-fleet-decomposer.d.ts.map +0 -1
  94. package/dist/synthesis/agent-fleet-decomposer.js +0 -696
  95. package/dist/synthesis/agent-fleet-decomposer.js.map +0 -1
@@ -353,11 +353,8 @@ export function generateSimulationArtifacts(input) {
353
353
  process.stderr.write('[adr-028] Enrichment pass threw unexpectedly; continuing with original results\n');
354
354
  }
355
355
  // ADR-PIPELINE-017: Consensus Validation Gate
356
- // Check if the consensus agent returned low agreement and surface warnings.
357
- // ADR-PIPELINE-103: pass the ruvector enterprise simulation result so the
358
- // validator can fall back to its success_probability when the consensus
359
- // agent itself didn't return an explicit agreement field.
360
- const consensusValidation = validateConsensusResults(platformResults, input.simulationResult);
356
+ // Check if the consensus agent returned low agreement and surface warnings
357
+ const consensusValidation = validateConsensusResults(platformResults);
361
358
  if (consensusValidation.hasConsensus && !consensusValidation.meetsThreshold) {
362
359
  process.stderr.write(`[pipeline-017] WARNING: Consensus agent returned ${consensusValidation.agreementLevel}% agreement ` +
363
360
  `(below ${consensusValidation.threshold}% threshold). ` +
@@ -429,24 +426,8 @@ export function generateSimulationArtifacts(input) {
429
426
  catch (err) {
430
427
  process.stderr.write(`[ADR-096-DIAG] failed to persist agent-responses.json: ${err.message}\n`);
431
428
  }
432
- // ADR-PIPELINE-044: Enrich simulation result before any renderer consumes it.
433
- // ADR-PIPELINE-103: also surface a [RUVECTOR-SIM] line so the user can tell
434
- // at a glance whether the enterprise simulation actually contributed data
435
- // to the run, vs. whether it returned empty/unparseable and we silently
436
- // proceeded with `{}` (which produces the impression "ruvector was skipped").
437
- const simEnvelope = extractSignalPayload(input.simulationResult);
438
- const simData = simEnvelope.data ?? {};
439
- const simDataKeys = Object.keys(simData);
440
- if (!input.simulationResult || simDataKeys.length === 0) {
441
- process.stderr.write('[RUVECTOR-SIM] WARNING: enterprise simulation result is empty — ' +
442
- 'downstream artifacts will rely on agent-fleet output only. ' +
443
- 'Check the [RUVECTOR] dispatch lines above for failure reasons.\n');
444
- }
445
- else {
446
- process.stderr.write(`[RUVECTOR-SIM] enterprise simulation contributed ${simDataKeys.length} top-level fields: ` +
447
- `${simDataKeys.slice(0, 8).join(', ')}${simDataKeys.length > 8 ? `, +${simDataKeys.length - 8} more` : ''}\n`);
448
- }
449
- const enrichedSimResult = enrichSimulationResult(simData, input.query);
429
+ // ADR-PIPELINE-044: Enrich simulation result before any renderer consumes it
430
+ const enrichedSimResult = enrichSimulationResult(extractSignalPayload(input.simulationResult).data ?? {}, input.query);
450
431
  // Wrap enriched data back into the signal format renderers expect
451
432
  const enrichedResult = { signal: { payload: { data: enrichedSimResult } } };
452
433
  // 2. scenario.json
@@ -847,33 +828,7 @@ function buildRuntimeLineage(agents_invoked) {
847
828
  // The pipeline is NOT blocked — low consensus is a quality signal, not a gate.
848
829
  // ============================================================================
849
830
  const DEFAULT_CONSENSUS_THRESHOLD = 60;
850
- /**
851
- * ADR-PIPELINE-103 — consolidated consensus extraction.
852
- *
853
- * Pre-103 this validator only knew three legacy field shapes
854
- * (`confidence_aggregation.overall_confidence`, `overall_confidence`,
855
- * `consensus_result.agreement_areas[]`) and looked at the raw response
856
- * object. Cloud Run agents wrap their payload in a `signal.payload.data`
857
- * envelope, so the validator never saw the actual fields and reported
858
- * "0% agreement" on every successful run. The companion `extractConsensusData`
859
- * in `consensus-tiers.ts` already knew about the envelope + the modern
860
- * field set; this function now mirrors that knowledge.
861
- *
862
- * Field precedence (first hit wins):
863
- * 1. data.agreement_level_pct (explicit number)
864
- * 2. data.agreementLevelPct (camelCase alias)
865
- * 3. data.confidence_aggregation.overall_confidence (legacy)
866
- * 4. data.overall_confidence (legacy)
867
- * 5. data.confidence (modern shorthand)
868
- * 6. data.overallConfidence (modern shorthand)
869
- * 7. agree/disagree count from `consensus_result.*_areas[]`
870
- * 8. caller's `simulationResult.success_probability` fallback
871
- *
872
- * Threshold can be overridden by AGENTICS_CONSENSUS_THRESHOLD; default 60.
873
- */
874
- export function validateConsensusResults(results,
875
- /** Optional ruvector enterprise simulation result for fallback agreement level. */
876
- simulationResult) {
831
+ export function validateConsensusResults(results) {
877
832
  const threshold = Number(process.env['AGENTICS_CONSENSUS_THRESHOLD']) || DEFAULT_CONSENSUS_THRESHOLD;
878
833
  // Find the consensus agent result
879
834
  const consensusResult = results.find(r => r.domain === 'analytics-hub' && r.agent === 'consensus' && r.status >= 200 && r.status < 300);
@@ -884,83 +839,48 @@ simulationResult) {
884
839
  if (!resp) {
885
840
  return { hasConsensus: false, meetsThreshold: true, agreementLevel: 0, threshold, disagreementAreas: [], dissenting: [] };
886
841
  }
887
- // ── ADR-PIPELINE-103: unwrap the cloud-function envelope ───────────
888
- // Cloud Run agents return { signal: { payload: { data: <actual> } } }.
889
- // Pre-103 we looked at the outer object and missed every real field.
890
- const signal = resp['signal'];
891
- const payloadOuter = signal ? signal['payload'] : undefined;
892
- const payloadData = payloadOuter ? payloadOuter['data'] : undefined;
893
- const data = payloadData ?? resp;
894
- // ── Agreement level: walk the precedence chain ────────────────────
895
- let agreementLevel = null;
896
- if (typeof data['agreement_level_pct'] === 'number') {
897
- agreementLevel = Math.round(data['agreement_level_pct']);
842
+ // Extract agreement level from consensus_result or confidence_aggregation
843
+ let agreementLevel = 0;
844
+ const confAgg = resp['confidence_aggregation'];
845
+ if (confAgg && typeof confAgg['overall_confidence'] === 'number') {
846
+ agreementLevel = Math.round(confAgg['overall_confidence'] * 100);
898
847
  }
899
- else if (typeof data['agreementLevelPct'] === 'number') {
900
- agreementLevel = Math.round(data['agreementLevelPct']);
848
+ else if (typeof resp['overall_confidence'] === 'number') {
849
+ agreementLevel = Math.round(resp['overall_confidence'] * 100);
901
850
  }
902
851
  else {
903
- const confAgg = data['confidence_aggregation'];
904
- if (confAgg && typeof confAgg['overall_confidence'] === 'number') {
905
- agreementLevel = Math.round(confAgg['overall_confidence'] * 100);
906
- }
907
- else if (typeof data['overall_confidence'] === 'number') {
908
- agreementLevel = Math.round(data['overall_confidence'] * 100);
909
- }
910
- else if (typeof data['confidence'] === 'number') {
911
- agreementLevel = Math.round(data['confidence'] * 100);
912
- }
913
- else if (typeof data['overallConfidence'] === 'number') {
914
- agreementLevel = Math.round(data['overallConfidence'] * 100);
915
- }
916
- else {
917
- // Compute from agreement/disagreement areas (legacy path).
918
- const consensusData = data['consensus_result'];
919
- if (consensusData) {
920
- const agreeCount = Array.isArray(consensusData['agreement_areas']) ? consensusData['agreement_areas'].length : 0;
921
- const disagreeCount = Array.isArray(consensusData['disagreement_areas']) ? consensusData['disagreement_areas'].length : 0;
922
- const total = agreeCount + disagreeCount;
923
- if (total > 0)
924
- agreementLevel = Math.round((agreeCount / total) * 100);
925
- }
852
+ // Try to compute from agreement/disagreement areas
853
+ const consensusData = resp['consensus_result'];
854
+ if (consensusData) {
855
+ const agreeCount = Array.isArray(consensusData['agreement_areas']) ? consensusData['agreement_areas'].length : 0;
856
+ const disagreeCount = Array.isArray(consensusData['disagreement_areas']) ? consensusData['disagreement_areas'].length : 0;
857
+ const total = agreeCount + disagreeCount;
858
+ agreementLevel = total > 0 ? Math.round((agreeCount / total) * 100) : 0;
926
859
  }
927
860
  }
928
- // ── Fallback: ruvector enterprise simulation success probability ──
929
- // When the consensus agent succeeded but returned no usable agreement
930
- // field (rare but observed on early-2026 deployments), fall back to
931
- // the enterprise simulation's success_probability if available.
932
- if (agreementLevel === null && simulationResult) {
933
- const sp = extractSimSuccessProbability(simulationResult);
934
- if (sp !== null) {
935
- agreementLevel = Math.round(sp * 100);
936
- }
937
- }
938
- if (agreementLevel === null)
939
- agreementLevel = 0;
940
- // ── Disagreement areas (from consensus_result OR top-level array) ─
861
+ // Extract disagreement areas
862
+ const consensusData = resp['consensus_result'];
941
863
  const disagreementAreas = [];
942
- const consensusData = data['consensus_result'];
943
- const disagreeSource = (consensusData && Array.isArray(consensusData['disagreement_areas']))
944
- ? consensusData['disagreement_areas']
945
- : (Array.isArray(data['disagreement_areas']) ? data['disagreement_areas'] : []);
946
- for (const area of disagreeSource) {
947
- if (typeof area === 'string')
948
- disagreementAreas.push(area);
949
- else if (area && typeof area === 'object') {
950
- const a = area;
951
- disagreementAreas.push(String(a['topic'] ?? a['area'] ?? a['description'] ?? JSON.stringify(a)));
864
+ if (consensusData && Array.isArray(consensusData['disagreement_areas'])) {
865
+ for (const area of consensusData['disagreement_areas']) {
866
+ if (typeof area === 'string')
867
+ disagreementAreas.push(area);
868
+ else if (area && typeof area === 'object') {
869
+ const a = area;
870
+ disagreementAreas.push(String(a['topic'] ?? a['area'] ?? a['description'] ?? JSON.stringify(a)));
871
+ }
952
872
  }
953
873
  }
954
- // ── Dissenting views ───────────────────────────────────────────────
874
+ // Extract dissenting views
955
875
  const dissenting = [];
956
- const dissentSource = Array.isArray(data['dissenting_views']) ? data['dissenting_views'] :
957
- Array.isArray(data['dissenting_agents']) ? data['dissenting_agents'] : [];
958
- for (const view of dissentSource) {
959
- if (typeof view === 'string')
960
- dissenting.push(view);
961
- else if (view && typeof view === 'object') {
962
- const v = view;
963
- dissenting.push(String(v['view'] ?? v['description'] ?? v['summary'] ?? v['domain'] ?? JSON.stringify(v)));
876
+ if (Array.isArray(resp['dissenting_views'])) {
877
+ for (const view of resp['dissenting_views']) {
878
+ if (typeof view === 'string')
879
+ dissenting.push(view);
880
+ else if (view && typeof view === 'object') {
881
+ const v = view;
882
+ dissenting.push(String(v['view'] ?? v['description'] ?? JSON.stringify(v)));
883
+ }
964
884
  }
965
885
  }
966
886
  return {
@@ -972,16 +892,6 @@ simulationResult) {
972
892
  dissenting,
973
893
  };
974
894
  }
975
- /** Pull `success_probability` (or `confidence`) out of the ruvector enterprise sim envelope. */
976
- function extractSimSuccessProbability(simulationResult) {
977
- if (!simulationResult || typeof simulationResult !== 'object')
978
- return null;
979
- const sig = simulationResult['signal'];
980
- const payload = sig?.['payload'];
981
- const data = (payload?.['data'] ?? simulationResult);
982
- const val = data['success_probability'] ?? data['confidence'];
983
- return typeof val === 'number' && val >= 0 && val <= 1 ? val : null;
984
- }
985
895
  // ============================================================================
986
896
  // Ruvector Full API Integration
987
897
  // ============================================================================
@@ -1 +1 @@
1
- {"version":3,"file":"simulation-artifact-generator.js","sourceRoot":"","sources":["../../src/synthesis/simulation-artifact-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simulation-artifact-generator.js","sourceRoot":"","sources":["../../src/synthesis/simulation-artifact-generator.ts"],"names":[],"mappings":"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"}
@@ -194,32 +194,9 @@
194
194
  "scope": "global",
195
195
  "tags": ["data-security", "anonymize", "access-control", "de-identify", "privacy", "data-protection"]
196
196
  },
197
- {
198
- "name": "quality_engineering",
199
- "description": "Comprehensive QE fleet — test generation (unit/integration/property/BDD), coverage analysis, defect intelligence, flaky detection, test design, chaos engineering, and root-cause analysis. Wraps AQE upstream via adapter repo.",
200
- "repos": ["agentic-qe"],
201
- "agents": [
202
- "Test Design Agent",
203
- "Unit Test Generation Agent",
204
- "Integration Test Generation Agent",
205
- "Property-Based Test Agent",
206
- "BDD Test Generation Agent",
207
- "Coverage Analysis Agent",
208
- "Coverage Gap Detection Agent",
209
- "Defect Prediction Agent",
210
- "Flaky Test Detection Agent",
211
- "QE Root Cause Analysis Agent",
212
- "Requirements Traceability Agent",
213
- "Chaos Engineering Agent",
214
- "Test Execution Orchestrator Agent",
215
- "QE Reporting Agent"
216
- ],
217
- "scope": "global",
218
- "tags": ["qe", "testing", "test-generation", "coverage", "defect-intelligence", "flaky-detection", "chaos", "rca", "traceability", "quality"]
219
- },
220
197
  {
221
198
  "name": "test_bench",
222
- "description": "Model and agent evaluation benchmarking — quality scoring, regression detection, hallucination/faithfulness measurement, prompt sensitivity, consistency, bias, stress, red-team, golden-dataset curation, and synthetic-data generation for benchmarks. Complement to quality_engineering per ADR-085: test_bench owns model-level evaluation; QE owns code-level testing.",
199
+ "description": "Model and agent evaluation benchmarking — quality scoring, regression detection, hallucination/faithfulness measurement, prompt sensitivity, consistency, bias, stress, red-team, golden-dataset curation, and synthetic-data generation for benchmarks.",
223
200
  "repos": ["test-bench"],
224
201
  "agents": [
225
202
  "Benchmark Agent",
@@ -312,13 +289,11 @@
312
289
  ],
313
290
  "optional_agents": [
314
291
  "Template Bootstrap Agent",
315
- "Version Compatibility Agent",
316
- "Test Design Agent",
317
- "Requirements Traceability Agent"
292
+ "Version Compatibility Agent"
318
293
  ],
319
294
  "execution": "ruflo_swarm",
320
295
  "depends_on": ["research"],
321
- "tags": ["sparc", "specification", "pseudocode", "architecture", "refinement", "completion", "testability", "traceability"]
296
+ "tags": ["sparc", "specification", "pseudocode", "architecture", "refinement", "completion"]
322
297
  },
323
298
  {
324
299
  "name": "sparc_handoff",
@@ -348,13 +323,11 @@
348
323
  "optional_agents": [
349
324
  "Architecture Decision Validator Agent",
350
325
  "Constraint Solver Agent",
351
- "Schema Validation Agent",
352
- "Defect Prediction Agent",
353
- "Test Design Agent"
326
+ "Schema Validation Agent"
354
327
  ],
355
328
  "execution": "ruflo_swarm",
356
329
  "depends_on": ["sparc_handoff"],
357
- "tags": ["adr", "ddd", "domain-model", "context-map", "architecture", "defect-prediction", "testability"]
330
+ "tags": ["adr", "ddd", "domain-model", "context-map", "architecture"]
358
331
  },
359
332
  {
360
333
  "name": "implementation_planning",
@@ -369,11 +342,10 @@
369
342
  ],
370
343
  "optional_agents": [
371
344
  "Meta-Reasoner Agent",
372
- "Strategic Recommendation Agent",
373
- "Coverage Gap Detection Agent"
345
+ "Strategic Recommendation Agent"
374
346
  ],
375
347
  "depends_on": ["adr_ddd_architecture"],
376
- "tags": ["implementation", "planning", "build-prompts", "coverage", "coverage-gap"]
348
+ "tags": ["implementation", "planning", "build-prompts"]
377
349
  },
378
350
  {
379
351
  "name": "build",
@@ -396,16 +368,11 @@
396
368
  "Tool Invocation Agent",
397
369
  "Execution Guard Agent",
398
370
  "Caching Strategy Agent",
399
- "Inference Routing Agent",
400
- "Unit Test Generation Agent",
401
- "Integration Test Generation Agent",
402
- "Property-Based Test Agent",
403
- "BDD Test Generation Agent",
404
- "Coverage Analysis Agent"
371
+ "Inference Routing Agent"
405
372
  ],
406
373
  "execution": "sequential_with_ruflo",
407
374
  "depends_on": ["implementation_planning"],
408
- "tags": ["build", "sdk", "api", "integration", "erp", "connector", "database", "auth", "sap", "s4hana", "hana", "oracle", "netsuite", "dynamics", "infor", "epicor", "sage", "ifs", "workday", "peoplesoft", "bapi", "odata", "rest", "webhook", "batch", "etl", "pipeline", "microservice", "service", "adapter", "middleware", "test-generation", "unit-test", "integration-test", "property-test", "bdd", "coverage"]
375
+ "tags": ["build", "sdk", "api", "integration", "erp", "connector", "database", "auth", "sap", "s4hana", "hana", "oracle", "netsuite", "dynamics", "infor", "epicor", "sage", "ifs", "workday", "peoplesoft", "bapi", "odata", "rest", "webhook", "batch", "etl", "pipeline", "microservice", "service", "adapter", "middleware"]
409
376
  },
410
377
  {
411
378
  "name": "validation",
@@ -417,21 +384,7 @@
417
384
  "Quality Scoring Agent",
418
385
  "Output Consistency Agent",
419
386
  "Hallucination Detection Agent",
420
- "Faithfulness Verification Agent",
421
- "Test Design Agent",
422
- "Unit Test Generation Agent",
423
- "Integration Test Generation Agent",
424
- "Property-Based Test Agent",
425
- "BDD Test Generation Agent",
426
- "Coverage Analysis Agent",
427
- "Coverage Gap Detection Agent",
428
- "Defect Prediction Agent",
429
- "Flaky Test Detection Agent",
430
- "QE Root Cause Analysis Agent",
431
- "Requirements Traceability Agent",
432
- "Chaos Engineering Agent",
433
- "Test Execution Orchestrator Agent",
434
- "QE Reporting Agent"
387
+ "Faithfulness Verification Agent"
435
388
  ],
436
389
  "optional_agents": [
437
390
  "Regression Detection Agent",
@@ -446,7 +399,7 @@
446
399
  "Benchmark Runner Agent"
447
400
  ],
448
401
  "depends_on": ["build"],
449
- "tags": ["validation", "quality", "hallucination", "faithfulness", "consistency", "qe", "testing", "test", "coverage", "defect", "flaky", "rca", "traceability", "chaos", "quality-engineering"]
402
+ "tags": ["validation", "quality", "hallucination", "faithfulness", "consistency"]
450
403
  },
451
404
  {
452
405
  "name": "integration_mapping",
@@ -464,12 +417,10 @@
464
417
  "optional_agents": [
465
418
  "Schema Validation Agent",
466
419
  "Config Validation Agent",
467
- "API Translation Agent",
468
- "Integration Test Generation Agent",
469
- "Chaos Engineering Agent"
420
+ "API Translation Agent"
470
421
  ],
471
422
  "depends_on": ["validation"],
472
- "tags": ["integration", "mapping", "connector", "webhook", "erp", "database", "auth", "sap", "oracle", "netsuite", "dynamics", "bigquery", "postgresql", "sql", "api", "odata", "bapi", "integration-test", "chaos", "fault-injection"]
423
+ "tags": ["integration", "mapping", "connector", "webhook", "erp", "database", "auth", "sap", "oracle", "netsuite", "dynamics", "bigquery", "postgresql", "sql", "api", "odata", "bapi"]
473
424
  },
474
425
  {
475
426
  "name": "governance_finops",
@@ -489,11 +440,10 @@
489
440
  "Constraint Solver Agent",
490
441
  "Usage Oversight Agent",
491
442
  "Change Impact Agent",
492
- "Governance Audit Agent",
493
- "QE Reporting Agent"
443
+ "Governance Audit Agent"
494
444
  ],
495
445
  "depends_on": ["integration_mapping"],
496
- "tags": ["governance", "finops", "policy", "cost", "roi", "compliance", "regulatory", "csrd", "esg", "sox", "gdpr", "hipaa", "audit", "disclosure", "reporting", "sustainability", "carbon", "emissions", "budget", "forecast", "qe-reporting", "test-metrics"]
446
+ "tags": ["governance", "finops", "policy", "cost", "roi", "compliance", "regulatory", "csrd", "esg", "sox", "gdpr", "hipaa", "audit", "disclosure", "reporting", "sustainability", "carbon", "emissions", "budget", "forecast"]
497
447
  },
498
448
  {
499
449
  "name": "decision_packaging",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@llm-dev-ops/agentics-cli",
3
- "version": "2.7.36",
3
+ "version": "2.7.38",
4
4
  "description": "Agentics CLI - Pure orchestration layer for agentics platform services",
5
5
  "type": "module",
6
6
  "main": "./dist/cli/index.js",