@united-workforce/cli 0.1.0 → 0.2.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.
Files changed (71) hide show
  1. package/dist/__tests__/adapter-json-roundtrip.test.js +4 -1
  2. package/dist/__tests__/adapter-json-roundtrip.test.js.map +1 -1
  3. package/dist/__tests__/current-role.test.js +15 -3
  4. package/dist/__tests__/current-role.test.js.map +1 -1
  5. package/dist/__tests__/moderator-evaluate.test.js +20 -4
  6. package/dist/__tests__/moderator-evaluate.test.js.map +1 -1
  7. package/dist/__tests__/prompt.test.js +20 -42
  8. package/dist/__tests__/prompt.test.js.map +1 -1
  9. package/dist/__tests__/step-timing.test.js +8 -2
  10. package/dist/__tests__/step-timing.test.js.map +1 -1
  11. package/dist/__tests__/thread-location.test.js +15 -3
  12. package/dist/__tests__/thread-location.test.js.map +1 -1
  13. package/dist/__tests__/thread-resume.test.js +21 -6
  14. package/dist/__tests__/thread-resume.test.js.map +1 -1
  15. package/dist/__tests__/thread-show-status.test.js +10 -2
  16. package/dist/__tests__/thread-show-status.test.js.map +1 -1
  17. package/dist/__tests__/thread-start-cwd-cli.test.js +5 -1
  18. package/dist/__tests__/thread-start-cwd-cli.test.js.map +1 -1
  19. package/dist/__tests__/thread-suspend-step.test.js +4 -1
  20. package/dist/__tests__/thread-suspend-step.test.js.map +1 -1
  21. package/dist/__tests__/thread-suspended-display.test.js +12 -3
  22. package/dist/__tests__/thread-suspended-display.test.js.map +1 -1
  23. package/dist/__tests__/validate-semantic.test.js +29 -12
  24. package/dist/__tests__/validate-semantic.test.js.map +1 -1
  25. package/dist/__tests__/workflow-resolution.test.js +4 -1
  26. package/dist/__tests__/workflow-resolution.test.js.map +1 -1
  27. package/dist/cli.js +5 -17
  28. package/dist/cli.js.map +1 -1
  29. package/dist/commands/prompt.d.ts +3 -4
  30. package/dist/commands/prompt.d.ts.map +1 -1
  31. package/dist/commands/prompt.js +22 -39
  32. package/dist/commands/prompt.js.map +1 -1
  33. package/dist/commands/thread.d.ts.map +1 -1
  34. package/dist/commands/thread.js +9 -7
  35. package/dist/commands/thread.js.map +1 -1
  36. package/dist/moderator/__tests__/evaluate.test.js +12 -12
  37. package/dist/moderator/__tests__/evaluate.test.js.map +1 -1
  38. package/dist/moderator/evaluate.d.ts.map +1 -1
  39. package/dist/moderator/evaluate.js +1 -7
  40. package/dist/moderator/evaluate.js.map +1 -1
  41. package/dist/validate-semantic.d.ts.map +1 -1
  42. package/dist/validate-semantic.js +4 -12
  43. package/dist/validate-semantic.js.map +1 -1
  44. package/dist/validate.js +3 -3
  45. package/dist/validate.js.map +1 -1
  46. package/package.json +3 -3
  47. package/src/__tests__/adapter-json-roundtrip.test.ts +4 -1
  48. package/src/__tests__/current-role.test.ts +15 -3
  49. package/src/__tests__/fixtures/e2e-count.workflow.yaml +2 -1
  50. package/src/__tests__/fixtures/e2e-linear.workflow.yaml +2 -1
  51. package/src/__tests__/fixtures/e2e-loop.workflow.yaml +2 -1
  52. package/src/__tests__/fixtures/e2e-mustache.workflow.yaml +2 -1
  53. package/src/__tests__/fixtures/e2e-suspend.workflow.yaml +2 -1
  54. package/src/__tests__/moderator-evaluate.test.ts +21 -4
  55. package/src/__tests__/prompt.test.ts +19 -46
  56. package/src/__tests__/step-timing.test.ts +8 -2
  57. package/src/__tests__/thread-location.test.ts +15 -3
  58. package/src/__tests__/thread-resume.test.ts +21 -6
  59. package/src/__tests__/thread-show-status.test.ts +10 -2
  60. package/src/__tests__/thread-start-cwd-cli.test.ts +5 -1
  61. package/src/__tests__/thread-suspend-step.test.ts +4 -1
  62. package/src/__tests__/thread-suspended-display.test.ts +12 -3
  63. package/src/__tests__/validate-semantic.test.ts +36 -16
  64. package/src/__tests__/workflow-resolution.test.ts +4 -1
  65. package/src/cli.ts +4 -20
  66. package/src/commands/prompt.ts +22 -41
  67. package/src/commands/thread.ts +9 -8
  68. package/src/moderator/__tests__/evaluate.test.ts +12 -12
  69. package/src/moderator/evaluate.ts +1 -6
  70. package/src/validate-semantic.ts +4 -13
  71. package/src/validate.ts +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate.test.js","sourceRoot":"","sources":["../../../src/moderator/__tests__/evaluate.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evaluate.test.js","sourceRoot":"","sources":["../../../src/moderator/__tests__/evaluate.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate.d.ts","sourceRoot":"","sources":["../../src/moderator/evaluate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAGzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAUzD,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAI1C,wBAAgB,QAAQ,CACtB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAC7C,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,UAAU,GACrB,MAAM,CAAC,cAAc,EAAE,KAAK,CAAC,CA0D/B"}
1
+ {"version":3,"file":"evaluate.d.ts","sourceRoot":"","sources":["../../src/moderator/evaluate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAGzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAOzD,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAI1C,wBAAgB,QAAQ,CACtB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAC7C,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,UAAU,GACrB,MAAM,CAAC,cAAc,EAAE,KAAK,CAAC,CAwD/B"}
@@ -1,17 +1,11 @@
1
1
  import mustache from "mustache";
2
2
  // Disable HTML escaping — prompts are plain text, not HTML.
3
3
  mustache.escape = (text) => text;
4
- const START_ROLE = "$START";
5
4
  const SUSPEND_ROLE = "$SUSPEND";
6
- // $START is a special entry node with no agent output — it always uses this key.
7
- const START_STATUS = "_";
8
5
  const STATUS_KEY = "$status";
9
6
  export function evaluate(graph, lastRole, lastOutput) {
10
7
  let status;
11
- if (lastRole === START_ROLE) {
12
- status = START_STATUS;
13
- }
14
- else if (typeof lastOutput[STATUS_KEY] === "string") {
8
+ if (typeof lastOutput[STATUS_KEY] === "string") {
15
9
  status = lastOutput[STATUS_KEY];
16
10
  }
17
11
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../src/moderator/evaluate.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAIhC,4DAA4D;AAC5D,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC;AAEzC,MAAM,UAAU,GAAG,QAAQ,CAAC;AAC5B,MAAM,YAAY,GAAG,UAAU,CAAC;AAChC,iFAAiF;AACjF,MAAM,YAAY,GAAG,GAAG,CAAC;AAIzB,MAAM,UAAU,GAAG,SAAS,CAAC;AAE7B,MAAM,UAAU,QAAQ,CACtB,KAA6C,EAC7C,QAAgB,EAChB,UAAsB;IAEtB,IAAI,MAAc,CAAC;IACnB,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;QAC5B,MAAM,GAAG,YAAY,CAAC;IACxB,CAAC;SAAM,IAAI,OAAO,UAAU,CAAC,UAAU,CAAC,KAAK,QAAQ,EAAE,CAAC;QACtD,MAAM,GAAG,UAAU,CAAC,UAAU,CAAW,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,IAAI,KAAK,CAAC,0BAA0B,QAAQ,wCAAwC,CAAC;SAC7F,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,IAAI,KAAK,CAAC,oCAAoC,QAAQ,GAAG,CAAC;SAClE,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,IAAI,KAAK,CAAC,2BAA2B,QAAQ,kBAAkB,MAAM,GAAG,CAAC;SACjF,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACzB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,IAAI,KAAK,CACd,kDAAkD,MAAM,CAAC,IAAI,iBAAiB,MAAM,CAAC,MAAM,6DAA6D,CACzJ;aACF,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACjC,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,KAAK,EAAE;oBACL,MAAM,EAAE,SAAS;oBACjB,aAAa,EAAE,QAAQ;oBACvB,MAAM;iBACP;aACF,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAChG,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC;IACtE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SACjE,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"evaluate.js","sourceRoot":"","sources":["../../src/moderator/evaluate.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAIhC,4DAA4D;AAC5D,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC;AAEzC,MAAM,YAAY,GAAG,UAAU,CAAC;AAIhC,MAAM,UAAU,GAAG,SAAS,CAAC;AAE7B,MAAM,UAAU,QAAQ,CACtB,KAA6C,EAC7C,QAAgB,EAChB,UAAsB;IAEtB,IAAI,MAAc,CAAC;IACnB,IAAI,OAAO,UAAU,CAAC,UAAU,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC/C,MAAM,GAAG,UAAU,CAAC,UAAU,CAAW,CAAC;IAC5C,CAAC;SAAM,CAAC;QACN,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,IAAI,KAAK,CAAC,0BAA0B,QAAQ,wCAAwC,CAAC;SAC7F,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,IAAI,KAAK,CAAC,oCAAoC,QAAQ,GAAG,CAAC;SAClE,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,IAAI,KAAK,CAAC,2BAA2B,QAAQ,kBAAkB,MAAM,GAAG,CAAC;SACjF,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACzB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,IAAI,KAAK,CACd,kDAAkD,MAAM,CAAC,IAAI,iBAAiB,MAAM,CAAC,MAAM,6DAA6D,CACzJ;aACF,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACjC,OAAO;gBACL,EAAE,EAAE,IAAI;gBACR,KAAK,EAAE;oBACL,MAAM,EAAE,SAAS;oBACjB,aAAa,EAAE,QAAQ;oBACvB,MAAM;iBACP;aACF,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAChG,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC;IACtE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SACjE,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate-semantic.d.ts","sourceRoot":"","sources":["../src/validate-semantic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAqSlE;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,EAAE,CAMnE"}
1
+ {"version":3,"file":"validate-semantic.d.ts","sourceRoot":"","sources":["../src/validate-semantic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AA4RlE;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,EAAE,CAMnE"}
@@ -89,9 +89,9 @@ function checkGraphStructure(payload, errors) {
89
89
  errors.push("$START must be defined in graph");
90
90
  }
91
91
  else {
92
- const startKeys = Object.keys(payload.graph.$START);
93
- if (startKeys.length !== 1 || startKeys[0] !== "_") {
94
- errors.push('$START must have exactly one edge with status "_"');
92
+ const startKeys = new Set(Object.keys(payload.graph.$START));
93
+ if (!startKeys.has("new") || !startKeys.has("resume")) {
94
+ errors.push('$START must have edges with statuses "new" and "resume"');
95
95
  }
96
96
  }
97
97
  if (graphNodes.has("$END")) {
@@ -168,16 +168,8 @@ function checkOneOfDiscriminant(roleName, variants, statuses, errors) {
168
168
  errors.push(`role "${roleName}": oneOf variant $status must be a const value`);
169
169
  }
170
170
  }
171
- /** Check status-edge consistency for a user role. "_" is reserved for $START and rejected here. */
171
+ /** Check status-edge consistency for a user role. */
172
172
  function checkStatusEdges(roleName, graphKeys, statusSet, errors) {
173
- if (graphKeys.has("_")) {
174
- errors.push(`role "${roleName}" must use explicit $status keys in graph, not "_"`);
175
- return;
176
- }
177
- if (statusSet.has("_")) {
178
- errors.push(`role "${roleName}" $status enum must use explicit values, not "_"`);
179
- return;
180
- }
181
173
  const extraKeys = [...graphKeys].filter((k) => !statusSet.has(k));
182
174
  const missingKeys = [...statusSet].filter((k) => !graphKeys.has(k));
183
175
  if (extraKeys.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"validate-semantic.js","sourceRoot":"","sources":["../src/validate-semantic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate-semantic.js","sourceRoot":"","sources":["../src/validate-semantic.ts"],"names":[],"mappings":"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"}
package/dist/validate.js CHANGED
@@ -42,13 +42,13 @@ function isGraph(value) {
42
42
  if (!isRecord(value)) {
43
43
  return false;
44
44
  }
45
- return Object.entries(value).every(([node, statusMap]) => {
45
+ return Object.values(value).every((statusMap) => {
46
46
  if (!isRecord(statusMap)) {
47
47
  return false;
48
48
  }
49
49
  return Object.entries(statusMap).every(([status, target]) => {
50
- // "_" is only valid as a status key for the $START entry node.
51
- if (status === "_" && node !== "$START") {
50
+ // "_" is no longer a valid status key anywhere $START uses "new"/"resume".
51
+ if (status === "_") {
52
52
  return false;
53
53
  }
54
54
  return isTarget(target);
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAG9C,MAAM,eAAe,GAAG,0BAA0B,CAAC;AAEnD,MAAM,UAAU,QAAQ,CAAC,KAAa;IACpC,OAAO,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;IACtC,MAAM,aAAa,GACjB,QAAQ,CAAC,WAAW,CAAC;QACrB,CAAC,OAAO,WAAW,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7E,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;IACxC,MAAM,cAAc,GAClB,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;IAClF,OAAO,CACL,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;QACrC,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;QAC9B,cAAc;QACd,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;QACnC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;QAChC,aAAa,CACd,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,gBAAgB,GACpB,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC;IAChG,OAAO,CACL,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;QAC9B,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;QAChC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE;QAC1B,gBAAgB,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,KAAc,EAAE,SAAqC;IAC3E,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,OAAO,CAAC,KAAc;IAC7B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE;QACvD,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE;YAC1D,+DAA+D;YAC/D,IAAI,MAAM,KAAK,GAAG,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACxC,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAgB;IACnD,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QACjC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACnB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACnB,CAAC,CAAC,IAAI,CAAC;IACX,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,OAAO,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gCAAgC,CAC9C,QAAgB,EAChB,OAAwB;IAExB,MAAM,QAAQ,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IAChD,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,iCAAiC,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,QAAQ,6BAA6B,OAAO,CAAC,IAAI,GAAG,CAAC;IACpI,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,6FAA6F;AAC7F,0GAA0G;AAC1G,MAAM,UAAU,oBAAoB,CAAC,GAAY;IAC/C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;QACxE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6CAA6C;IAC7C,MAAM,UAAU,GAAG,EAAE,GAAG,GAAG,EAAqB,CAAC;IACjD,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACrD,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC5C,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;gBACjC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;wBAClC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;oBACzB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@united-workforce/cli",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "files": [
5
5
  "src",
6
6
  "dist",
@@ -17,9 +17,9 @@
17
17
  "dotenv": "^16.6.1",
18
18
  "mustache": "^4.2.0",
19
19
  "yaml": "^2.8.4",
20
- "@united-workforce/util-agent": "^0.1.0",
21
20
  "@united-workforce/protocol": "^0.1.0",
22
- "@united-workforce/util": "^0.1.0"
21
+ "@united-workforce/util-agent": "^0.1.0",
22
+ "@united-workforce/util": "^0.1.2"
23
23
  },
24
24
  "publishConfig": {
25
25
  "access": "public"
@@ -58,7 +58,10 @@ describe("C1: adapter JSON round-trip integration", () => {
58
58
  },
59
59
  },
60
60
  graph: {
61
- $START: { _: { role: "worker", prompt: "Do the work", location: null } },
61
+ $START: {
62
+ new: { role: "worker", prompt: "Do the work", location: null },
63
+ resume: { role: "worker", prompt: "Resume the work", location: null },
64
+ },
62
65
  worker: { done: { role: "$END", prompt: "completed", location: null } },
63
66
  },
64
67
  });
@@ -45,10 +45,14 @@ roles:
45
45
  $status: { type: string, enum: ["done"] }
46
46
  graph:
47
47
  $START:
48
- _:
48
+ new:
49
49
  role: roleA
50
50
  prompt: "Do A"
51
51
  location: null
52
+ resume:
53
+ role: roleA
54
+ prompt: "Resume A"
55
+ location: null
52
56
  roleA:
53
57
  ready:
54
58
  role: roleB
@@ -107,10 +111,14 @@ roles:
107
111
  $status: { type: string, enum: ["done"] }
108
112
  graph:
109
113
  $START:
110
- _:
114
+ new:
111
115
  role: roleA
112
116
  prompt: "Do A"
113
117
  location: null
118
+ resume:
119
+ role: roleA
120
+ prompt: "Resume A"
121
+ location: null
114
122
  roleA:
115
123
  pass:
116
124
  role: roleB
@@ -150,10 +158,14 @@ roles:
150
158
  $status: { type: string, enum: ["done"] }
151
159
  graph:
152
160
  $START:
153
- _:
161
+ new:
154
162
  role: worker
155
163
  prompt: "Work"
156
164
  location: null
165
+ resume:
166
+ role: worker
167
+ prompt: "Resume work"
168
+ location: null
157
169
  worker:
158
170
  done:
159
171
  role: $END
@@ -36,7 +36,8 @@ roles:
36
36
  required: [$status]
37
37
  graph:
38
38
  $START:
39
- _: { role: analyst, prompt: 'Analyze the task' }
39
+ new: { role: analyst, prompt: 'Analyze the task' }
40
+ resume: { role: analyst, prompt: 'Review the previous run output and continue the work.' }
40
41
  analyst:
41
42
  analyzed: { role: developer, prompt: 'Implement the change' }
42
43
  developer:
@@ -25,7 +25,8 @@ roles:
25
25
  required: [$status]
26
26
  graph:
27
27
  $START:
28
- _: { role: planner, prompt: 'Plan the task' }
28
+ new: { role: planner, prompt: 'Plan the task' }
29
+ resume: { role: planner, prompt: 'Review the previous run output and continue the work.' }
29
30
  planner:
30
31
  ready: { role: worker, prompt: 'Do the work' }
31
32
  worker:
@@ -28,7 +28,8 @@ roles:
28
28
  required: [$status]
29
29
  graph:
30
30
  $START:
31
- _: { role: developer, prompt: 'Implement the change' }
31
+ new: { role: developer, prompt: 'Implement the change' }
32
+ resume: { role: developer, prompt: 'Review the previous run output and continue the work.' }
32
33
  developer:
33
34
  review_needed: { role: reviewer, prompt: 'Review the change' }
34
35
  reviewer:
@@ -27,7 +27,8 @@ roles:
27
27
  required: [$status]
28
28
  graph:
29
29
  $START:
30
- _: { role: planner, prompt: 'Plan the task' }
30
+ new: { role: planner, prompt: 'Plan the task' }
31
+ resume: { role: planner, prompt: 'Review the previous run output and continue the work.' }
31
32
  planner:
32
33
  ready: { role: worker, prompt: 'Work on branch {{{branch}}} in {{{repoPath}}}' }
33
34
  worker:
@@ -18,7 +18,8 @@ roles:
18
18
  required: [$status]
19
19
  graph:
20
20
  $START:
21
- _: { role: planner, prompt: 'Analyze the task' }
21
+ new: { role: planner, prompt: 'Analyze the task' }
22
+ resume: { role: planner, prompt: 'Review the previous run output and continue the work.' }
22
23
  planner:
23
24
  insufficient_info: { role: '$SUSPEND', prompt: 'Need more info: {{{reason}}}' }
24
25
  ready: { role: '$END', prompt: 'Done' }
@@ -5,7 +5,12 @@ import { evaluate } from "../moderator/evaluate.js";
5
5
 
6
6
  const solveIssueGraph: WorkflowPayload["graph"] = {
7
7
  $START: {
8
- _: { role: "planner", prompt: "Start planning from the issue in the task.", location: null },
8
+ new: { role: "planner", prompt: "Start planning from the issue in the task.", location: null },
9
+ resume: {
10
+ role: "planner",
11
+ prompt: "Review the previous run output and continue the work.",
12
+ location: null,
13
+ },
9
14
  },
10
15
  planner: {
11
16
  planned: { role: "developer", prompt: "Implement the plan: {{plan}}", location: null },
@@ -20,8 +25,8 @@ const solveIssueGraph: WorkflowPayload["graph"] = {
20
25
  };
21
26
 
22
27
  describe("evaluate", () => {
23
- test("$START → first role (unit status _)", () => {
24
- const result = evaluate(solveIssueGraph, "$START", { $status: "_" });
28
+ test("$START → first role (status new)", () => {
29
+ const result = evaluate(solveIssueGraph, "$START", { $status: "new" });
25
30
  expect(result).toEqual({
26
31
  ok: true,
27
32
  value: {
@@ -32,6 +37,18 @@ describe("evaluate", () => {
32
37
  });
33
38
  });
34
39
 
40
+ test("$START → first role (status resume)", () => {
41
+ const result = evaluate(solveIssueGraph, "$START", { $status: "resume" });
42
+ expect(result).toEqual({
43
+ ok: true,
44
+ value: {
45
+ role: "planner",
46
+ prompt: "Review the previous run output and continue the work.",
47
+ location: null,
48
+ },
49
+ });
50
+ });
51
+
35
52
  test("status-based routing (reviewer rejected → developer)", () => {
36
53
  const result = evaluate(solveIssueGraph, "reviewer", {
37
54
  $status: "rejected",
@@ -95,7 +112,7 @@ describe("evaluate", () => {
95
112
  });
96
113
 
97
114
  test("missing role in graph → error", () => {
98
- const result = evaluate(solveIssueGraph, "unknown-role", { $status: "_" });
115
+ const result = evaluate(solveIssueGraph, "unknown-role", { $status: "new" });
99
116
  expect(result.ok).toBe(false);
100
117
  if (!result.ok) {
101
118
  expect(result.error.message).toBe('no transitions defined for role "unknown-role"');
@@ -9,31 +9,25 @@ import {
9
9
  cmdPromptAdapterDeveloping,
10
10
  cmdPromptBootstrap,
11
11
  cmdPromptList,
12
- cmdPromptSetup,
13
12
  cmdPromptUsage,
14
- cmdPromptUsageReference,
15
13
  cmdPromptWorkflowAuthoring,
16
14
  } from "../commands/prompt.js";
17
15
 
18
16
  describe("prompt commands", () => {
19
- test("prompt list returns new prompt names", () => {
17
+ test("prompt list returns prompt names (no bootstrap)", () => {
20
18
  const result = cmdPromptList();
21
19
  expect(result).toBeInstanceOf(Array);
22
20
  expect(result).toContain("usage");
23
21
  expect(result).toContain("workflow-authoring");
24
22
  expect(result).toContain("adapter-developing");
25
- expect(result).toContain("bootstrap");
26
- expect(result).not.toContain("user");
27
- expect(result).not.toContain("author");
28
- expect(result).not.toContain("developer");
29
- expect(result).not.toContain("adapter");
23
+ expect(result).not.toContain("bootstrap");
30
24
  for (const name of result) {
31
25
  expect(name).toMatch(/^\S+$/);
32
26
  }
33
27
  });
34
28
 
35
- test("prompt usage-reference returns non-empty markdown string with frontmatter", () => {
36
- const result = cmdPromptUsageReference();
29
+ test("prompt usage returns only the usage reference with frontmatter", () => {
30
+ const result = cmdPromptUsage();
37
31
  expect(typeof result).toBe("string");
38
32
  expect(result).toContain("uwf");
39
33
  expect(result).toContain("thread");
@@ -42,6 +36,9 @@ describe("prompt commands", () => {
42
36
  expect(result).toContain("---");
43
37
  expect(result).toContain("name:");
44
38
  expect(result).toContain("version:");
39
+ // Should NOT contain other references
40
+ expect(result).not.toContain("Workflow Authoring Reference");
41
+ expect(result).not.toContain("Adapter Developing Reference");
45
42
  expect(result.length).toBeGreaterThan(500);
46
43
  });
47
44
 
@@ -71,44 +68,19 @@ describe("prompt commands", () => {
71
68
  expect(result.length).toBeGreaterThan(500);
72
69
  });
73
70
 
74
- test("prompt bootstrap returns non-empty skill with frontmatter", () => {
71
+ test("prompt bootstrap returns framework-agnostic setup instructions", () => {
75
72
  const result = cmdPromptBootstrap();
76
73
  expect(typeof result).toBe("string");
77
- expect(result).toContain("uwf");
78
- expect(result).toContain("---");
79
- expect(result.length).toBeGreaterThan(100);
80
- });
81
-
82
- test("prompt usage combines remaining references (no developer)", () => {
83
- const result = cmdPromptUsage();
84
- expect(typeof result).toBe("string");
85
- expect(result).toContain("Usage Reference");
86
- expect(result).toContain("Workflow Authoring Reference");
87
- expect(result).toContain("Adapter Developing Reference");
88
- expect(result).not.toContain("Developer Reference");
89
- expect(result).toContain("---");
90
- expect(result.length).toBeGreaterThan(2000);
91
- });
92
-
93
- test("prompt setup returns simplified setup instructions", () => {
94
- const result = cmdPromptSetup();
95
- expect(typeof result).toBe("string");
96
- expect(result).toContain("uwf Skill Setup");
97
- expect(result).toContain("uwf prompt bootstrap");
98
- expect(result).toContain("SKILL.md");
99
- expect(result).toContain("version");
100
- expect(result).not.toMatch(/\bbun (install|run|test|changeset|version|release)\b/);
101
- });
102
-
103
- test("prompt setup references new subcommand names", () => {
104
- const result = cmdPromptSetup();
105
74
  expect(result).toContain("uwf prompt usage");
106
75
  expect(result).toContain("uwf prompt workflow-authoring");
107
76
  expect(result).toContain("uwf prompt adapter-developing");
108
- expect(result).not.toContain("uwf prompt user");
109
- expect(result).not.toContain("uwf prompt author");
110
- expect(result).not.toContain("uwf prompt developer");
111
- expect(result).not.toMatch(/uwf prompt adapter\b(?!-developing)/);
77
+ expect(result).toContain("uwf-usage");
78
+ expect(result).toContain("uwf-workflow-authoring");
79
+ expect(result).toContain("uwf-adapter-developing");
80
+ // Should NOT contain Hermes-specific paths
81
+ expect(result).not.toContain("~/.hermes/skills/");
82
+ expect(result).not.toContain("> ~/.hermes/");
83
+ expect(result.length).toBeGreaterThan(100);
112
84
  });
113
85
 
114
86
  test("prompt help subcommand is suppressed", { timeout: 30_000 }, () => {
@@ -119,11 +91,12 @@ describe("prompt commands", () => {
119
91
  });
120
92
  expect(output).not.toMatch(/help\s+\[command\]/i);
121
93
  expect(output).toContain("usage");
122
- expect(output).toContain("setup");
94
+ expect(output).toContain("bootstrap");
123
95
  expect(output).toContain("workflow-authoring");
124
96
  expect(output).toContain("adapter-developing");
125
- expect(output).toContain("bootstrap");
126
97
  expect(output).toContain("list");
127
- expect(output).not.toContain("developer");
98
+ // Removed subcommands should not appear as command names
99
+ expect(output).not.toMatch(/^\s+setup\s/m);
100
+ expect(output).not.toContain("usage-reference");
128
101
  });
129
102
  });
@@ -253,7 +253,10 @@ describe("thread read timing", () => {
253
253
  },
254
254
  },
255
255
  graph: {
256
- $START: { _: { role: "worker", prompt: "go", location: null } },
256
+ $START: {
257
+ new: { role: "worker", prompt: "go", location: null },
258
+ resume: { role: "worker", prompt: "resume", location: null },
259
+ },
257
260
  worker: { done: { role: "$END", prompt: "", location: null } },
258
261
  },
259
262
  });
@@ -319,7 +322,10 @@ describe("thread read timing", () => {
319
322
  },
320
323
  },
321
324
  graph: {
322
- $START: { _: { role: "worker", prompt: "go", location: null } },
325
+ $START: {
326
+ new: { role: "worker", prompt: "go", location: null },
327
+ resume: { role: "worker", prompt: "resume", location: null },
328
+ },
323
329
  worker: { done: { role: "$END", prompt: "", location: null } },
324
330
  },
325
331
  });
@@ -57,10 +57,14 @@ roles:
57
57
  $status: { type: string, enum: ["ready"] }
58
58
  graph:
59
59
  $START:
60
- _:
60
+ new:
61
61
  role: planner
62
62
  prompt: "Plan the work"
63
63
  location: null
64
+ resume:
65
+ role: planner
66
+ prompt: "Resume the work"
67
+ location: null
64
68
  planner:
65
69
  ready:
66
70
  role: $END
@@ -113,10 +117,14 @@ roles:
113
117
  $status: { type: string, enum: ["ready"] }
114
118
  graph:
115
119
  $START:
116
- _:
120
+ new:
117
121
  role: planner
118
122
  prompt: "Plan"
119
123
  location: null
124
+ resume:
125
+ role: planner
126
+ prompt: "Resume"
127
+ location: null
120
128
  planner:
121
129
  ready:
122
130
  role: $END
@@ -156,10 +164,14 @@ roles:
156
164
  $status: { type: string, enum: ["ready"] }
157
165
  graph:
158
166
  $START:
159
- _:
167
+ new:
160
168
  role: planner
161
169
  prompt: "Plan"
162
170
  location: null
171
+ resume:
172
+ role: planner
173
+ prompt: "Resume"
174
+ location: null
163
175
  planner:
164
176
  ready:
165
177
  role: $END
@@ -70,7 +70,10 @@ async function setupSuspendedThread(mode: MockAgentMode): Promise<{
70
70
  },
71
71
  },
72
72
  graph: {
73
- $START: { _: { role: "worker", prompt: "Start work", location: null } },
73
+ $START: {
74
+ new: { role: "worker", prompt: "Start work", location: null },
75
+ resume: { role: "worker", prompt: "Resume the work", location: null },
76
+ },
74
77
  worker: {
75
78
  needs_input: {
76
79
  role: "$SUSPEND",
@@ -233,7 +236,10 @@ describe("uwf thread resume", () => {
233
236
  },
234
237
  },
235
238
  graph: {
236
- $START: { _: { role: "worker", prompt: "Start", location: null } },
239
+ $START: {
240
+ new: { role: "worker", prompt: "Start", location: null },
241
+ resume: { role: "worker", prompt: "Resume", location: null },
242
+ },
237
243
  worker: { done: { role: "$END", prompt: "Done", location: null } },
238
244
  },
239
245
  });
@@ -479,7 +485,10 @@ describe("uwf thread resume - completed threads", () => {
479
485
  },
480
486
  },
481
487
  graph: {
482
- $START: { _: { role: "worker", prompt: "Start work", location: null } },
488
+ $START: {
489
+ new: { role: "worker", prompt: "Start work", location: null },
490
+ resume: { role: "worker", prompt: "Resume the work", location: null },
491
+ },
483
492
  worker: { done: { role: "reviewer", prompt: "Review the work", location: null } },
484
493
  reviewer: { done: { role: "$END", prompt: "Done", location: null } },
485
494
  },
@@ -610,7 +619,7 @@ echo '${adapterJson}'
610
619
  expect(cliOutput.done).toBe(false);
611
620
 
612
621
  const capturedPrompt = await readFile(promptCapturePath, "utf8");
613
- expect(capturedPrompt).toContain("Previous run completed");
622
+ expect(capturedPrompt).toContain("Resume the work");
614
623
  expect(capturedPrompt).toContain("Additional context");
615
624
 
616
625
  const storeModule = await import("../store.js");
@@ -640,7 +649,10 @@ echo '${adapterJson}'
640
649
  },
641
650
  },
642
651
  graph: {
643
- $START: { _: { role: "worker", prompt: "Start", location: null } },
652
+ $START: {
653
+ new: { role: "worker", prompt: "Start", location: null },
654
+ resume: { role: "worker", prompt: "Resume", location: null },
655
+ },
644
656
  worker: { done: { role: "$END", prompt: "Done", location: null } },
645
657
  },
646
658
  });
@@ -688,7 +700,10 @@ echo '${adapterJson}'
688
700
  },
689
701
  },
690
702
  graph: {
691
- $START: { _: { role: "worker", prompt: "Start", location: null } },
703
+ $START: {
704
+ new: { role: "worker", prompt: "Start", location: null },
705
+ resume: { role: "worker", prompt: "Resume", location: null },
706
+ },
692
707
  worker: { done: { role: "$END", prompt: "Done", location: null } },
693
708
  },
694
709
  });