@cleocode/core 2026.9.3 → 2026.9.4

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 (41) hide show
  1. package/dist/dispatch/suggested-next.d.ts.map +1 -1
  2. package/dist/dispatch/suggested-next.js +7 -1
  3. package/dist/dispatch/suggested-next.js.map +1 -1
  4. package/dist/docs/export-document.js +84 -0
  5. package/dist/docs/export-document.js.map +2 -2
  6. package/dist/hygiene/validate-spawn-readiness.d.ts +88 -4
  7. package/dist/hygiene/validate-spawn-readiness.d.ts.map +1 -1
  8. package/dist/hygiene/validate-spawn-readiness.js +138 -16
  9. package/dist/hygiene/validate-spawn-readiness.js.map +1 -1
  10. package/dist/injection.d.ts.map +1 -1
  11. package/dist/injection.js +10 -2
  12. package/dist/injection.js.map +1 -1
  13. package/dist/internal.d.ts +1 -1
  14. package/dist/internal.d.ts.map +1 -1
  15. package/dist/internal.js +1 -1
  16. package/dist/internal.js.map +1 -1
  17. package/dist/llm/plugin-facade.js +84 -0
  18. package/dist/llm/plugin-facade.js.map +2 -2
  19. package/dist/release/open.d.ts +11 -18
  20. package/dist/release/open.d.ts.map +1 -1
  21. package/dist/release/open.js +135 -7
  22. package/dist/release/open.js.map +1 -1
  23. package/dist/selfimprove/fix-gen.js +84 -0
  24. package/dist/selfimprove/fix-gen.js.map +2 -2
  25. package/dist/setup/sections/brain.d.ts +1 -1
  26. package/dist/setup/sections/brain.js +1 -1
  27. package/dist/system/bridge-mode.d.ts +1 -1
  28. package/dist/system/bridge-mode.js +1 -1
  29. package/dist/tasks/index.d.ts +1 -1
  30. package/dist/tasks/index.d.ts.map +1 -1
  31. package/dist/tasks/index.js +1 -1
  32. package/dist/tasks/index.js.map +1 -1
  33. package/dist/tasks/tool-cache.d.ts +134 -9
  34. package/dist/tasks/tool-cache.d.ts.map +1 -1
  35. package/dist/tasks/tool-cache.js +188 -68
  36. package/dist/tasks/tool-cache.js.map +1 -1
  37. package/package.json +13 -13
  38. package/templates/CLEO-INJECTION.md +6 -6
  39. package/templates/workflows/release-prepare.yml.tmpl +67 -2
  40. package/templates/workflows/release-publish.yml.tmpl +1 -1
  41. package/templates/workflows/release-rollback.yml.tmpl +18 -2
@@ -1 +1 @@
1
- {"version":3,"file":"suggested-next.d.ts","sourceRoot":"","sources":["../../src/dispatch/suggested-next.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAqClD;;;;;;;;;GASG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,KAAK,MAAM,EAAE,CAAC;AAEhG;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,IAAI,EAAE,OAAO,GACZ,MAAM,EAAE,CAIV;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,KAAK,EAAE,OAAO,GACb,MAAM,EAAE,CAIV;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,IAAI,EAAE,OAAO,GACZ,MAAM,EAAE,CAIV;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,KAAK,EAAE,OAAO,GACb,MAAM,EAAE,CAEV;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,IAAI,EAAE,OAAO,GACZ,MAAM,EAAE,CAKV;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,6BAA6B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAMxF,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EACnC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,EACxB,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,GACjC,WAAW,CAAC,CAAC,CAAC,CAQhB"}
1
+ {"version":3,"file":"suggested-next.d.ts","sourceRoot":"","sources":["../../src/dispatch/suggested-next.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAqClD;;;;;;;;;GASG;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,KAAK,MAAM,EAAE,CAAC;AAEhG;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,IAAI,EAAE,OAAO,GACZ,MAAM,EAAE,CAIV;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,KAAK,EAAE,OAAO,GACb,MAAM,EAAE,CAUV;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,IAAI,EAAE,OAAO,GACZ,MAAM,EAAE,CAIV;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,KAAK,EAAE,OAAO,GACb,MAAM,EAAE,CAEV;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,IAAI,EAAE,OAAO,GACZ,MAAM,EAAE,CAKV;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,6BAA6B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAMxF,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EACnC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,EACxB,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,GACjC,WAAW,CAAC,CAAC,CAAC,CAQhB"}
@@ -65,7 +65,13 @@ export function buildTasksAddBatchSuggestedNext(params, _data) {
65
65
  const parentId = params.defaultParent;
66
66
  if (typeof parentId !== 'string' || parentId.length === 0)
67
67
  return [];
68
- return [`cleo list --parent ${parentId}`, `cleo orchestrate ready --epic ${parentId}`];
68
+ // gh#1373: `--epic` is not a flag on `orchestrate ready` — the command takes
69
+ // EPICID as a POSITIONAL (`USAGE orchestrate ready [OPTIONS] <EPICID>`). mri
70
+ // defaults an undeclared flag to boolean, so `--epic T9` set a no-op `true`
71
+ // and `T9` fell through to the positional: the suggestion worked by accident.
72
+ // CLEO emitting its own unrunnable-by-design advice is worse than a stale
73
+ // doc, because an agent reads a `suggestedNext` as authoritative.
74
+ return [`cleo list --parent ${parentId}`, `cleo orchestrate ready ${parentId}`];
69
75
  }
70
76
  /**
71
77
  * Build a `suggestedNext` array for the `tasks.update` operation.
@@ -1 +1 @@
1
- {"version":3,"file":"suggested-next.js","sourceRoot":"","sources":["../../src/dispatch/suggested-next.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAmDH;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,0BAA0B,CACxC,OAAgC,EAChC,IAAa;IAEb,MAAM,EAAE,GAAI,IAAwC,EAAE,IAAI,EAAE,EAAE,CAAC;IAC/D,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACzD,OAAO,CAAC,aAAa,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,+BAA+B,CAC7C,MAA+B,EAC/B,KAAc;IAEd,MAAM,QAAQ,GAAI,MAAmC,CAAC,aAAa,CAAC;IACpE,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrE,OAAO,CAAC,sBAAsB,QAAQ,EAAE,EAAE,iCAAiC,QAAQ,EAAE,CAAC,CAAC;AACzF,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,6BAA6B,CAC3C,OAAgC,EAChC,IAAa;IAEb,MAAM,EAAE,GAAI,IAAyC,EAAE,IAAI,EAAE,EAAE,CAAC;IAChE,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACzD,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,+BAA+B,CAC7C,OAAgC,EAChC,KAAc;IAEd,OAAO,CAAC,WAAW,EAAE,yCAAyC,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,2BAA2B,CACzC,OAAgC,EAChC,IAAa;IAEb,MAAM,KAAK,GAAI,IAAyC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IACvE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,CAAC;IACrB,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACzD,OAAO,CAAC,aAAa,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAmD;IAC3F,GAAG,EAAE,0BAA0B;IAC/B,WAAW,EAAE,+BAA+B;IAC5C,MAAM,EAAE,6BAA6B;IACrC,QAAQ,EAAE,+BAA+B;IACzC,IAAI,EAAE,2BAA2B;CAClC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,mBAAmB,CACjC,QAAwB,EACxB,WAAkC;IAElC,OAAO;QACL,GAAG,QAAQ;QACX,IAAI,EAAE;YACJ,GAAG,QAAQ,CAAC,IAAI;YAChB,aAAa,EAAE,CAAC,GAAG,WAAW,CAAC;SAChC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"suggested-next.js","sourceRoot":"","sources":["../../src/dispatch/suggested-next.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAmDH;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,0BAA0B,CACxC,OAAgC,EAChC,IAAa;IAEb,MAAM,EAAE,GAAI,IAAwC,EAAE,IAAI,EAAE,EAAE,CAAC;IAC/D,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACzD,OAAO,CAAC,aAAa,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,+BAA+B,CAC7C,MAA+B,EAC/B,KAAc;IAEd,MAAM,QAAQ,GAAI,MAAmC,CAAC,aAAa,CAAC;IACpE,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrE,6EAA6E;IAC7E,6EAA6E;IAC7E,4EAA4E;IAC5E,8EAA8E;IAC9E,0EAA0E;IAC1E,kEAAkE;IAClE,OAAO,CAAC,sBAAsB,QAAQ,EAAE,EAAE,0BAA0B,QAAQ,EAAE,CAAC,CAAC;AAClF,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,6BAA6B,CAC3C,OAAgC,EAChC,IAAa;IAEb,MAAM,EAAE,GAAI,IAAyC,EAAE,IAAI,EAAE,EAAE,CAAC;IAChE,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACzD,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,+BAA+B,CAC7C,OAAgC,EAChC,KAAc;IAEd,OAAO,CAAC,WAAW,EAAE,yCAAyC,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,2BAA2B,CACzC,OAAgC,EAChC,IAAa;IAEb,MAAM,KAAK,GAAI,IAAyC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IACvE,MAAM,EAAE,GAAG,KAAK,EAAE,EAAE,CAAC;IACrB,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACzD,OAAO,CAAC,aAAa,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAmD;IAC3F,GAAG,EAAE,0BAA0B;IAC/B,WAAW,EAAE,+BAA+B;IAC5C,MAAM,EAAE,6BAA6B;IACrC,QAAQ,EAAE,+BAA+B;IACzC,IAAI,EAAE,2BAA2B;CAClC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,mBAAmB,CACjC,QAAwB,EACxB,WAAkC;IAElC,OAAO;QACL,GAAG,QAAQ;QACX,IAAI,EAAE;YACJ,GAAG,QAAQ,CAAC,IAAI;YAChB,aAAa,EAAE,CAAC,GAAG,WAAW,CAAC;SAChC;KACF,CAAC;AACJ,CAAC"}
@@ -1024,6 +1024,83 @@ var init_docs = __esm({
1024
1024
  }
1025
1025
  });
1026
1026
 
1027
+ // packages/contracts/src/operations/check.ts
1028
+ var VERIFICATION_SCHEMA, GATE_RESULT_SCHEMA, GATE_FIELD_POINTERS, checkGateSetOutputContract, checkGateStatusOutputContract;
1029
+ var init_check = __esm({
1030
+ "packages/contracts/src/operations/check.ts"() {
1031
+ "use strict";
1032
+ VERIFICATION_SCHEMA = {
1033
+ type: "object",
1034
+ additionalProperties: true,
1035
+ properties: {
1036
+ passed: { type: "boolean", description: "True when every required gate is set." },
1037
+ round: { type: "number", description: "IVTR round counter." },
1038
+ gates: {
1039
+ type: "object",
1040
+ additionalProperties: { type: "boolean" },
1041
+ description: "Gate name \u2192 whether it is recorded as passed."
1042
+ },
1043
+ evidence: {
1044
+ type: "object",
1045
+ additionalProperties: true,
1046
+ description: "Gate name \u2192 the evidence atom kinds validated for it."
1047
+ }
1048
+ }
1049
+ };
1050
+ GATE_RESULT_SCHEMA = {
1051
+ type: "object",
1052
+ required: ["taskId", "verification", "verificationStatus", "passed"],
1053
+ additionalProperties: true,
1054
+ properties: {
1055
+ taskId: { type: "string", description: "The task the gates belong to." },
1056
+ title: { type: "string", description: "Task title, for operator display." },
1057
+ status: { type: "string", description: "Task lifecycle status." },
1058
+ type: { type: "string", description: "Task type (epic | task | subtask)." },
1059
+ verification: VERIFICATION_SCHEMA,
1060
+ verificationStatus: {
1061
+ type: "string",
1062
+ enum: ["passed", "pending"],
1063
+ description: "Whether every required gate is now recorded."
1064
+ },
1065
+ passed: { type: "boolean", description: "Mirror of verification.passed." },
1066
+ round: { type: "number", description: "IVTR round counter." },
1067
+ requiredGates: {
1068
+ type: "array",
1069
+ items: { type: "string" },
1070
+ description: "Gates this project requires before complete."
1071
+ },
1072
+ missingGates: {
1073
+ type: "array",
1074
+ items: { type: "string" },
1075
+ description: "Required gates not yet recorded \u2014 empty means ready to complete."
1076
+ }
1077
+ }
1078
+ };
1079
+ GATE_FIELD_POINTERS = [
1080
+ "/data/taskId",
1081
+ "/data/verification",
1082
+ "/data/verification/passed",
1083
+ "/data/verification/gates",
1084
+ "/data/verificationStatus",
1085
+ "/data/passed",
1086
+ "/data/missingGates",
1087
+ "/data/requiredGates"
1088
+ ];
1089
+ checkGateSetOutputContract = {
1090
+ operation: "check.gate.set",
1091
+ shapeNote: "FLAT record, not the nested read shape. The verification object is at /data/verification \u2014 NEVER /data/task/verification, which is how `cleo show` nests a task and does not exist here. The response is self-confirming: it returns the full verification after the write, so there is no need to re-read.",
1092
+ dataSchema: { ...GATE_RESULT_SCHEMA },
1093
+ fieldPointers: [...GATE_FIELD_POINTERS]
1094
+ };
1095
+ checkGateStatusOutputContract = {
1096
+ operation: "check.gate.status",
1097
+ shapeNote: "FLAT record identical in shape to check.gate.set. Read-only: reports which gates are recorded and which are still missing. /data/missingGates being empty is the precondition for `cleo complete`.",
1098
+ dataSchema: { ...GATE_RESULT_SCHEMA },
1099
+ fieldPointers: [...GATE_FIELD_POINTERS]
1100
+ };
1101
+ }
1102
+ });
1103
+
1027
1104
  // packages/contracts/src/operations/entities.ts
1028
1105
  var ACCOUNT_VIEW_SCHEMA, accountAddOutputContract, accountListOutputContract, accountRemoveOutputContract, PROVIDER_VIEW_SCHEMA, providerListOutputContract, providerShowOutputContract, providerConnectOutputContract, MODEL_VIEW_SCHEMA, modelQueryOutputContract, modelShowOutputContract, profileCreateOutputContract, profileListOutputContract, profilePinOutputContract, profileUseOutputContract;
1029
1106
  var init_entities = __esm({
@@ -1471,6 +1548,7 @@ var tasksShowOutputContract, tasksListOutputContract, tasksFindOutputContract, T
1471
1548
  var init_output_contracts_data = __esm({
1472
1549
  "packages/contracts/src/operations/output-contracts-data.ts"() {
1473
1550
  "use strict";
1551
+ init_check();
1474
1552
  init_entities();
1475
1553
  init_service();
1476
1554
  tasksShowOutputContract = {
@@ -1822,6 +1900,11 @@ var init_output_contracts_data = __esm({
1822
1900
  fieldPointers: ["/data/key", "/data/scope", "/data/removed"]
1823
1901
  };
1824
1902
  OUTPUT_CONTRACTS = {
1903
+ // gate verification (T12192 · gh#1420 · gh#1423) — `cleo verify`, the op
1904
+ // every agent is told to run before every `cleo complete`, previously fell
1905
+ // through to the generic contract with an EMPTY pointer list.
1906
+ "check.gate.set": checkGateSetOutputContract,
1907
+ "check.gate.status": checkGateStatusOutputContract,
1825
1908
  "tasks.show": tasksShowOutputContract,
1826
1909
  "tasks.list": tasksListOutputContract,
1827
1910
  "tasks.find": tasksFindOutputContract,
@@ -13691,6 +13774,7 @@ var init_operations = __esm({
13691
13774
  init_agent_operation_contract();
13692
13775
  init_attention();
13693
13776
  init_brain();
13777
+ init_check();
13694
13778
  init_conduit();
13695
13779
  init_dialectic();
13696
13780
  init_docs();