@davidorex/pi-workflows 0.9.2 → 0.10.1

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/agents/architecture-designer.agent.yaml +2 -1
  2. package/agents/architecture-inferrer.agent.yaml +2 -1
  3. package/agents/audit-finding-verifier.agent.yaml +2 -1
  4. package/agents/audit-fixer.agent.yaml +2 -1
  5. package/agents/audit-results-router.agent.yaml +2 -1
  6. package/agents/code-explorer.agent.yaml +4 -2
  7. package/agents/decomposer.agent.yaml +2 -1
  8. package/agents/gap-identifier.agent.yaml +2 -1
  9. package/agents/gap-resolution-assessor.agent.yaml +2 -1
  10. package/agents/handoff-writer.agent.yaml +2 -1
  11. package/agents/investigator.agent.yaml +2 -1
  12. package/agents/pattern-analyzer.agent.yaml +4 -2
  13. package/agents/phase-author.agent.yaml +2 -1
  14. package/agents/plan-creator.agent.yaml +2 -1
  15. package/agents/plan-decomposer.agent.yaml +2 -1
  16. package/agents/project-definer.agent.yaml +2 -1
  17. package/agents/project-inferrer.agent.yaml +2 -1
  18. package/agents/quality-analyzer.agent.yaml +4 -2
  19. package/agents/requirements-gatherer.agent.yaml +2 -1
  20. package/agents/researcher.agent.yaml +2 -1
  21. package/agents/spec-implementer.agent.yaml +2 -1
  22. package/agents/structure-analyzer.agent.yaml +4 -2
  23. package/agents/synthesizer.agent.yaml +4 -2
  24. package/agents/verifier.agent.yaml +2 -1
  25. package/dist/agent-spec.d.ts.map +1 -1
  26. package/dist/agent-spec.js +30 -4
  27. package/dist/agent-spec.js.map +1 -1
  28. package/dist/dag.d.ts.map +1 -1
  29. package/dist/dag.js +24 -1
  30. package/dist/dag.js.map +1 -1
  31. package/dist/dispatch.js +1 -1
  32. package/dist/dispatch.js.map +1 -1
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +0 -7
  35. package/dist/index.js.map +1 -1
  36. package/dist/step-foreach.d.ts.map +1 -1
  37. package/dist/step-foreach.js +13 -0
  38. package/dist/step-foreach.js.map +1 -1
  39. package/dist/template-validation.d.ts +15 -0
  40. package/dist/template-validation.d.ts.map +1 -1
  41. package/dist/template-validation.js +214 -0
  42. package/dist/template-validation.js.map +1 -1
  43. package/dist/workflow-executor.d.ts.map +1 -1
  44. package/dist/workflow-executor.js +16 -5
  45. package/dist/workflow-executor.js.map +1 -1
  46. package/dist/workflow-spec.d.ts.map +1 -1
  47. package/dist/workflow-spec.js +100 -63
  48. package/dist/workflow-spec.js.map +1 -1
  49. package/package.json +2 -2
  50. package/templates/architecture-inferrer/task.md +9 -9
  51. package/templates/audit-results-router/task.md +1 -1
  52. package/templates/gap-identifier/task.md +5 -5
  53. package/templates/phase-author/task.md +7 -7
  54. package/templates/project-inferrer/task.md +7 -7
  55. package/templates/spec-implementer/task.md +4 -2
  56. package/workflows/analyze-existing-project.workflow.yaml +10 -16
  57. package/workflows/create-handoff.workflow.yaml +9 -5
  58. package/workflows/create-phase.workflow.yaml +10 -3
  59. package/workflows/do-gap.workflow.yaml +7 -7
  60. package/workflows/fix-audit.workflow.yaml +6 -6
  61. package/workflows/gap-to-phase.workflow.yaml +9 -9
  62. package/workflows/self-implement.workflow.yaml +2 -2
@@ -10,8 +10,8 @@ input:
10
10
  type: string
11
11
  description: ID of the gap to work on
12
12
  source:
13
- file: .project/gaps.json
14
- array: gaps
13
+ file: .project/issues.json
14
+ array: issues
15
15
  filter: { status: open }
16
16
  label: [id, description]
17
17
  value: id
@@ -19,16 +19,16 @@ input:
19
19
  steps:
20
20
  load-blocks:
21
21
  block:
22
- read: gaps
22
+ read: issues
23
23
  output:
24
24
  format: json
25
25
 
26
26
  load:
27
27
  command: |
28
28
  node -e "
29
- const gaps = JSON.parse(process.argv[1]);
29
+ const data = JSON.parse(process.argv[1]);
30
30
  const gapId = process.argv[2];
31
- const gap = gaps.gaps.find(g => g.id === gapId);
31
+ const gap = data.issues.find(g => g.id === gapId);
32
32
  if (!gap) { console.error('Gap not found: ' + gapId); process.exit(1); }
33
33
  if (gap.status === 'resolved') { console.error('Gap already resolved'); process.exit(1); }
34
34
  console.log(JSON.stringify({ gap }));
@@ -149,8 +149,8 @@ steps:
149
149
  when: "${{ steps.assess-resolution.output.resolved }}"
150
150
  block:
151
151
  update:
152
- name: gaps
153
- key: gaps
152
+ name: issues
153
+ key: issues
154
154
  match:
155
155
  id: "${{ input.gap_id }}"
156
156
  set:
@@ -116,14 +116,14 @@ steps:
116
116
  format: json
117
117
 
118
118
  route-issues:
119
- when: "${{ steps.prepare-routing.output.new_gaps | length }}"
120
- forEach: "${{ steps.prepare-routing.output.new_gaps }}"
121
- as: gap_item
119
+ when: "${{ steps.prepare-routing.output.new_issues | length }}"
120
+ forEach: "${{ steps.prepare-routing.output.new_issues }}"
121
+ as: issue_item
122
122
  block:
123
123
  append:
124
- name: gaps
125
- key: gaps
126
- item: "${{ gap_item }}"
124
+ name: issues
125
+ key: issues
126
+ item: "${{ issue_item }}"
127
127
  output:
128
128
  format: json
129
129
 
@@ -10,8 +10,8 @@ input:
10
10
  type: string
11
11
  description: ID of the gap to convert into a phase
12
12
  source:
13
- file: .project/gaps.json
14
- array: gaps
13
+ file: .project/issues.json
14
+ array: issues
15
15
  filter: { status: open }
16
16
  label: id
17
17
  value: id
@@ -19,16 +19,16 @@ input:
19
19
  steps:
20
20
  load-gap-blocks:
21
21
  block:
22
- read: gaps
22
+ read: issues
23
23
  output:
24
24
  format: json
25
25
 
26
26
  load-gap:
27
27
  command: |
28
28
  node -e "
29
- const gaps = JSON.parse(process.argv[1]);
29
+ const data = JSON.parse(process.argv[1]);
30
30
  const gapId = process.argv[2];
31
- const gap = gaps.gaps.find(g => g.id === gapId);
31
+ const gap = data.issues.find(g => g.id === gapId);
32
32
  if (!gap) { console.error('Gap not found: ' + gapId); process.exit(1); }
33
33
  if (gap.status === 'resolved') { console.error('Gap already resolved'); process.exit(1); }
34
34
  console.log(JSON.stringify({ gap }));
@@ -44,7 +44,7 @@ steps:
44
44
 
45
45
  load-context:
46
46
  block:
47
- read: [architecture, conventions, gaps, inventory]
47
+ read: [architecture, conventions, issues, inventory]
48
48
  optional: [architecture, conventions, inventory]
49
49
  output:
50
50
  format: json
@@ -53,9 +53,9 @@ steps:
53
53
  command: |
54
54
  node -e "
55
55
  const data = JSON.parse(process.argv[1]);
56
- const open = (data.gaps || []).filter(g => g.status === 'open');
56
+ const open = (data.issues || []).filter(g => g.status === 'open');
57
57
  console.log(JSON.stringify(open));
58
- " '${{ steps.load-context.output.gaps | json }}'
58
+ " '${{ steps.load-context.output.issues | json }}'
59
59
  output:
60
60
  format: json
61
61
 
@@ -67,7 +67,7 @@ steps:
67
67
  phases: "${{ steps.load-phases.output }}"
68
68
  architecture: "${{ steps.load-context.output.architecture }}"
69
69
  conventions: "${{ steps.load-context.output.conventions }}"
70
- gaps: "${{ steps.filter-gaps.output }}"
70
+ issues: "${{ steps.filter-gaps.output }}"
71
71
  inventory: "${{ steps.load-context.output.inventory }}"
72
72
  output:
73
73
  format: json
@@ -29,10 +29,10 @@ steps:
29
29
 
30
30
  implement:
31
31
  forEach: "${{ steps.plan.output.plans }}"
32
- as: plan
32
+ as: spec
33
33
  agent: spec-implementer
34
34
  input:
35
- plan: "${{ plan }}"
35
+ spec: "${{ spec }}"
36
36
  architecture: "${{ input.architecture }}"
37
37
  conventions: "${{ input.conventions }}"
38
38
  output: