opencode-orchestrator 0.9.0 → 0.9.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 (2) hide show
  1. package/dist/index.js +54 -38
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -13290,65 +13290,81 @@ At the START of each loop iteration, Commander MUST read shared state:
13290
13290
 
13291
13291
  ### Step 1: Read Work Status
13292
13292
  \`\`\`bash
13293
- # Check current work status
13294
13293
  cat ${PATHS.WORK_LOG}
13294
+ cat ${PATHS.TODO}
13295
13295
  \`\`\`
13296
13296
 
13297
13297
  ### Step 2: Check for Sync Issues
13298
13298
  \`\`\`bash
13299
- # Check if Reviewer reported sync issues
13300
13299
  cat ${PATHS.SYNC_ISSUES} 2>/dev/null || echo "No sync issues"
13301
13300
  \`\`\`
13302
13301
 
13303
- ### Step 3: Check Integration Status
13304
- \`\`\`bash
13305
- # Check integration test results
13306
- cat ${PATHS.INTEGRATION_STATUS} 2>/dev/null || echo "No integration yet"
13307
- \`\`\`
13302
+ ---
13308
13303
 
13309
- ### Step 4: Decision Matrix
13304
+ ## \u26A0\uFE0F SEALED CONDITIONS (CRITICAL!)
13310
13305
 
13311
- | work-log.md | sync-issues.md | Action |
13312
- |-------------|----------------|--------|
13313
- | Active workers | Any | Wait, monitor progress |
13314
- | All [x] | Empty | Proceed to SEAL check |
13315
- | All [x] | Has issues | Dispatch ${AGENT_NAMES.WORKER} to fix |
13316
- | Has unchecked | Any | Continue execution |
13306
+ ### SEALED = BOTH must be true:
13307
+ \`\`\`
13308
+ \u2705 TODO: ALL items [x] checked
13309
+ \u2705 sync-issues: EMPTY (no unresolved issues)
13310
+ \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
13311
+ ONLY THEN \u2192 output <mission_seal>SEALED</mission_seal>
13312
+ \`\`\`
13317
13313
 
13318
- ### Step 5: File-Level Task Assignment
13319
- When dispatching work, assign at FILE LEVEL:
13320
- \`\`\`markdown
13321
- ## TODO Format for Parallel Workers:
13322
- - [ ] S1.1: Implement \`src/auth/login.ts\` | agent:${AGENT_NAMES.WORKER} | file:src/auth/login.ts
13323
- - [ ] S1.2: Implement \`src/auth/logout.ts\` | agent:${AGENT_NAMES.WORKER} | file:src/auth/logout.ts
13314
+ ### LOOP BACK = ANY of these:
13315
+ \`\`\`
13316
+ \u274C TODO has unchecked items \u2192 LOOP
13317
+ \u274C sync-issues.md is NOT empty \u2192 LOOP
13318
+ \u274C Build fails \u2192 LOOP
13319
+ \u274C E2E test fails \u2192 LOOP
13324
13320
  \`\`\`
13325
13321
 
13326
- Each ${AGENT_NAMES.WORKER} gets ONE file:
13327
- - Isolation guaranteed
13328
- - TDD happens per file
13329
- - Unit test created & deleted per file
13322
+ ### \u26D4 NEVER SEAL IF:
13323
+ - TODO is complete BUT sync-issues has content
13324
+ - Workers are still active
13325
+ - Build or E2E tests failed
13326
+
13327
+ ---
13328
+
13329
+ ## \u{1F504} E2E Test Timing
13330
+
13331
+ E2E tests start when **TODO is nearly complete** (not at the very end):
13332
+ - Reviewer begins E2E when most tasks are done
13333
+ - E2E runs **parallel** with remaining TODO items
13334
+ - If E2E finds errors \u2192 record in sync-issues.md \u2192 continue with TODO
13335
+ - This allows catching integration issues early
13330
13336
 
13331
- ### Step 6: Parallel Dispatch
13332
13337
  \`\`\`
13333
- delegate_task(S1.1, ${AGENT_NAMES.WORKER}, background: true)
13334
- delegate_task(S1.2, ${AGENT_NAMES.WORKER}, background: true)
13335
- delegate_task(S1.3, ${AGENT_NAMES.WORKER}, background: true)
13336
- // All run in PARALLEL
13338
+ Timeline:
13339
+ [---TODO progress---] [E2E starts here---]
13340
+ \u2193
13341
+ TODO + E2E run in parallel
13342
+ \u2193
13343
+ Both must complete cleanly \u2192 SEALED
13337
13344
  \`\`\`
13338
13345
 
13339
- ### Step 7: After Workers Complete
13346
+ ---
13347
+
13348
+ ### Decision Matrix
13349
+
13350
+ | TODO | sync-issues.md | Action |
13351
+ |------|----------------|--------|
13352
+ | Has unchecked | Any | Continue work |
13353
+ | All [x] | NOT empty | \u267B\uFE0F LOOP - fix issues first |
13354
+ | All [x] | Empty | \u2705 SEALED |
13355
+
13356
+ ### File-Level Task Assignment
13357
+ Each ${AGENT_NAMES.WORKER} gets ONE file for isolation:
13340
13358
  \`\`\`
13341
- delegate_task(VERIFY_ALL, ${AGENT_NAMES.REVIEWER}, background: false)
13342
- // Reviewer checks all completed units
13343
- // Reviewer runs integration test
13344
- // Reviewer updates TODO or reports sync issues
13359
+ delegate_task(file:src/auth/login.ts, ${AGENT_NAMES.WORKER}, background: true)
13360
+ delegate_task(file:src/auth/logout.ts, ${AGENT_NAMES.WORKER}, background: true)
13345
13361
  \`\`\`
13346
13362
 
13347
- ### CRITICAL LOOP RULES:
13348
- - ALWAYS read ${PATHS.WORK_LOG} at loop start
13363
+ ### CRITICAL RULES:
13364
+ - ALWAYS read ${PATHS.TODO} AND ${PATHS.SYNC_ISSUES} at loop start
13365
+ - NEVER seal with sync-issues content (even if TODO is done!)
13349
13366
  - NEVER seal with active workers
13350
- - NEVER seal with unresolved sync issues
13351
- - File-level assignment = proper isolation
13367
+ - E2E starts near TODO completion, runs parallel
13352
13368
  ${PROMPT_TAGS.LOOP_CONTINUATION.close}`;
13353
13369
 
13354
13370
  // src/agents/prompts/commander/sync-handling.ts
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "opencode-orchestrator",
3
3
  "displayName": "OpenCode Orchestrator",
4
4
  "description": "Distributed Cognitive Architecture for OpenCode. Turns simple prompts into specialized multi-agent workflows (Planner, Coder, Reviewer).",
5
- "version": "0.9.0",
5
+ "version": "0.9.1",
6
6
  "author": "agnusdei1207",
7
7
  "license": "MIT",
8
8
  "repository": {