# M118 · Elicitation Retrofit (5 issues)

5 issues bundled ~530 src LOC CC 2.1.118+ single PR

Closes #1464, #1465, #1466, #1467, #1468. Takes M118 from 0/5 → 5/5.

## What ships per skill

Skill | Mechanism | Choice surfaced | Voice payoff
--- | --- | --- | ---
`/ork:doctor` | AskUserQuestion | scope: all / cc / mcp / plugin | HIGH — "just the MCPs" → 5s vs 20s (4×)
`/ork:commit` | AskUserQuestion | mode: new / amend / push / stash | HIGH — "amend" or "push after" naturally
`/ork:remember` | AskUserQuestion ×2 | type + scope (with global option) | HIGH — "preference, global" as voice
`/ork:fix-issue` | AskUserQuestion | local-CI: push / full / security-only | MED-HIGH — "thorough, test locally"
`/ork:release-sync` | ork-elicit preset | 3 booleans + notes textarea in one form | MED — 1 form vs 3 sequential asks

## Architecture: AskUserQuestion vs ork-elicit

                      ┌────────────────────────────────────┐
                      │            user invocation          │
                      └──────────────┬─────────────────────┘
                                     │
                ┌────────────────────┼────────────────────┐
                ▼                    ▼                    ▼
       ┌──────────────────┐  ┌─────────────────┐  ┌──────────────────┐
       │ explicit flag    │  │ ambiguous       │  │ form-shaped      │
       │ in invocation?   │  │ choice point    │  │ (3+ booleans)    │
       ├──────────────────┤  ├─────────────────┤  ├──────────────────┤
       │ skip prompt      │  │ AskUserQuestion │  │ ork-elicit       │
       │ use the flag     │  │ (sequential)    │  │ preset (form)    │
       │                  │  │                 │  │                  │
       │ doctor cc        │  │ doctor          │  │ release-sync     │
       │ commit --amend   │  │ commit          │  │ (M118 #1468)     │
       │ remember --type=X│  │ remember        │  │                  │
       │ fix-issue --quick│  │ fix-issue       │  │ Falls back to    │
       │ release-sync     │  │                 │  │ AskUserQuestion  │
       │ --targets=...    │  │                 │  │ when MCP absent  │
       └──────────────────┘  └─────────────────┘  └──────────────────┘

## The new ork-elicit preset (#1468)

      src/mcp-server/src/presets/release-sync-targets.ts   ← NEW
      ┌──────────────────────────────────────────────────────────────┐
      │  fields:                                                     │
      │    notebooklm  : boolean (default true)                      │
      │    hq_kb       : boolean (default true)                      │
      │    slack       : boolean (default false)                     │
      │    notes       : string  (default "")                        │
      └──────────────────────────────────────────────────────────────┘
                              │
                              ▼
      src/mcp-server/src/tools/ork-elicit.ts  PRESETS map
      ┌──────────────────────────────────────────────────────────────┐
      │  'project-config':       (existing)                          │
      │  'release-sync-targets': releaseSyncTargets{Schema,Message}  │
      └──────────────────────────────────────────────────────────────┘
                              │
                              ▼
      /ork:release-sync invokes:
           mcp__ork-elicit__ork_elicit(preset="release-sync-targets")
           → one round-trip, structured form, native MCP
           → fallback: 3× AskUserQuestion when ork-elicit MCP unavailable

## Test plan

    npm test (full vitest)        7928 / 7928 passing
    npm run typecheck             clean (hooks + mcp-server)
    npm run test:agents           all valid
    npm run test:manifests        counts + ordering + orphans clean
    npm run test:skills           structure clean
    npm run build                 plugins/ rebuilt cleanly

Override / escape hatches per skill: every new AskUserQuestion is skippable via explicit flags or env vars. Power users / scripts bypass cleanly; voice flows benefit from the prompt. See PR body for the full flag table.

## References

- `src/mcp-server/src/presets/release-sync-targets.ts` — new preset
- `src/mcp-server/src/tools/ork-elicit.ts` — PRESETS map updated
- 5 skill SKILL.md files updated (doctor / commit / remember / fix-issue / release-sync)