wogiflow 2.3.0 → 2.3.2

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.
@@ -148,6 +148,22 @@ This means after creating an epic with stories, you don't need to manually start
148
148
 
149
149
  **To disable**: Set `config.bulkOrchestrator.enabled: false`
150
150
 
151
+ ## Anti-Deferral Rule (MANDATORY)
152
+
153
+ **When creating an epic from user input, EVERY item the user provided MUST become a tracked story.**
154
+
155
+ You must NEVER:
156
+ - Create stories for items 1-5 and silently skip items 6-9 because you judged them as "enhancements"
157
+ - Label items as "deferred" or "long-term" and exclude them from the epic
158
+ - Apply your own priority filter to decide which items deserve tasks
159
+
160
+ You MAY:
161
+ - Assign different priorities (P0/P1/P2/P3) to stories — but ALL items get stories
162
+ - Suggest an execution order — but ALL items are tracked in the epic
163
+ - Ask the user "Should I defer items 6-9?" — explicit user consent is the ONLY valid reason to exclude items
164
+
165
+ **If the user provides 9 items, the epic MUST contain 9 stories (or items grouped into stories where every item appears as an acceptance criterion). Verify this with a reconciliation count before proceeding.**
166
+
151
167
  ## Tips
152
168
 
153
169
  - **Start with epics for major features** - Break down into stories before implementation
@@ -67,9 +67,11 @@ When invoked with a **quoted request** instead of a task ID, assess intent and r
67
67
 
68
68
  ### Request Categories
69
69
 
70
- **Conversational follow-ups** ("yes", "go ahead", "option 2", "no", "skip that"):
70
+ **Conversational follow-ups** ("yes", "go ahead", "continue", "option 2", "no", "skip that"):
71
71
  Look back at conversation for the pending question/proposal. Execute the implied action (affirmative) or acknowledge and ask what to do instead (negative).
72
72
 
73
+ **"Continue" after task completion**: When the user says "continue" after a task finishes and there are more tasks in `ready.json` → **start the next task immediately**. Do NOT invoke `/wogi-pre-compact`, do NOT output a compaction summary, do NOT ask about context. Just start the next task. Compaction is the system's job — it happens automatically when needed.
74
+
73
75
  **Failed local `/wogi-*` command** (error output containing a `/wogi-*` command name):
74
76
  When a local `/wogi-*` CLI command fails (error in output, "Unknown skill", command not found), the AI MUST:
75
77
  1. **Stop current work** — user actions always take priority over in-progress AI work
@@ -192,6 +194,8 @@ Item Reconciliation:
192
194
 
193
195
  **Skip when**: Input has only 1-2 items, or is a task ID reference.
194
196
 
197
+ **ANTI-DEFERRAL ENFORCEMENT**: After reconciliation, verify ALL items became tasks/criteria. If you find yourself writing "deferred", "skipped", or "not created" for ANY item — STOP. You are violating the anti-deferral rule. The user provided these items for a reason. Create tasks for ALL of them. You may suggest priority ordering (P0-P3), but you must NEVER autonomously filter items out. A large ready queue is correct behavior. A filtered queue is data loss that breaks the user's trust.
198
+
195
199
  ### Step 1.3: Explore Phase (MANDATORY Multi-Agent Research)
196
200
 
197
201
  **For L2+ tasks. Research is MANDATORY** — do NOT skip even if you think you know the answer.
@@ -497,7 +501,7 @@ Reflection: "Have I introduced any bugs or regressions?"
497
501
 
498
502
  **Quality gate keeps failing**: Report, attempt fix, after 3 failures suggest `/wogi-debug-hypothesis`.
499
503
 
500
- **Context too large**: When `config.autoCompact.betweenTasks` is true (default), compact AUTOMATICALLY between tasks — do NOT ask the user. Just do it. Mid-task: commit progress, invoke `/wogi-pre-compact` directly (don't suggestexecute).
504
+ **Context too large**: When `config.autoCompact.betweenTasks` is true (default), compact AUTOMATICALLY between tasks — do NOT ask the user, do NOT show a summary, do NOT invoke `/wogi-pre-compact`. Just compact silently and continue with the next task. The PostCompact hook restores all state automatically. Mid-task: commit progress, compact silently, resume from checkpoint. The user should never see compaction happen it's invisible infrastructure.
501
505
 
502
506
  ## Progress Tracking (MANDATORY for L1+ tasks)
503
507
 
@@ -191,6 +191,31 @@ cat .workflow/state/decisions.md # Project rules
191
191
 
192
192
  **These apply to ALL implementation work:**
193
193
 
194
+ ### Anti-Deferral Rule (MANDATORY — ZERO TOLERANCE)
195
+
196
+ **You MUST NEVER autonomously defer, skip, deprioritize, or drop items from the user's input.**
197
+
198
+ If the user provides N items, ALL N must become tracked work items. No exceptions. No judgment calls about what's "important" vs. "enhancement" vs. "long-term."
199
+
200
+ **Anti-Deferral Checklist** — If ANY of these thoughts cross your mind, you are about to drop items:
201
+ - "Items 6-9 are enhancements, I'll focus on the fixes first" → WRONG. Create tasks for ALL items.
202
+ - "This one was labeled 'long-term' by the team" → WRONG. Track it. The user decides when to execute, not you.
203
+ - "I'll defer these as lower priority" → WRONG. You may SUGGEST a priority order, but every item must be a tracked task.
204
+ - "The ready queue would be too large" → WRONG. A large queue is correct. A filtered queue is data loss.
205
+ - "I already created the important ones" → WRONG. Important is not your call. Create ALL of them.
206
+
207
+ **What you MAY do:**
208
+ - Suggest a priority order (P0/P1/P2/P3) — but ALL items get tasks regardless of priority
209
+ - Group related items into stories — but every item must appear as a criterion in at least one story
210
+ - Ask the user to confirm scope — but do NOT preemptively filter
211
+
212
+ **What you must NEVER do:**
213
+ - Silently drop items because you judged them as "enhancements" or "nice-to-haves"
214
+ - Create tasks for only a subset of items without explicit user approval to defer the rest
215
+ - Use words like "deferred", "skipped", or "not created" for items the user provided
216
+
217
+ **This rule applies everywhere**: `/wogi-start`, `/wogi-story`, `/wogi-epics`, `/wogi-extract-review`, and any other command that converts user input into tracked work.
218
+
194
219
  ### Task ID Format (MANDATORY)
195
220
 
196
221
  All task IDs MUST be generated by `generateTaskId()` from `wogiflow/scripts/flow-utils.js`. **Never manually type a task ID.**
@@ -282,7 +307,11 @@ Before closing any task, ensure all required gates pass (per `config.json → qu
282
307
 
283
308
  ## Context Management
284
309
 
285
- Context compaction happens automatically WogiFlow persists all critical state to disk continuously, and the PostCompact hook restores it after compaction. You do NOT need to manually run `/wogi-pre-compact` before compaction.
310
+ Context compaction happens **automatically and silently**. The user must NEVER be bothered with compaction. WogiFlow persists all critical state to disk continuously, and the PostCompact hook restores it after compaction.
311
+
312
+ **NEVER invoke `/wogi-pre-compact` proactively.** Only run it when the user explicitly asks to compact or save context. When the user says "continue", "go ahead", or "keep going" — that means **start the next task**, not compact. Compaction is the SYSTEM's job, not yours.
313
+
314
+ **Anti-pattern you MUST avoid**: User says "continue" → you decide context is getting large → you invoke `/wogi-pre-compact` → you output a long summary → you ask the user to `/compact`. This is WRONG. The user said "continue" — start the next task immediately.
286
315
 
287
316
  **What survives compaction automatically** (via PostCompact hook + state files):
288
317
  - Active task ID, title, type, and acceptance criteria
@@ -292,9 +321,13 @@ Context compaction happens automatically — WogiFlow persists all critical stat
292
321
  - Last request-log entry number
293
322
  - Routing enforcement (re-armed automatically)
294
323
 
295
- **`/wogi-pre-compact` is optional** use it only when you want a detailed summary for a very long session. It is NOT required for state safety.
324
+ **When auto-compaction triggers mid-session**: The system handles it. The PostCompact hook reloads state. You resume working on the next task from `ready.json`. No user interaction needed.
325
+
326
+ **The ONLY times to invoke `/wogi-pre-compact`**:
327
+ - User explicitly says "compact", "save context", or "running low on context"
328
+ - `config.autoCompact.betweenTasks` is true AND you're between tasks AND context is above threshold — but even then, just compact silently and continue, don't ask
296
329
 
297
- **For L1+ tasks**: The pre-task context estimator (Step 0.25) checks if the task fits in remaining context. If it doesn't → compact BEFORE starting to avoid mid-task compaction.
330
+ **For L1+ tasks**: The pre-task context estimator (Step 0.25) checks if the task fits in remaining context. If it doesn't → compact silently and continue, do NOT ask the user.
298
331
 
299
332
  ## Compact Instructions
300
333
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wogiflow",
3
- "version": "2.3.0",
3
+ "version": "2.3.2",
4
4
  "description": "AI-powered development workflow management system with multi-model support",
5
5
  "main": "lib/index.js",
6
6
  "bin": {