$npx -y skills add techygarg/lattice --skill collaborative-judgmentProtocol for handling ambiguous decisions and missing/conflicting knowledge during code generation, design, and review. Ensures AI surfaces genuine judgment calls with structured options and stops on hallucination risk instead of silently assuming. Use when a decision has multipl
| 1 | # Collaborative Judgment |
| 2 | |
| 3 | ## When Decide vs When Ask |
| 4 | |
| 5 | Most decision NOT ambiguous. AI decide when: |
| 6 | |
| 7 | - **Rule clear.** 80-line function doing 5 things violate SRP. Domain entity import database break dependency rule. Fix. |
| 8 | - **Project documented preference.** Knowledge base, refiner docs, context anchor specify choice -- follow. Not ambiguity, documented intent. |
| 9 | - **Low-impact.** Variable naming, import order, test data -- choose, move on. |
| 10 | - **Grounding solid.** Can point to source: user instruction, inspected code/artifact, failing test/log, knowledge base, refiner doc, context anchor. No repo-specific fact from memory alone. |
| 11 | |
| 12 | Surface decision only when ALL three true: |
| 13 | |
| 14 | 1. **Multiple valid approach** -- genuine fork between reasonable options. |
| 15 | 2. **No active context resolve** -- checked user instruction, inspected code/artifacts, current evidence, knowledge base, refiner docs, context anchor. Still unresolved. |
| 16 | 3. **Meaningful consequences** -- affect architecture, behavior, maintainability. Not cosmetic. |
| 17 | |
| 18 | **Confidence test**: "Considered two+ approaches, neither clearly better given project context." True → surface. False → decide, move on. |
| 19 | |
| 20 | **Err side of deciding only when grounded.** Grounded autonomy ≠ guessing. **STOP:** If evidence thin, missing, or conflicting, don't silent choose. |
| 21 | |
| 22 | Stop and inspect / ask when ANY signal fire: |
| 23 | |
| 24 | 1. **No grounding** -- can't cite source for a project-specific claim. |
| 25 | 2. **Generic prior filling local gap** -- about to assume file path, API shape, config key, data contract, naming convention, workflow because "projects usually do X." |
| 26 | 3. **Missing fact collapses answer** -- one unresolved fact would make one option clearly right/wrong. |
| 27 | 4. **Conflicting sources** -- user instruction, code, docs, tests, logs, or context docs disagree. |
| 28 | 5. **Unfalsifiable assumption** -- can't say what evidence would prove current assumption wrong. |
| 29 | |
| 30 | If any signal fire, don't invent options just to fit this protocol. First inspect available evidence. If still unresolved, ask targeted clarification. |
| 31 | |
| 32 | **STOP:** Conflicting active sources — surface contradiction, ask. Never pick winner silently. |
| 33 | |
| 34 | ## Presentation Format |
| 35 | |
| 36 | Two formats: |
| 37 | |
| 38 | ### A. Decision needed |
| 39 | |
| 40 | Use when multiple **grounded** options remain: |
| 41 | |
| 42 | > **Decision needed**: [one-line description of what's being decided] |
| 43 | > |
| 44 | > Checked: [sources]. Missing/conflicting: [fact] |
| 45 | > |
| 46 | > - **Option A**: [approach] — [1-line pro], [1-line con] |
| 47 | > - **Option B**: [approach] — [1-line pro], [1-line con] |
| 48 | > |
| 49 | > I lean toward **[option]** because [one sentence of reasoning]. |
| 50 | |
| 51 | Two options norm. Three maximum. No essays. |
| 52 | |
| 53 | ### B. Clarification needed |
| 54 | |
| 55 | Use when issue is missing/conflicting knowledge, not balanced options: |
| 56 | |
| 57 | > **Clarification needed**: [missing fact or contradiction] |
| 58 | > |
| 59 | > Checked: [sources] |
| 60 | > Missing/conflicting: [exact fact] |
| 61 | > Need from you: [1-3 targeted questions or requested artifact] |
| 62 | > Why it matters: [one sentence] |
| 63 | |
| 64 | No fabricated options. Ask only for facts that materially change direction. If answer available in inspected repo/docs/tests, inspect first -- ask user only when gap remains. |
| 65 | |
| 66 | ## Batching |
| 67 | |
| 68 | Not interrupt every judgment call. Collect, surface at natural checkpoints: |
| 69 | |
| 70 | - **During implementation** (code-forge): batch per component. Surface all judgment call for component together before present code. |
| 71 | - **During design** (design-blueprint): surface immediately. Each design level constrain next -- batching risk cascading misalignment. |
| 72 | - **During review** (review): note uncertainty inline in report with both interpretations. |
| 73 | - **Standalone / freeform**: batch per logical task segment. Surface all judgment call when feature scope clear -- not one at time. |
| 74 | - **Knowledge gap / conflicting evidence**: surface immediately when next step depend on missing fact. Don't batch a blocker just to preserve flow. |
| 75 | |
| 76 | **Escalation signal**: Single component produce >3 judgment calls, project need clearer standards. Suggest run relevant refiner instead ask each individually. |
| 77 | |
| 78 | ## Resolution |
| 79 | |
| 80 | When user resolve judgment call or clarification: |
| 81 | |
| 82 | 1. **Apply immediately** -- implement choice in current context. |
| 83 | 2. **Treat as commitment** -- chosen option, clarified fact, or conflict resolution not revisited silently later in session. |
| 84 | 3. **Suggest persistence** |