agentxchain 2.155.4 → 2.155.5

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentxchain",
3
- "version": "2.155.4",
3
+ "version": "2.155.5",
4
4
  "description": "CLI for AgentXchain — governed multi-agent software delivery",
5
5
  "type": "module",
6
6
  "bin": {
@@ -562,7 +562,7 @@ function normalizeIdleExpansionSidecar(sidecar, context) {
562
562
  };
563
563
  }
564
564
 
565
- return result;
565
+ return normalizeIdleExpansionMutualExclusionSentinel(result).value;
566
566
  }
567
567
 
568
568
  function normalizeVisionTraceabilityForTurnResult(traceability) {
@@ -1020,6 +1020,14 @@ export function normalizeTurnResult(tr, config, context = {}) {
1020
1020
  normalized.artifacts_created = coerced;
1021
1021
  }
1022
1022
 
1023
+ const idleExpansionCleanup = normalizeIdleExpansionMutualExclusionSentinel(
1024
+ normalized.idle_expansion_result,
1025
+ );
1026
+ if (idleExpansionCleanup.changed) {
1027
+ normalized.idle_expansion_result = idleExpansionCleanup.value;
1028
+ corrections.push(idleExpansionCleanup.correction);
1029
+ }
1030
+
1023
1031
  // ── Rule 2: exit-gate-as-phase auto-correction ────────────────────────
1024
1032
  const gates = config?.gates;
1025
1033
  if (
@@ -1173,6 +1181,28 @@ export function normalizeTurnResult(tr, config, context = {}) {
1173
1181
  return { normalized, corrections };
1174
1182
  }
1175
1183
 
1184
+ function normalizeIdleExpansionMutualExclusionSentinel(result) {
1185
+ if (!result || typeof result !== 'object' || Array.isArray(result)) {
1186
+ return { changed: false, value: result, correction: '' };
1187
+ }
1188
+
1189
+ if (
1190
+ result.kind === 'new_intake_intent'
1191
+ && ('vision_exhausted' in result)
1192
+ && (result.vision_exhausted === false || result.vision_exhausted === null)
1193
+ ) {
1194
+ const normalized = { ...result };
1195
+ delete normalized.vision_exhausted;
1196
+ return {
1197
+ changed: true,
1198
+ value: normalized,
1199
+ correction: 'idle_expansion_result.vision_exhausted: removed false sentinel for new_intake_intent',
1200
+ };
1201
+ }
1202
+
1203
+ return { changed: false, value: result, correction: '' };
1204
+ }
1205
+
1176
1206
  // ── Helpers ──────────────────────────────────────────────────────────────────
1177
1207
 
1178
1208
  function result(stage, errorClass, errors, warnings = []) {