ROB-175donehigh
📝OD-027 — Chapter 1 story-arc rewrite: surprise reveal + inline video embed
Operator-triggered story-arc rewrite of Chapter 1's closing. The "surprise video" reveal currently lands weakly:
see full
Operator-triggered story-arc rewrite of Chapter 1's closing. The "surprise video" reveal currently lands weakly:
- multiple earlier entries (phase 6 family-deck, phase 7 video-plan, several `commercial` / `video` mentions) have already telegraphed the commercial — so the closing entry feels expected, not surprising
- the existing final bubble is a meta-discussion ("Did it feel like Roblox?") instead of a real family reaction
- the video itself is only LINKED, never embedded — the family never sees it inside the journey
**Full directive (read first):**
`/srv/http/_hq/projects/project-roblox/OD-027-journey-final-arc-rewrite.md`
## What ROB CEO needs to orchestrate
OD-015 autonomy is in force. No per-bubble operator approval; operator checkpoint is the published Chapter 1.
### Phase A — Arc audit (UXDesigner-as-editor)
Read the whole `site/data/chat-log.yaml`. Per-entry annotation: **KEEP / SOFTEN / CUT / REWRITE**. Write `OD-027-A-arc-audit-signoff.md` with a 5-line arc summary. Identify all earlier mentions that pre-spoil the final reveal — §3 of the OD names the known suspects (phase-7 LST-video-plan is the biggest, with a check-list that literally previews the storyboard beatCEO✓ 19:55:36Z · 35s
ROB-181donehighPST-Phase-E
📝OD-027 CEO final signoff receipt and sprint status
BMAD skill: dev-story
see full
BMAD skill: dev-story
Parent: ROB-175 / OD-027.
Read first:
- /srv/http/_hq/projects/project-roblox/OD-027-journey-final-arc-rewrite.md
- /srv/http/_hq/projects/project-roblox/OD-013-autonomous-execution.md
- /srv/http/_hq/projects/project-roblox/OD-025-portal-and-site-refresh.md
- /srv/http/_hq/projects/project-roblox/BRAND-CANON.md
- /srv/http/_hq/projects/project-roblox/COPY-VOICE.md
- /srv/http/_hq/projects/project-roblox/ASSET-LIBRARY.md
- /srv/http/_hq/projects/project-roblox/JOURNEY-STORY-CANON.md
Scope:
ScrumMaster closes OD-027 after CodeReviewer signs off. File /srv/http/roblox/_bmad-output/site-artifacts/OD-027-G-ceo-final-signoff.md and update /srv/http/roblox/_bmad-output/implementation-artifacts/sprint-status.yaml as the canonical SM writer. Include the OD-013 three success criteria verbatim in the receipt:
1. Twins are excited to share with friends.
2. The game feels real.
3. The twins are excited.
Acceptance:
- Receipt exists at the path above and includes ACCEPT/WEAK/REJECT against each OD-013 criterion.
- Receipt notes AI-slop adversarial pass: off-model likeness vs BRAND-CANON.md, banned words vs COPY-VOICE.md, shot/video manifest gaps vs ASSET-LIBRARY.md.
-
ScrumMaster✓ 19:55:00Z · 3munder ROB-175
ROB-180donehighPST-Phase-E
🔍OD-027 arc, renderer, lint, and anchor correctness
BMAD skill: dev-story
see full
BMAD skill: dev-story
Parent: ROB-175 / OD-027.
Read first:
- /srv/http/_hq/projects/project-roblox/OD-027-journey-final-arc-rewrite.md
- /srv/http/_hq/projects/project-roblox/OD-025-portal-and-site-refresh.md
- /srv/http/_hq/projects/project-roblox/BRAND-CANON.md
- /srv/http/_hq/projects/project-roblox/COPY-VOICE.md
- /srv/http/_hq/projects/project-roblox/ASSET-LIBRARY.md
- /srv/http/_hq/projects/project-roblox/JOURNEY-STORY-CANON.md
Scope:
CodeReviewer audits the completed OD-027 change set. Review arc cohesion, spoiler softening, voice-canon lint output, video element correctness, missing tech-layer fallback, no broken anchors, and chapter-2-placeholder handoff.
Acceptance:
- Write /srv/http/roblox/_bmad-output/site-artifacts/OD-027-E-code-review-signoff.md.
- Confirm voice_canon_lint.py passed or identify only operator-verbatim lint escalation.
- Confirm inline video asset path and poster path are correct.
- Confirm no broken /journey/ anchor handoff to chapter-2-placeholder.
- If issues are found, request changes on the relevant child issue and leave ROB-175 commented with the blocker.
ScrumMaster✓ 19:51:59Z · 1munder ROB-175
ROB-182donehighPST-Phase-E
🔧Repair OD-027 commit package before G3
BMAD skill: gds-dev-story
see full
BMAD skill: gds-dev-story
Parent: [ROB-175](/ROB/issues/ROB-175) / OD-027.
Context: [ROB-180](/ROB/issues/ROB-180) G3 review failed commit discipline. Commit `3e55567` is titled `ROB-179 package journey video QA evidence`, but it packages renderer implementation, chat-log rewrite, asset-library media registration, QA screenshots, and Phase D evidence under one QA-only message.
Scope:
Repair the OD-027 review package so the final reviewable history satisfies ADR-2026-05-16 one-commit-per-story discipline, or obtain an explicit board/operator exception before G3.
Acceptance:
- ROB-177 renderer changes, ROB-178 chat-log rewrite changes, and ROB-179 QA evidence are no longer represented as one misleading ROB-179 mega-commit; OR a linked board/operator exception explicitly accepts the combined package.
- Commit messages match the diff scopes.
- Leave [ROB-180](/ROB/issues/ROB-180) a comment with the final commit SHAs or the exception link.
Developer✓ 19:48:07Z · 5munder ROB-175
ROB-183donehighPST-Phase-A
🔧Add OD-027 chapter-as-story evidence block
BMAD skill: gds-dev-story
see full
BMAD skill: gds-dev-story
Parent: [ROB-175](/ROB/issues/ROB-175) / OD-027.
Context: [ROB-180](/ROB/issues/ROB-180) G3 review found that `OD-027-A-arc-audit-signoff.md` does not include the OD-027 Amendment 1 chapter-as-story block required by `JOURNEY-STORY-CANON.md` v2.1.
Scope:
Update `/srv/http/roblox/_bmad-output/site-artifacts/OD-027-A-arc-audit-signoff.md` with the explicit four-check chapter-as-story annotation.
Acceptance:
- The Phase A signoff includes standalone read, wobble check, pay-off check, and surprise check lines.
- Each line has PASS/FAIL plus one sentence of evidence.
- If any check fails on reread, comment on [ROB-175](/ROB/issues/ROB-175) and [ROB-180](/ROB/issues/ROB-180) with the one-line failure summary instead of silently rewriting.
- Update the site-artifacts `.decision-log.md` if the artifact changes materially.
UXDesigner✓ 19:44:55Z · 1munder ROB-175
ROB-179donehighPST-Phase-D
📝Chapter 1 closing video visual and a11y smoke
BMAD skill: dev-story
see full
BMAD skill: dev-story
Parent: ROB-175 / OD-027.
Read first:
- /srv/http/_hq/projects/project-roblox/OD-027-journey-final-arc-rewrite.md
- /srv/http/_hq/projects/project-roblox/OD-025-portal-and-site-refresh.md
- /srv/http/_hq/projects/project-roblox/BRAND-CANON.md
- /srv/http/_hq/projects/project-roblox/COPY-VOICE.md
- /srv/http/_hq/projects/project-roblox/ASSET-LIBRARY.md
- /srv/http/_hq/projects/project-roblox/JOURNEY-STORY-CANON.md
Scope:
Run focused visual and accessibility QA on /journey/ after the renderer and chat-log rewrite land. Use Playwright screenshots at desktop 1280x900 and mobile 390x844, scrolled to the new closing arc. Check twins, parent, and tech reading modes. Confirm chapter-2-placeholder anchor still works.
Acceptance:
- Screenshots are saved under /srv/http/roblox/_bmad-output/site-artifacts/od027-qa-screenshots/.
- Video stays inside the bubble with no overflow on desktop or mobile.
- Bubble border/radius aesthetic is preserved around the video.
- Video has controls, autoplay off, preload metadata.
- Reading modes degrade cleanly when tech-layer is missing from the final bubbles.
- chapter-2-placeholder anchor still works.
- Write /srv/http/roblox/_bmad
ScrumMaster✓ 19:37:50Z · 1munder ROB-175
ROB-178donehighPST-Phase-C
✍️Chapter 1 closing reveal chat-log sequence
BMAD skill: dev-story
see full
BMAD skill: dev-story
Parent: ROB-175 / OD-027.
Read first:
- /srv/http/_hq/projects/project-roblox/OD-027-journey-final-arc-rewrite.md
- /srv/http/_hq/projects/project-roblox/OD-025-portal-and-site-refresh.md
- /srv/http/_hq/projects/project-roblox/BRAND-CANON.md
- /srv/http/_hq/projects/project-roblox/COPY-VOICE.md
- /srv/http/_hq/projects/project-roblox/ASSET-LIBRARY.md
- /srv/http/_hq/projects/project-roblox/JOURNEY-STORY-CANON.md
- /srv/http/roblox/site/JOURNEY-SPEC.md
- /srv/http/roblox/_bmad-output/site-artifacts/OD-027-A-arc-audit-signoff.md
Scope:
Apply the Phase A arc-audit edits to /srv/http/roblox/site/data/chat-log.yaml. Delete 2026-05-18-phase-8-commercial-surprise and replace it with the OD-027 §2 operator-authored closing sequence. Twins-layer wording must stay verbatim: Claude "Here is the video."; Dad "Wow it looks amazing."; joint twins "Oh my goodness, I can't wait to share with my friends."; Khalil "Let's go Dad, let's start building this."; Dad "Let's go. Go!". Add the video payload directly after Claude's line using OD-027 §4 asset paths. Author light parent-layer text; drop tech-layer on these final bubbles. If the renderer has no joint-twin primitive, us
StoryCreator✓ 19:11:47Z · 19sunder ROB-175
ROB-176donehighPST-Phase-A
🔍Chapter 1 spoiler arc and reveal tension
BMAD skill: dev-story
see full
BMAD skill: dev-story
Parent: ROB-175 / OD-027.
Read first:
- /srv/http/_hq/projects/project-roblox/OD-027-journey-final-arc-rewrite.md
- /srv/http/_hq/projects/project-roblox/OD-025-portal-and-site-refresh.md
- /srv/http/_hq/projects/project-roblox/BRAND-CANON.md
- /srv/http/_hq/projects/project-roblox/COPY-VOICE.md
- /srv/http/_hq/projects/project-roblox/ASSET-LIBRARY.md
- /srv/http/_hq/projects/project-roblox/JOURNEY-STORY-CANON.md
- /srv/http/roblox/site/JOURNEY-SPEC.md
Scope:
Read /srv/http/roblox/site/data/chat-log.yaml end-to-end as UXDesigner-as-editor. Do not edit the YAML in this issue. Write /srv/http/roblox/_bmad-output/site-artifacts/OD-027-A-arc-audit-signoff.md with per-entry annotation KEEP / SOFTEN / CUT / REWRITE plus a 5-line-or-shorter arc summary. Identify all earlier mentions that pre-spoil the final video reveal and choose OD-027 §3 Option A or Option B for the phase-7 LST-video-plan spoiler.
Acceptance:
- Audit artifact exists at the path above.
- Artifact names specific chat-log entry ids and exact rewrite/soften targets.
- Artifact explicitly chooses Option A or B for phase-7 and explains why.
- Artifact keeps OD-025 twin-name canon: Khalil and Kareem,
UXDesigner✓ 19:05:52Z · 27munder ROB-175
ROB-177donehighPST-Phase-B
📝Journey renderer inline video payload
BMAD skill: dev-story
see full
BMAD skill: dev-story
Parent: ROB-175 / OD-027.
Read first:
- /srv/http/_hq/projects/project-roblox/OD-027-journey-final-arc-rewrite.md
- /srv/http/_hq/projects/project-roblox/OD-025-portal-and-site-refresh.md
- /srv/http/_hq/projects/project-roblox/BRAND-CANON.md
- /srv/http/_hq/projects/project-roblox/COPY-VOICE.md
- /srv/http/_hq/projects/project-roblox/ASSET-LIBRARY.md
- /srv/http/_hq/projects/project-roblox/JOURNEY-STORY-CANON.md
- /srv/http/roblox/site/JOURNEY-SPEC.md
Scope:
Extend /srv/http/roblox/site/assets/journey.js renderTurnPayload to support turn.video using the OD-027 §4 schema. Add matching .j-payload--video CSS in /srv/http/roblox/site/assets/journey.css. Use controls, preload="metadata", no autoplay, poster support, source type video/mp4, accessible label text, and figcaption. Match the existing .j-imgs__card border and radius aesthetic and keep mobile width contained inside the bubble. Smoke-test with a stub YAML video payload before the chat-log rewrite lands.
Acceptance:
- turn.video renders a figure/video/caption without breaking image payloads.
- Video uses preload="metadata" and controls; it does not autoplay.
- CSS prevents overflow on mobile and preser
ScrumMaster✓ 18:43:15Z · 1munder ROB-175
ROB-174donehighPST-Phase-OD026-E
🔍OD-026 final composite gate before publish
BMAD skill: bmad-code-review.
see full
BMAD skill: bmad-code-review.
Authority and scope:
- Review only the OD-026 Phase E final local composite from ROB-173. Do not publish `/journey/` or change public URLs.
- This is the final composite gate before CEO can sign Phase E and route Phase F publish.
Read:
- `/srv/http/_hq/projects/project-roblox/OD-026-lst-ad-rerender-character-refresh.md`
- `/srv/http/_hq/projects/project-roblox/OD-026-D-motion-signoff.md`
- `BRAND-CANON.md`
- `COPY-VOICE.md`
- `ASSET-LIBRARY.md`
- `JOURNEY-STORY-CANON.md`
- ROB-172 output, ROB-173 output, final MP4, timeline JSON, report, and assembler diff.
Review criteria:
- Final MP4 exists at `_bmad-output/video-artifacts/renders/final/lst-promo-final-od026-v01.mp4` and decodes cleanly.
- Timeline JSON and report exist at OD-026 §4 names.
- Assembler exists at `_bmad-output/tools/assemble_lst_od026_final.py` and is scoped to OD-026 final assembly.
- Final duration is 60s target, never over 62s.
- Beat 07 visibly shows Tier 1 -> Tier 4 upgrade and does not require narrator-line edit.
- Beat 10 centre-drop title-card animation follows the ROB-172 manifest choice and timing.
- Report documents Phase E polish, source artifacts, spend, and the carried
ScrumMaster✓ 17:21:09Z · 1munder ROB-158
ROB-173donehighPST-Phase-OD026-E
📝OD-026 final composite with title-card polish
BMAD skill: bmad-dev-story.
see full
BMAD skill: bmad-dev-story.
Authority and scope:
- Execute OD-026 Phase E final local composite only after ROB-172. Do not publish `/journey/` or change public URLs.
- Integrate the title-card centre-drop animation selected by UXDesigner and preserve Phase D motion/cadence constraints.
Read:
- `/srv/http/_hq/projects/project-roblox/OD-026-lst-ad-rerender-character-refresh.md`
- `/srv/http/_hq/projects/project-roblox/OD-026-D-motion-signoff.md`
- `BRAND-CANON.md`
- `COPY-VOICE.md`
- `ASSET-LIBRARY.md`
- `JOURNEY-STORY-CANON.md`
- ROB-172 output and `_bmad-output/video-artifacts/shot-manifests/lst-010-SHOT-MANIFEST.yaml`
- `_bmad-output/video-artifacts/renders/pass-05/clips/lst-001-motion.mp4` through `lst-010-motion.mp4`
- `_bmad-output/video-artifacts/renders/pass-05/clips/lst-od026-motion-manifest.json`
- Prior assembler `_bmad-output/tools/assemble_lst_od021_final.py`
Write:
- Create `_bmad-output/tools/assemble_lst_od026_final.py` by forking the OD-021 assembler pattern.
- Produce `_bmad-output/video-artifacts/renders/final/lst-promo-final-od026-v01.mp4`.
- Produce `_bmad-output/video-artifacts/renders/final/lst-promo-final-od026-v01-timeline.json`.
- Produce `_bmad-output/vi
Developer✓ 16:46:03Z · 12munder ROB-158
ROB-172donehighPST-Phase-OD026-E
📝Choose OD-026 title-card centre-drop animation
BMAD skill: bmad-ux-design.
see full
BMAD skill: bmad-ux-design.
Authority and scope:
- Execute OD-026 Phase E producer animation choice only. Do not assemble the final MP4, publish `/journey/`, or change public URLs.
- UXDesigner is acting as producer for the Beat 10 title-card animation decision.
Read:
- `/srv/http/_hq/projects/project-roblox/OD-026-lst-ad-rerender-character-refresh.md`
- `/srv/http/_hq/projects/project-roblox/OD-026-D-motion-signoff.md`
- `BRAND-CANON.md`
- `COPY-VOICE.md`
- `ASSET-LIBRARY.md`
- `JOURNEY-STORY-CANON.md`
- `_bmad-output/video-artifacts/shot-manifests/lst-010-SHOT-MANIFEST.yaml`
- `_bmad-output/video-artifacts/renders/pass-05/clips/lst-010-motion.mp4`
- `_bmad-output/implementation-artifacts/ROB-170-od026-producer-motion-review.md`
Write:
- Update `_bmad-output/video-artifacts/shot-manifests/lst-010-SHOT-MANIFEST.yaml` with the selected title-card centre-drop animation from OD-026 §3.4 or a producer-equivalent choice.
- Specify timing: first card frame at 55.0s, centre-rest by 55.6-55.8s, aligned to the locked title-card stinger.
- Specify whether final text should be compositor-rendered and any particle/sparkle/scale/bounce treatment the Developer should implement.
Acceptance cr
UXDesigner✓ 16:33:34Z · 2munder ROB-158