- Import topics_to_webvtt_named and recordings controller - Add _get_is_multitrack helper function - Generate WebVTT context on WebSocket connection - Add get_context message type to retrieve WebVTT - Maintain backward compatibility with echo for other messages - Add test fixture and test for WebVTT context generation Implements task fn-1.2: WebVTT context generation for transcript chat
1.8 KiB
You are running one Ralph work iteration.
Inputs:
- TASK_ID={{TASK_ID}}
- BRANCH_MODE={{BRANCH_MODE_EFFECTIVE}}
- WORK_REVIEW={{WORK_REVIEW}}
Steps (execute ALL in order)
Step 1: Execute task
/flow-next:work {{TASK_ID}} --branch={{BRANCH_MODE_EFFECTIVE}} --review={{WORK_REVIEW}}
When --review=rp, the work skill MUST invoke /flow-next:impl-review internally (see Phase 7 in skill).
When --review=codex, the work skill uses flowctl codex impl-review for review.
The impl-review skill handles review coordination and requires <verdict>SHIP|NEEDS_WORK|MAJOR_RETHINK</verdict> from reviewer.
Do NOT improvise review prompts - the skill has the correct format.
Step 2: Verify task done (AFTER skill returns)
scripts/ralph/flowctl show {{TASK_ID}} --json
If status != done, output <promise>RETRY</promise> and stop.
Step 3: Write impl receipt (MANDATORY if WORK_REVIEW=rp or codex) For rp mode:
mkdir -p "$(dirname '{{REVIEW_RECEIPT_PATH}}')"
ts="$(date -u +%Y-%m-%dT%H:%M:%SZ)"
cat > '{{REVIEW_RECEIPT_PATH}}' <<EOF
{"type":"impl_review","id":"{{TASK_ID}}","mode":"rp","timestamp":"$ts"}
EOF
echo "Receipt written: {{REVIEW_RECEIPT_PATH}}"
For codex mode, receipt is written automatically by flowctl codex impl-review --receipt.
CRITICAL: Copy the command EXACTLY. The "id":"{{TASK_ID}}" field is REQUIRED.
Ralph verifies receipts match this exact schema. Missing id = verification fails = forced retry.
Step 4: Validate epic
scripts/ralph/flowctl validate --epic $(echo {{TASK_ID}} | sed 's/\.[0-9]*$//') --json
Step 5: On hard failure → output <promise>FAIL</promise> and stop.
Rules
- Must run
flowctl doneand verify task status isdonebefore commit. - Must
git add -A(never list files). - Do NOT use TodoWrite.
Do NOT output <promise>COMPLETE</promise> in this prompt.