Ouroboros Interview Upgrade

# 기존 인터뷰 vs 새 인터뷰

새 흐름은 MCP가 질문을 만들면 질문을 먼저 보여주고, 동시에 subagent들이 코드, 웹, 모호함, 답변 선택지, 아키텍처 영향을 나눠 조사해 사용자가 더 쉽게 답하도록 돕는다.

기존 인터뷰

## 질문 생성 중심

MCP interview tool이 다음 질문을 만들고, 메인 세션은 그 질문을 사용자에게 전달한 뒤 사용자의 답변을 다시 MCP에 넘기는 구조였다.

1. 1 MCP가 현재 transcript와 ambiguity score를 보고 다음 질문 생성
2. 2 메인 세션이 질문을 사용자에게 전달
3. 3 사용자는 맥락을 스스로 정리해서 답변
4. 4 메인 세션이 답변을 그대로 MCP에 전달

새 인터뷰

## 질문-first advisory fanout

질문은 그대로 먼저 노출하고, 그 뒤 subagent fanout이 사용자의 빈칸을 찾아 답변 후보와 위험한 모호함을 정리한다.

1. 1 MCP가 질문과 함께 advisory fanout metadata 생성
2. 2 브리지가 질문 텍스트를 보존한 채 subagent들을 병렬 dispatch
3. 3 각 lane이 독립적으로 코드, 웹, 모호함, 선택지, 아키텍처를 점검
4. 4 메인 세션이 child 결과를 합성해 사용자의 답변을 쉽게 만든 뒤 승인된 답만 MCP에 전달

## 무엇이 달라졌나

관점 | 기존 | 현재
--- | --- | ---
메인 세션 역할 | 질문 전달자와 답변 라우터에 가까웠다. | 질문을 보존하고 subagent 결과를 조율하는 interview conductor가 됐다.
사용자 경험 | 사용자가 혼자 의도를 정리해서 답해야 했다. | 답변 전 선택지, 초안, 남은 모호함을 받을 수 있다.
코드베이스 반영 | 질문 생성 자체는 코드 사실 조사와 느슨하게 연결됐다. | `code_context` lane이 repo-local evidence를 찾아 답변을 제약한다.
웹 조사 | 필요하면 사람이 별도로 요청하거나 메인 세션이 판단해야 했다. | `web_context` lane이 최신 외부 사실이 필요한지 먼저 판단하고 최소 조사한다.
모호함 탐지 | MCP ambiguity score와 질문 품질에 의존했다. | `ambiguity_contrarian`이 숨은 가정, 빠진 결정, 애매한 용어를 따로 찾는다.
답변 보조 | 질문만 받고 사용자가 직접 문장을 만들어야 했다. | `answer_simplifier`가 2-3개 선택지나 승인 가능한 draft를 만든다.
시스템 영향 | 답변이 구조, ownership, rollout에 미치는 영향이 뒤늦게 드러날 수 있었다. | `architecture_implications`가 구현 전에 영향도를 짚는다.
실패 모드 | 보조 dispatch 실패라는 개념이 없었다. | dispatch가 실패해도 질문 텍스트는 유지되고 실패 안내만 뒤에 붙는다.

## 새 흐름

1. MCP 질문 `ouroboros_interview`가 다음 질문과 advisory metadata를 반환한다.
2. 질문 먼저 표시 사용자는 기다리지 않고 질문을 먼저 본다. advisory는 질문을 가리지 않는다.
3. Subagent fanout 브리지가 lane별 child task를 만들고 Task widget으로 진행을 보여준다.
4. Advisory 합성 메인 세션이 child 결과를 읽고 짧은 선택지나 draft로 정리한다.
5. 승인 후 전달 사용자가 승인하거나 고친 답변만 MCP state에 저장된다.

## Subagent lanes

### code_context

코드와 설정에서 질문 답변을 제한하는 사실을 찾는다.

### web_context

가격, API, 정책, 표준처럼 최신 외부 사실이 필요할 때만 조사한다.

### ambiguity_contrarian

사용자가 놓치기 쉬운 가정, 애매한 단어, 빠진 의사결정을 드러낸다.

### answer_simplifier

답하기 쉽게 2-3개 선택지나 짧은 draft를 만든다.

### architecture_implications

답변이 ownership, interface, rollout, data, verification에 미치는 영향을 본다.

OpenCode bridge

## 질문을 절대 덮지 않음

브리지는 `question_advisory_subagents` metadata를 읽어 dispatch한다. 성공, 중복, 실패 어느 경우에도 `question_advisory_preserve_content`가 켜져 있으면 원래 질문 텍스트를 앞에 둔다.

Plugin mode

## Child interviewer가 보조

plugin mode에서는 실제 질문이 child interview session 안에서 생성된다. 그래서 child prompt 자체에 Question-first Advisory Fanout 지침을 넣어 질문 뒤에 compact helper를 만들게 했다.

한 줄 요약: 기존 인터뷰는 질문을 잘 만드는 쪽에 집중했다면, 새 인터뷰는 질문을 받은 사람이 더 잘 답할 수 있게 주변 맥락을 병렬로 찾아주는 구조다. 사람의 기억, 코드 맥락 부족, 최신 정보 부족, 모호한 표현을 subagent들이 보완하고, 메인 세션은 그 결과를 사용자가 결정하기 쉬운 형태로 정리한다.