lazycodex-ai 5.1.5 → 5.1.7
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/index.js +41 -17
- package/dist/cli/run/runnable-agent-resolver.d.ts +3 -0
- package/dist/cli-node/index.js +41 -17
- package/package.json +1 -1
- package/packages/omo-codex/plugin/.codex-plugin/plugin.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/dist/cli.js +7 -0
- package/packages/omo-codex/plugin/components/bootstrap/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/bootstrap/package.json +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/comment-checker/package.json +1 -1
- package/packages/omo-codex/plugin/components/git-bash/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/git-bash/package.json +1 -1
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/lazycodex-executor-verify/package.json +1 -1
- package/packages/omo-codex/plugin/components/lsp/dist/.omo-runtime-manifest.json +2 -2
- package/packages/omo-codex/plugin/components/lsp/hooks/hooks.json +2 -2
- package/packages/omo-codex/plugin/components/lsp/package.json +1 -1
- package/packages/omo-codex/plugin/components/rules/README.md +0 -1
- package/packages/omo-codex/plugin/components/rules/bundled-rules/hephaestus/gpt-5.5.md +1 -1
- package/packages/omo-codex/plugin/components/rules/bundled-rules/hephaestus/gpt-5.6.md +1 -1
- package/packages/omo-codex/plugin/components/rules/bundled-rules/hephaestus/gpt-6.md +1 -1
- package/packages/omo-codex/plugin/components/rules/hooks/hooks.json +4 -4
- package/packages/omo-codex/plugin/components/rules/package.json +1 -1
- package/packages/omo-codex/plugin/components/teammode/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/teammode/package.json +1 -1
- package/packages/omo-codex/plugin/components/telemetry/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/telemetry/package.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/dist/cli.js +25 -18
- package/packages/omo-codex/plugin/components/ultrawork/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/package.json +1 -1
- package/packages/omo-codex/plugin/components/ultrawork/src/directive-content.ts +1 -1
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/hooks/hooks.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-execute-continuation/package.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/directive.md +25 -18
- package/packages/omo-codex/plugin/components/ulw-loop/hooks/hooks.json +5 -5
- package/packages/omo-codex/plugin/components/ulw-loop/package.json +1 -1
- package/packages/omo-codex/plugin/components/ulw-loop/test/spawn-role-matrix.test.ts +16 -0
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-git-bash-mcp-reminder.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-lsp-diagnostics-cache.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-compact-resetting-project-rule-cache.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-comments.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-lsp-diagnostics.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-checking-thread-title-hygiene.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-matching-project-rules.json +1 -1
- package/packages/omo-codex/plugin/hooks/post-tool-use-recording-spawn-admission.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-enforcing-unlimited-goal-budget.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-guarding-ulw-loop-spawns.json +1 -1
- package/packages/omo-codex/plugin/hooks/pre-tool-use-recommending-git-bash-mcp.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-checking-auto-update.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-checking-bootstrap-provisioning.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-loading-project-rules.json +1 -1
- package/packages/omo-codex/plugin/hooks/session-start-recording-session-telemetry.json +1 -1
- package/packages/omo-codex/plugin/hooks/stop-checking-ulw-execute-continuation.json +1 -1
- package/packages/omo-codex/plugin/hooks/stop-checking-ulw-loop-resume.json +1 -1
- package/packages/omo-codex/plugin/hooks/subagent-stop-verifying-lazycodex-executor-evidence.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ultrawork-trigger.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-checking-ulw-loop-steering.json +1 -1
- package/packages/omo-codex/plugin/hooks/user-prompt-submit-loading-project-rules.json +1 -1
- package/packages/omo-codex/plugin/package-lock.json +12 -12
- package/packages/omo-codex/plugin/package.json +1 -1
- package/packages/omo-codex/plugin/skills/browser/runtime/omowright/manifest.json +1 -1
- package/packages/omo-codex/plugin/skills/ultrawork/SKILL.md +25 -18
- package/packages/omo-codex/plugin/skills/ulw-execute/SKILL.md +1 -1
- package/packages/omo-codex/scripts/install-dist/install-local.mjs +9 -2
- package/packages/prompts-core/prompts/ultrawork/codex.md +25 -18
- package/packages/shared-skills/skills/browser/runtime/omowright/manifest.json +1 -1
- package/packages/shared-skills/skills/ulw-execute/SKILL.md +1 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sisyphuslabs/omo-codex-plugin",
|
|
3
|
-
"version": "5.1.
|
|
3
|
+
"version": "5.1.7",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@sisyphuslabs/omo-codex-plugin",
|
|
9
|
-
"version": "5.1.
|
|
9
|
+
"version": "5.1.7",
|
|
10
10
|
"workspaces": [
|
|
11
11
|
"components/comment-checker",
|
|
12
12
|
"components/git-bash",
|
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
},
|
|
96
96
|
"components/comment-checker": {
|
|
97
97
|
"name": "@code-yeongyu/codex-comment-checker",
|
|
98
|
-
"version": "5.1.
|
|
98
|
+
"version": "5.1.7",
|
|
99
99
|
"license": "MIT",
|
|
100
100
|
"bin": {
|
|
101
101
|
"omo-comment-checker": "dist/cli.js"
|
|
@@ -117,7 +117,7 @@
|
|
|
117
117
|
},
|
|
118
118
|
"components/git-bash": {
|
|
119
119
|
"name": "@sisyphuslabs/codex-git-bash-hook",
|
|
120
|
-
"version": "5.1.
|
|
120
|
+
"version": "5.1.7",
|
|
121
121
|
"bin": {
|
|
122
122
|
"omo-git-bash-hook": "dist/cli.js"
|
|
123
123
|
},
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
},
|
|
132
132
|
"components/lazycodex-executor-verify": {
|
|
133
133
|
"name": "@code-yeongyu/codex-lazycodex-executor-verify",
|
|
134
|
-
"version": "5.1.
|
|
134
|
+
"version": "5.1.7",
|
|
135
135
|
"license": "MIT",
|
|
136
136
|
"bin": {
|
|
137
137
|
"lazycodex-executor-verify": "dist/cli.js"
|
|
@@ -149,7 +149,7 @@
|
|
|
149
149
|
},
|
|
150
150
|
"components/lsp": {
|
|
151
151
|
"name": "@code-yeongyu/codex-lsp",
|
|
152
|
-
"version": "5.1.
|
|
152
|
+
"version": "5.1.7",
|
|
153
153
|
"license": "MIT",
|
|
154
154
|
"dependencies": {
|
|
155
155
|
"@code-yeongyu/lsp-daemon": "file:../../../../lsp-daemon",
|
|
@@ -171,7 +171,7 @@
|
|
|
171
171
|
},
|
|
172
172
|
"components/rules": {
|
|
173
173
|
"name": "@code-yeongyu/codex-rules",
|
|
174
|
-
"version": "5.1.
|
|
174
|
+
"version": "5.1.7",
|
|
175
175
|
"license": "MIT",
|
|
176
176
|
"dependencies": {
|
|
177
177
|
"picomatch": "^4.0.7"
|
|
@@ -194,7 +194,7 @@
|
|
|
194
194
|
},
|
|
195
195
|
"components/teammode": {
|
|
196
196
|
"name": "@sisyphuslabs/codex-teammode",
|
|
197
|
-
"version": "5.1.
|
|
197
|
+
"version": "5.1.7",
|
|
198
198
|
"devDependencies": {
|
|
199
199
|
"@types/node": "^26.6.2",
|
|
200
200
|
"@vitest/coverage-v8": "5.0.1",
|
|
@@ -208,7 +208,7 @@
|
|
|
208
208
|
},
|
|
209
209
|
"components/telemetry": {
|
|
210
210
|
"name": "@code-yeongyu/codex-telemetry",
|
|
211
|
-
"version": "5.1.
|
|
211
|
+
"version": "5.1.7",
|
|
212
212
|
"license": "MIT",
|
|
213
213
|
"bin": {
|
|
214
214
|
"omo-telemetry": "dist/cli.js"
|
|
@@ -227,7 +227,7 @@
|
|
|
227
227
|
},
|
|
228
228
|
"components/ultrawork": {
|
|
229
229
|
"name": "@code-yeongyu/codex-ultrawork",
|
|
230
|
-
"version": "5.1.
|
|
230
|
+
"version": "5.1.7",
|
|
231
231
|
"license": "MIT",
|
|
232
232
|
"bin": {
|
|
233
233
|
"omo-ultrawork": "dist/cli.js"
|
|
@@ -246,7 +246,7 @@
|
|
|
246
246
|
},
|
|
247
247
|
"components/ulw-execute-continuation": {
|
|
248
248
|
"name": "@code-yeongyu/codex-ulw-execute-continuation",
|
|
249
|
-
"version": "5.1.
|
|
249
|
+
"version": "5.1.7",
|
|
250
250
|
"license": "MIT",
|
|
251
251
|
"bin": {
|
|
252
252
|
"omo-ulw-execute-continuation": "dist/cli.js"
|
|
@@ -264,7 +264,7 @@
|
|
|
264
264
|
},
|
|
265
265
|
"components/ulw-loop": {
|
|
266
266
|
"name": "@code-yeongyu/codex-ulw-loop",
|
|
267
|
-
"version": "5.1.
|
|
267
|
+
"version": "5.1.7",
|
|
268
268
|
"license": "MIT",
|
|
269
269
|
"bin": {
|
|
270
270
|
"omo-ulw-loop": "dist/cli.js",
|
|
@@ -293,17 +293,17 @@ Until every success criterion PASSES with its evidence captured:
|
|
|
293
293
|
vars. Append a one-line cleanup receipt to the notepad next to the
|
|
294
294
|
artifact, e.g. `cleanup: killed 12345; tmux kill-session ulw-qa-foo;
|
|
295
295
|
rm -rf /tmp/ulw.aB12cD`. No receipt → criterion stays in_progress.
|
|
296
|
-
6. Verify: LSP diagnostics clean on changed files
|
|
297
|
-
|
|
298
|
-
turn). Re-run a validation command (suite, typecheck, build) only
|
|
299
|
-
when its inputs changed since its last green run; ONE full-suite
|
|
300
|
-
pass belongs immediately before the final message, not after
|
|
301
|
-
every increment.
|
|
296
|
+
6. Verify: LSP diagnostics clean on changed files; no test skipped or
|
|
297
|
+
xfail-ed this turn.
|
|
302
298
|
7. Mark completed. Append non-obvious findings / learnings.
|
|
303
|
-
8.
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
299
|
+
8. Evidence stays valid per target until an input changes; record with
|
|
300
|
+
each artifact the commit and what it exercised. After each increment
|
|
301
|
+
rerun what moved — the tests of every touched file and of the files
|
|
302
|
+
that import it, the scenarios that exercise them, anything whose
|
|
303
|
+
dependencies or environment changed — and cite the capture for the
|
|
304
|
+
rest. The full set (scenarios, suite, typecheck, build) runs once
|
|
305
|
+
more right before the final message. Record PASS/FAIL beside each
|
|
306
|
+
artifact. Loop until all PASS.
|
|
307
307
|
|
|
308
308
|
Within a step, follow Finding things; READ before CHANGE, never in
|
|
309
309
|
parallel with it.
|
|
@@ -406,13 +406,12 @@ When triggered, follow this procedure (NON-NEGOTIABLE):
|
|
|
406
406
|
it names a success criterion the evidence fails; record concerns
|
|
407
407
|
that cite no criterion as notes with a one-line reason — fixed or
|
|
408
408
|
declined at your judgment.
|
|
409
|
-
3. Fix every criterion-cited blocker
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
notes counts as approval.
|
|
409
|
+
3. Fix every criterion-cited blocker; rerun per Execution loop step 8
|
|
410
|
+
and update the notepad.
|
|
411
|
+
4. Spawn a NEW reviewer for each re-review, at most twice, passing only
|
|
412
|
+
the delta diff, the blockers the last one cited, and the
|
|
413
|
+
already-approved criteria marked out-of-scope. An approval whose only
|
|
414
|
+
remaining items are notes counts as approval.
|
|
416
415
|
5. On approval, declare done. If criterion-cited blockers remain after
|
|
417
416
|
two re-reviews, stop and surface them to the user (mirroring the
|
|
418
417
|
2-attempt stop rule below) — do not loop further.
|
|
@@ -437,7 +436,15 @@ commits this session — then stage + draft the message instead.
|
|
|
437
436
|
for the regression it names is NOT evidence: mock-call assertions,
|
|
438
437
|
pinned constants, a fixture equal to the default it must override,
|
|
439
438
|
an expected value re-derived from the output under test.
|
|
440
|
-
-
|
|
439
|
+
- Make the smallest correct change per unit, and fix in THIS run every
|
|
440
|
+
defect inside the change's blast radius — the request not delivered,
|
|
441
|
+
a regression this change introduces, an invalid proof, a failing test
|
|
442
|
+
or stale doc of code you touched — as registered work (todo plus
|
|
443
|
+
success criterion) to the ideal state. A defect outside it gets a
|
|
444
|
+
tracked issue with reproduction and evidence and a line in the final
|
|
445
|
+
message; a deferral never turns a criterion into PASS. Keep delegated
|
|
446
|
+
unit scope hard: the worker reports, the orchestrator registers or
|
|
447
|
+
files.
|
|
441
448
|
- Never suppress lints / errors / test failures. Never delete, skip,
|
|
442
449
|
`.only`, `.skip`, `xfail`, or comment out tests to green the suite.
|
|
443
450
|
- Never claim done from inference — only from captured evidence.
|
|
@@ -62,7 +62,7 @@ Do ALL of this immediately after the plan is selected, BEFORE the first implemen
|
|
|
62
62
|
|
|
63
63
|
1. **Set the goal, in detail.** When a goal tool is available (`create_goal`), call it with a DETAILED objective: the plan name and path, the concrete end state, the phase and task counts, the delivery mode (direct, `--make-pr`, or `--ship`), and how completion will be verified. One work session = one registered goal (the goal tool holds one active goal); each phase then carries its own concrete goal — the ledger entry Phase 2 records before the wave's first dispatch, defined from the previous phase's landed and verified evidence. No goal tool -> record the same objective as the first ledger entry.
|
|
64
64
|
2. **Register every phase and task as todos.** Mirror the plan into the todo/plan tool of your harness: one phase per plan wave, one todo per column-zero checkbox (including the final verification wave). Register ALL of them up front - never keep tasks in memory only.
|
|
65
|
-
3. **Keep them current at every moment.** Mark a todo in_progress when its work dispatches and done immediately after its verification passes. Never batch-complete at the end, never execute work that is not a registered todo; discovered work — a
|
|
65
|
+
3. **Keep them current at every moment.** Mark a todo in_progress when its work dispatches and done immediately after its verification passes. Never batch-complete at the end, never execute work that is not a registered todo; discovered work inside the change's blast radius — the request not delivered, a regression this change introduces, an invalid proof, a failing test or stale doc of touched code — is appended to the plan as a checkbox, mirrored as a todo before it runs, and fixed to the ideal state; a defect outside it gets a tracked issue with reproduction and evidence and a line in the final report. A worker that meets a defect outside its assigned files reports it instead of fixing it; only the orchestrator appends the checkbox and dispatches it to a correctly scoped unit. The todo list, Boulder state, and plan checkboxes must always tell the same story.
|
|
66
66
|
|
|
67
67
|
## Phase 1: Select the plan
|
|
68
68
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
// omo-codex-install:
|
|
2
|
+
// omo-codex-install:36a2cdbddec650930467b3965504e73ddeb3d82f229071008f1296a9498fe265:249413365bf0de355352ccfffc9c04669f220c439ce18a287a5bf27105c0f72d
|
|
3
3
|
var __esm = (fn, res, err) => () => {
|
|
4
4
|
if (fn)
|
|
5
5
|
try {
|
|
@@ -9984,7 +9984,7 @@ var package_default;
|
|
|
9984
9984
|
var init_package = __esm(() => {
|
|
9985
9985
|
package_default = {
|
|
9986
9986
|
name: "@oh-my-opencode/omo-codex",
|
|
9987
|
-
version: "5.1.
|
|
9987
|
+
version: "5.1.7",
|
|
9988
9988
|
type: "module",
|
|
9989
9989
|
private: true,
|
|
9990
9990
|
description: "Codex harness adapter for oh-my-openagent. Vendored Codex plugin namespace (omo) + TypeScript installer + telemetry.",
|
|
@@ -12529,6 +12529,12 @@ ${featureName} = true
|
|
|
12529
12529
|
}
|
|
12530
12530
|
return replaceOrInsertSetting(config, section, featureName, "true");
|
|
12531
12531
|
}
|
|
12532
|
+
function removeFeature(config, featureName) {
|
|
12533
|
+
const section = findTomlSection(config, "features");
|
|
12534
|
+
if (section !== null)
|
|
12535
|
+
return removeSetting(config, section, featureName);
|
|
12536
|
+
return removeRootSetting(config, `features.${featureName}`);
|
|
12537
|
+
}
|
|
12532
12538
|
|
|
12533
12539
|
// packages/omo-codex/src/install/codex-config-marketplaces.ts
|
|
12534
12540
|
var SISYPHUS_LEGACY_MARKETPLACES = ["lazycodex", "code-yeongyu-codex-plugins"];
|
|
@@ -13121,6 +13127,7 @@ async function updateCodexConfig(input) {
|
|
|
13121
13127
|
config = ensureFeatureEnabled(config, "plugins");
|
|
13122
13128
|
config = ensureFeatureEnabled(config, "plugin_hooks");
|
|
13123
13129
|
config = ensureFeatureEnabled(config, "multi_agent");
|
|
13130
|
+
config = removeFeature(config, "child_agents_md");
|
|
13124
13131
|
config = removeUnsupportedCodexMultiAgentModeConfig(config);
|
|
13125
13132
|
config = ensureCodexReasoningConfig(config, applyReasoningOverride(await readCodexModelCatalog(input.repoRoot), input.reasoning));
|
|
13126
13133
|
config = ensureCodexMultiAgentV2Config(config, {
|
|
@@ -286,17 +286,17 @@ Until every success criterion PASSES with its evidence captured:
|
|
|
286
286
|
vars. Append a one-line cleanup receipt to the notepad next to the
|
|
287
287
|
artifact, e.g. `cleanup: killed 12345; tmux kill-session ulw-qa-foo;
|
|
288
288
|
rm -rf /tmp/ulw.aB12cD`. No receipt → criterion stays in_progress.
|
|
289
|
-
6. Verify: LSP diagnostics clean on changed files
|
|
290
|
-
|
|
291
|
-
turn). Re-run a validation command (suite, typecheck, build) only
|
|
292
|
-
when its inputs changed since its last green run; ONE full-suite
|
|
293
|
-
pass belongs immediately before the final message, not after
|
|
294
|
-
every increment.
|
|
289
|
+
6. Verify: LSP diagnostics clean on changed files; no test skipped or
|
|
290
|
+
xfail-ed this turn.
|
|
295
291
|
7. Mark completed. Append non-obvious findings / learnings.
|
|
296
|
-
8.
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
292
|
+
8. Evidence stays valid per target until an input changes; record with
|
|
293
|
+
each artifact the commit and what it exercised. After each increment
|
|
294
|
+
rerun what moved — the tests of every touched file and of the files
|
|
295
|
+
that import it, the scenarios that exercise them, anything whose
|
|
296
|
+
dependencies or environment changed — and cite the capture for the
|
|
297
|
+
rest. The full set (scenarios, suite, typecheck, build) runs once
|
|
298
|
+
more right before the final message. Record PASS/FAIL beside each
|
|
299
|
+
artifact. Loop until all PASS.
|
|
300
300
|
|
|
301
301
|
Within a step, follow Finding things; READ before CHANGE, never in
|
|
302
302
|
parallel with it.
|
|
@@ -399,13 +399,12 @@ When triggered, follow this procedure (NON-NEGOTIABLE):
|
|
|
399
399
|
it names a success criterion the evidence fails; record concerns
|
|
400
400
|
that cite no criterion as notes with a one-line reason — fixed or
|
|
401
401
|
declined at your judgment.
|
|
402
|
-
3. Fix every criterion-cited blocker
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
notes counts as approval.
|
|
402
|
+
3. Fix every criterion-cited blocker; rerun per Execution loop step 8
|
|
403
|
+
and update the notepad.
|
|
404
|
+
4. Spawn a NEW reviewer for each re-review, at most twice, passing only
|
|
405
|
+
the delta diff, the blockers the last one cited, and the
|
|
406
|
+
already-approved criteria marked out-of-scope. An approval whose only
|
|
407
|
+
remaining items are notes counts as approval.
|
|
409
408
|
5. On approval, declare done. If criterion-cited blockers remain after
|
|
410
409
|
two re-reviews, stop and surface them to the user (mirroring the
|
|
411
410
|
2-attempt stop rule below) — do not loop further.
|
|
@@ -430,7 +429,15 @@ commits this session — then stage + draft the message instead.
|
|
|
430
429
|
for the regression it names is NOT evidence: mock-call assertions,
|
|
431
430
|
pinned constants, a fixture equal to the default it must override,
|
|
432
431
|
an expected value re-derived from the output under test.
|
|
433
|
-
-
|
|
432
|
+
- Make the smallest correct change per unit, and fix in THIS run every
|
|
433
|
+
defect inside the change's blast radius — the request not delivered,
|
|
434
|
+
a regression this change introduces, an invalid proof, a failing test
|
|
435
|
+
or stale doc of code you touched — as registered work (todo plus
|
|
436
|
+
success criterion) to the ideal state. A defect outside it gets a
|
|
437
|
+
tracked issue with reproduction and evidence and a line in the final
|
|
438
|
+
message; a deferral never turns a criterion into PASS. Keep delegated
|
|
439
|
+
unit scope hard: the worker reports, the orchestrator registers or
|
|
440
|
+
files.
|
|
434
441
|
- Never suppress lints / errors / test failures. Never delete, skip,
|
|
435
442
|
`.only`, `.skip`, `xfail`, or comment out tests to green the suite.
|
|
436
443
|
- Never claim done from inference — only from captured evidence.
|
|
@@ -53,7 +53,7 @@ Do ALL of this immediately after the plan is selected, BEFORE the first implemen
|
|
|
53
53
|
|
|
54
54
|
1. **Set the goal, in detail.** When a goal tool is available (`create_goal`), call it with a DETAILED objective: the plan name and path, the concrete end state, the phase and task counts, the delivery mode (direct, `--make-pr`, or `--ship`), and how completion will be verified. One work session = one registered goal (the goal tool holds one active goal); each phase then carries its own concrete goal — the ledger entry Phase 2 records before the wave's first dispatch, defined from the previous phase's landed and verified evidence. No goal tool -> record the same objective as the first ledger entry.
|
|
55
55
|
2. **Register every phase and task as todos.** Mirror the plan into the todo/plan tool of your harness: one phase per plan wave, one todo per column-zero checkbox (including the final verification wave). Register ALL of them up front - never keep tasks in memory only.
|
|
56
|
-
3. **Keep them current at every moment.** Mark a todo in_progress when its work dispatches and done immediately after its verification passes. Never batch-complete at the end, never execute work that is not a registered todo; discovered work — a
|
|
56
|
+
3. **Keep them current at every moment.** Mark a todo in_progress when its work dispatches and done immediately after its verification passes. Never batch-complete at the end, never execute work that is not a registered todo; discovered work inside the change's blast radius — the request not delivered, a regression this change introduces, an invalid proof, a failing test or stale doc of touched code — is appended to the plan as a checkbox, mirrored as a todo before it runs, and fixed to the ideal state; a defect outside it gets a tracked issue with reproduction and evidence and a line in the final report. A worker that meets a defect outside its assigned files reports it instead of fixing it; only the orchestrator appends the checkbox and dispatches it to a correctly scoped unit. The todo list, Boulder state, and plan checkboxes must always tell the same story.
|
|
57
57
|
|
|
58
58
|
## Phase 1: Select the plan
|
|
59
59
|
|