@workermill/agent 0.8.2 → 0.8.3

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/dist/cli.js CHANGED
File without changes
@@ -222,6 +222,7 @@ Review this execution plan against the PRD:
222
222
  4. **Unrealistic Scope** - Any step targeting >5 files MUST score below 80 (auto-rejection threshold). Each step should modify at most 5 files. If a step needs more, split it into multiple steps first.
223
223
  5. **Missing Operational Steps** - If the PRD requires deployment, provisioning, migrations, or running commands, does the plan include operational steps? Writing code is not the same as deploying it.
224
224
  6. **Overlapping File Scope** - If two or more steps share the same targetFiles, this causes parallel merge conflicts. Steps MUST NOT overlap on targetFiles. Deduct 10 points per shared file across steps.
225
+ 7. **Serialization Bottleneck** - If more than half the stories depend on a single story that targets >5 files, the plan has a bottleneck. Deduct 15 points — split the foundation or allow more parallel work.
225
226
 
226
227
  ## Scoring Guide
227
228
 
package/dist/planner.js CHANGED
@@ -80,9 +80,10 @@ const logQueue = [];
80
80
  let logDrainPromise = null;
81
81
  async function drainLogQueue() {
82
82
  while (logQueue.length > 0) {
83
- const entry = logQueue.shift();
83
+ // Drain up to 50 entries per batch POST
84
+ const batch = logQueue.splice(0, 50);
84
85
  try {
85
- await api.post("/api/control-center/logs", entry, { timeout: 5_000 });
86
+ await api.post("/api/control-center/logs/batch", { entries: batch }, { timeout: 5_000 });
86
87
  }
87
88
  catch {
88
89
  // Best-effort — drop on failure
@@ -218,7 +219,7 @@ function runClaudeCli(claudePath, model, prompt, env, taskId, startTime, cwd) {
218
219
  console.log(`${ts()} ${taskLabel} ${chalk.dim(msg)}`);
219
220
  }
220
221
  // Flush buffered LLM text to dashboard every 1s (complete lines only)
221
- const textFlushInterval = setInterval(() => flushTextBuffer(), 1_000);
222
+ const textFlushInterval = setInterval(() => flushTextBuffer(), 500);
222
223
  // SSE progress updates every 2s — drives PlanningTerminalBar in dashboard
223
224
  // (same cadence as local dev's progressInterval in planning-agent-local.ts)
224
225
  const sseProgressInterval = setInterval(() => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@workermill/agent",
3
- "version": "0.8.2",
3
+ "version": "0.8.3",
4
4
  "description": "WorkerMill Remote Agent - Run AI workers locally with your Claude Max subscription",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",