← ClaudeAtlas

qa-loop-uilisted

Presents up to 5 questions from smart-question-generator one at a time, records answers, handles per-question skip and skip-all, captures per-question response time and total session duration. Renders a streaming progress header with question count and time estimate. Used as the interaction layer of Stage 4 of the /gaai:bootstrap pipeline.
Fr-e-d/GAAI-framework · ★ 147 · Web & Frontend · score 82
Install: claude install-skill Fr-e-d/GAAI-framework
# Q&A Loop UI ## Purpose / When to Activate Activate: - As Stage 4 of the `/gaai:bootstrap` pipeline, immediately after `smart-question-generator` returns a `question_result` with `questions.length > 0` - When the bootstrap orchestrator needs to surface ambiguities as a conversational Q&A with the user - Re-run is NOT expected: one call per bootstrap session (Q&A is one-shot) When `question_result.questions` is empty (legitimate empty OR fallback), the orchestrator MUST skip this skill entirely and proceed to Stage 5 — do NOT activate with empty questions. --- ## Input Schema ```yaml question_result: questions: # from smart-question-generator — already ≤5 items - question_text: string # ≤200 chars topic: string # used as question_id in answers output severity: number # 1–10 — not shown to user; used for future sorting options: # optional — omitted for open-ended questions - label: string # human-readable option label value: string # machine value error: string | null fallback: bool ``` **Precondition check (before entering loop):** ``` if question_result.questions.length == 0: log: "[qa-loop-ui] no questions to ask — skip loop" return {answers: [], partial: false, skipped_all: false, abort_reason: "no_questions", qa_duration_ms: 0} ``` --- ## Process ### Step 1 — Initialize session ``` session_start_ts = current_timestamp_ms() answers = [] curren