@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 +0 -0
- package/dist/plan-validator.js +1 -0
- package/dist/planner.js +4 -3
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
File without changes
|
package/dist/plan-validator.js
CHANGED
|
@@ -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
|
-
|
|
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",
|
|
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(),
|
|
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(() => {
|