@exaudeus/workrail 3.14.0 → 3.15.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 (62) hide show
  1. package/dist/application/services/validation-engine.js +4 -9
  2. package/dist/application/services/workflow-compiler.js +4 -6
  3. package/dist/console/assets/index-BZYIjrzJ.js +28 -0
  4. package/dist/console/assets/index-OLCKbDdm.css +1 -0
  5. package/dist/console/index.html +2 -2
  6. package/dist/engine/engine-factory.js +2 -2
  7. package/dist/engine/types.d.ts +1 -1
  8. package/dist/manifest.json +63 -63
  9. package/dist/mcp/handlers/shared/request-workflow-reader.d.ts +5 -0
  10. package/dist/mcp/handlers/shared/request-workflow-reader.js +47 -2
  11. package/dist/mcp/handlers/v2-advance-core/assessment-consequences.d.ts +1 -1
  12. package/dist/mcp/handlers/v2-advance-core/assessment-consequences.js +4 -5
  13. package/dist/mcp/handlers/v2-advance-core/index.js +1 -1
  14. package/dist/mcp/handlers/v2-advance-core/outcome-blocked.js +1 -1
  15. package/dist/mcp/handlers/v2-execution/start.d.ts +1 -0
  16. package/dist/mcp/handlers/v2-execution/start.js +20 -1
  17. package/dist/mcp/handlers/v2-workflow.d.ts +20 -0
  18. package/dist/mcp/handlers/v2-workflow.js +119 -10
  19. package/dist/mcp/output-schemas.d.ts +109 -8
  20. package/dist/mcp/output-schemas.js +31 -11
  21. package/dist/mcp/server.js +48 -1
  22. package/dist/mcp/tool-descriptions.js +17 -9
  23. package/dist/mcp/v2/tools.d.ts +6 -0
  24. package/dist/mcp/v2/tools.js +2 -0
  25. package/dist/mcp/workflow-protocol-contracts.js +5 -1
  26. package/dist/types/workflow-definition.d.ts +1 -2
  27. package/dist/v2/infra/local/workspace-anchor/index.js +4 -1
  28. package/dist/v2/usecases/console-routes.js +49 -1
  29. package/dist/v2/usecases/console-service.d.ts +1 -0
  30. package/dist/v2/usecases/console-service.js +4 -1
  31. package/dist/v2/usecases/console-types.d.ts +12 -0
  32. package/dist/v2/usecases/worktree-service.js +55 -7
  33. package/package.json +2 -2
  34. package/spec/authoring-spec.json +82 -1
  35. package/spec/workflow-tags.json +132 -0
  36. package/spec/workflow.schema.json +3 -11
  37. package/workflows/adaptive-ticket-creation.json +40 -22
  38. package/workflows/architecture-scalability-audit.json +65 -31
  39. package/workflows/bug-investigation.agentic.v2.json +36 -14
  40. package/workflows/coding-task-workflow-agentic.json +50 -38
  41. package/workflows/coding-task-workflow-agentic.lean.v2.json +124 -37
  42. package/workflows/coding-task-workflow-agentic.v2.json +90 -30
  43. package/workflows/cross-platform-code-conversion.v2.json +168 -48
  44. package/workflows/document-creation-workflow.json +47 -17
  45. package/workflows/documentation-update-workflow.json +8 -8
  46. package/workflows/intelligent-test-case-generation.json +2 -2
  47. package/workflows/learner-centered-course-workflow.json +267 -267
  48. package/workflows/mr-review-workflow.agentic.v2.json +81 -14
  49. package/workflows/personal-learning-materials-creation-branched.json +175 -175
  50. package/workflows/presentation-creation.json +159 -159
  51. package/workflows/production-readiness-audit.json +54 -15
  52. package/workflows/relocation-workflow-us.json +44 -35
  53. package/workflows/routines/tension-driven-design.json +1 -1
  54. package/workflows/scoped-documentation-workflow.json +25 -25
  55. package/workflows/test-artifact-loop-control.json +1 -2
  56. package/workflows/ui-ux-design-workflow.json +327 -0
  57. package/workflows/workflow-diagnose-environment.json +1 -1
  58. package/workflows/workflow-for-workflows.json +507 -484
  59. package/workflows/workflow-for-workflows.v2.json +43 -11
  60. package/workflows/wr.discovery.json +112 -30
  61. package/dist/console/assets/index-DW78t31j.css +0 -1
  62. package/dist/console/assets/index-EsSXrC_a.js +0 -28
@@ -700,15 +700,10 @@ let ValidationEngine = ValidationEngine_1 = class ValidationEngine {
700
700
  for (const consequence of step.assessmentConsequences) {
701
701
  const trigger = consequence.when;
702
702
  const effect = consequence.effect;
703
- const dimension = assessmentDefinition.dimensions.find(candidate => candidate.id === trigger.dimensionId);
704
- if (!dimension) {
705
- issues.push(`${stepLabel}: assessment consequence references unknown dimension '${trigger.dimensionId}' for assessment '${assessmentDefinition.id}'`);
706
- suggestions.push(`Use one of the declared dimensions for assessment '${assessmentDefinition.id}': ${assessmentDefinition.dimensions.map(d => d.id).join(', ')}`);
707
- continue;
708
- }
709
- if (!dimension.levels.includes(trigger.equalsLevel)) {
710
- issues.push(`${stepLabel}: assessment consequence references undeclared level '${trigger.equalsLevel}' for dimension '${trigger.dimensionId}'`);
711
- suggestions.push(`Use one of the declared levels for dimension '${trigger.dimensionId}': ${dimension.levels.join(', ')}`);
703
+ const allLevels = assessmentDefinition.dimensions.flatMap(d => d.levels);
704
+ if (!allLevels.includes(trigger.anyEqualsLevel)) {
705
+ issues.push(`${stepLabel}: assessment consequence anyEqualsLevel '${trigger.anyEqualsLevel}' is not declared in any dimension of assessment '${assessmentDefinition.id}'`);
706
+ suggestions.push(`Use a level declared in one of the dimensions: ${[...new Set(allLevels)].join(', ')}`);
712
707
  }
713
708
  if (effect.kind !== 'require_followup') {
714
709
  issues.push(`${stepLabel}: unsupported assessment consequence effect '${String(effect.kind)}'`);
@@ -151,12 +151,10 @@ let WorkflowCompiler = class WorkflowCompiler {
151
151
  return (0, neverthrow_1.err)(error_1.Err.invalidState(`Step '${step.id}' declares ${assessmentConsequences.length} assessment consequences. V1 supports exactly one assessment consequence per step.`));
152
152
  }
153
153
  for (const consequence of assessmentConsequences) {
154
- const dimension = assessment.dimensions.find(candidate => candidate.id === consequence.when.dimensionId);
155
- if (!dimension) {
156
- return (0, neverthrow_1.err)(error_1.Err.invalidState(`Step '${step.id}' declares consequence on unknown dimension '${consequence.when.dimensionId}' for assessment '${assessment.id}'`));
157
- }
158
- if (!dimension.levels.includes(consequence.when.equalsLevel)) {
159
- return (0, neverthrow_1.err)(error_1.Err.invalidState(`Step '${step.id}' declares consequence on unsupported level '${consequence.when.equalsLevel}' for dimension '${consequence.when.dimensionId}'. Declared levels: ${dimension.levels.join(', ')}`));
154
+ const trigger = consequence.when;
155
+ const allLevels = assessment.dimensions.flatMap(d => d.levels);
156
+ if (!allLevels.includes(trigger.anyEqualsLevel)) {
157
+ return (0, neverthrow_1.err)(error_1.Err.invalidState(`Step '${step.id}' declares consequence with anyEqualsLevel '${trigger.anyEqualsLevel}' that is not declared in any dimension of assessment '${assessment.id}'`));
160
158
  }
161
159
  if (consequence.effect.kind !== 'require_followup') {
162
160
  return (0, neverthrow_1.err)(error_1.Err.invalidState(`Step '${step.id}' declares unsupported assessment consequence effect '${String(consequence.effect.kind)}'`));