@exaudeus/workrail 0.2.5-beta.0 → 0.2.5-beta.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@exaudeus/workrail",
3
- "version": "0.2.5-beta.0",
3
+ "version": "0.2.5-beta.1",
4
4
  "description": "MCP server for structured workflow orchestration and step-by-step task guidance",
5
5
  "license": "MIT",
6
6
  "bin": {
@@ -17,7 +17,13 @@
17
17
  "Embrace small, single-purpose pull requests for faster, more thorough reviews.",
18
18
  "When citing issues, always try to provide specific file paths and line numbers from the diff.",
19
19
  "Maintain the persona of a helpful, collaborative senior engineer.",
20
- "If at any point you determine that a crucial piece of information is missing, you must pause and ask the user to provide it."
20
+ "If at any point you determine that a crucial piece of information is missing, you must pause and ask the user to provide it.",
21
+ "Auto-advance: after completing each step, immediately get the next step; only pause for explicit requireConfirmation or missing critical inputs.",
22
+ "FunctionReferences are mandatory. When a step lists functionReferences, execute each in the listed order before producing chat output.",
23
+ "Use each function's definition as the authoritative checklist for how to perform the step and what to produce (doc updates, context vars).",
24
+ "Document I/O: create/update the file at reviewDocPath using file-writing tools. If the agent cannot write files, output the exact doc content with the intended path so the user can save it.",
25
+ "If a function requires inputs that are missing, state exactly what is missing and pause. Otherwise, do not ask for confirmation.",
26
+ "If prompt text and a function definition conflict, prefer the function definition for the how, and the step prompt for the what."
21
27
  ],
22
28
  "functionDefinitions": [
23
29
  {
@@ -132,7 +138,8 @@
132
138
  "prompt": "Initializing state for progressive depth analysis. Setting analysisDepth = 1, analysisComplete = false, and majorIssuesFound = false.",
133
139
  "agentRole": "You are a state manager preparing the workflow for an iterative review process.",
134
140
  "guidance": ["This is an automated step to prepare for the analysis loop."],
135
- "runCondition": { "and": [ { "var": "complexity", "not_equals": "Trivial" }, { "or": [ { "var": "contextGatheringComplete", "equals": true }, { "var": "skipContextGathering", "equals": true } ] } ] }
141
+ "runCondition": { "and": [ { "var": "complexity", "not_equals": "Trivial" }, { "or": [ { "var": "contextGatheringComplete", "equals": true }, { "var": "skipContextGathering", "equals": true } ] } ] },
142
+ "requireConfirmation": false
136
143
  },
137
144
  {
138
145
  "id": "phase-1a-llm-context-gathering",
@@ -165,7 +172,8 @@
165
172
  "Cap exemplars (e.g., 3–5 per concern) for speed."
166
173
  ],
167
174
  "runCondition": { "var": "analysisDepth", "equals": 1 },
168
- "functionReferences": ["discoverModulePatterns()"]
175
+ "functionReferences": ["discoverModulePatterns()"],
176
+ "requireConfirmation": false
169
177
  },
170
178
  {
171
179
  "id": "perform-analysis-pass",
@@ -176,14 +184,16 @@
176
184
  "At each depth, focus only on the items in that checklist.",
177
185
  "Use Chain-of-Thought reasoning to explain your findings."
178
186
  ],
179
- "functionReferences": ["collectNits()", "appendFinding()", "appendMRComment()", "logRevision()"]
187
+ "functionReferences": ["collectNits()", "appendFinding()", "appendMRComment()", "logRevision()"],
188
+ "requireConfirmation": false
180
189
  },
181
190
  {
182
191
  "id": "check-analysis-completion",
183
192
  "title": "Check Analysis Completion",
184
193
  "prompt": "Checking if the analysis is complete. If no 'Major' or 'Critical' issues were found in the last pass, or if we have reached the maximum depth (3), I will set `analysisComplete = true` to exit the loop. Otherwise, I will increment the `analysisDepth` and continue to the next level of review.",
185
194
  "agentRole": "You are an automated process controller determining whether to deepen the analysis or conclude this phase.",
186
- "guidance": ["This step determines the exit condition for the progressive depth loop."]
195
+ "guidance": ["This step determines the exit condition for the progressive depth loop."],
196
+ "requireConfirmation": false
187
197
  }
188
198
  ]
189
199
  },
@@ -197,7 +207,8 @@
197
207
  "Avoid re-scanning if `patternCatalog` already exists; reuse it."
198
208
  ],
199
209
  "runCondition": { "var": "complexity", "not_equals": "Trivial" },
200
- "functionReferences": ["consolidatePatternFindings()", "appendPatternResult()", "upsertSection()", "logRevision()"]
210
+ "functionReferences": ["consolidatePatternFindings()", "appendPatternResult()", "upsertSection()", "logRevision()"],
211
+ "requireConfirmation": false
201
212
  },
202
213
  {
203
214
  "id": "phase-3-impact-analysis",
@@ -207,7 +218,8 @@
207
218
  "guidance": [
208
219
  "Assessing test coverage is critical. A lack of tests for new logic is often a 'Major' or 'Critical' concern."
209
220
  ],
210
- "runCondition": { "and": [ { "var": "complexity", "not_equals": "Trivial" }, { "or": [ { "var": "contextGatheringComplete", "equals": true }, { "var": "skipContextGathering", "equals": true } ] } ] }
221
+ "runCondition": { "and": [ { "var": "complexity", "not_equals": "Trivial" }, { "or": [ { "var": "contextGatheringComplete", "equals": true }, { "var": "skipContextGathering", "equals": true } ] } ] },
222
+ "requireConfirmation": false
211
223
  },
212
224
  {
213
225
  "id": "hygiene-and-inconsistencies",
@@ -219,7 +231,8 @@
219
231
  "Write full details to the live doc; in chat, report counts and the doc path."
220
232
  ],
221
233
  "runCondition": { "var": "complexity", "not_equals": "Trivial" },
222
- "functionReferences": ["discoverHygieneSignals()", "consolidateHygieneFindings()", "appendHygieneFinding()", "appendMRComment()", "upsertSection()", "logRevision()"]
234
+ "functionReferences": ["discoverHygieneSignals()", "consolidateHygieneFindings()", "appendHygieneFinding()", "appendMRComment()", "upsertSection()", "logRevision()"],
235
+ "requireConfirmation": false
223
236
  },
224
237
  {
225
238
  "id": "prepare-nit-appendix",
@@ -231,7 +244,8 @@
231
244
  "Keep items concise; avoid repeating Major concerns."
232
245
  ],
233
246
  "runCondition": { "and": [ { "var": "complexity", "not_equals": "Trivial" }, { "or": [ { "var": "contextGatheringComplete", "equals": true }, { "var": "skipContextGathering", "equals": true } ] } ] },
234
- "functionReferences": ["prepareNitAppendix()", "appendNit()", "upsertSection()", "logRevision()"]
247
+ "functionReferences": ["prepareNitAppendix()", "appendNit()", "upsertSection()", "logRevision()"],
248
+ "requireConfirmation": false
235
249
  },
236
250
  {
237
251
  "id": "finalize-review-document",
@@ -241,7 +255,8 @@
241
255
  "guidance": [
242
256
  "Write full details to the live doc; keep chat to a concise recap with the doc path."
243
257
  ],
244
- "functionReferences": ["finalizeReviewDocument()", "ensureSectionMarkers()", "upsertSection()", "curateMRComments()", "discoverHygieneSignals()", "consolidateHygieneFindings()", "appendHygieneFinding()", "logRevision()"]
258
+ "functionReferences": ["finalizeReviewDocument()", "ensureSectionMarkers()", "upsertSection()", "curateMRComments()", "discoverHygieneSignals()", "consolidateHygieneFindings()", "appendHygieneFinding()", "logRevision()"],
259
+ "requireConfirmation": false
245
260
  }
246
261
  ]
247
262
  }