Skip to content

[WS-E] #45 v0.5.2 中文实时 AI 演示闭环 - #65

Merged
Ripped-sys merged 6 commits into
mainfrom
ws-E/45-visual-baseline-main
Jul 25, 2026
Merged

Ripped-sys merged 6 commits into
mainfrom
ws-E/45-visual-baseline-main

Conversation

@Ripped-sys

@Ripped-sys Ripped-sys commented Jul 25, 2026 •

Copy link
Copy Markdown
Collaborator

Closes #45

Scope

  • 收敛为中文 Landing、Live Arena、Champion 三页面闭环,Artifact Viewer 与 Evidence Lens 保持为竞技场内 Modal。
  • 已验证演示从首个事件渐进回放,Fatal 接管、Proof HP、作品、证据和冠军结果均可录制。
  • 真实 StepFun 模式持久化事件与安全流式进度;等待期间三队卡片、事件流和主持人持续更新,刷新可恢复。
  • 冠军页返回战斗时使用本地事件存储从头回放,不再直接落到完成态。
  • 三队作品按 teamId 投影各自提案、防守、补丁、测试、证据与 Mini App,不再共用冠军作品。
  • 补齐真实 AI、降级态、桌面与 390px 移动端视觉基线和最终审计记录。

Root cause

  • 完成态 live_runtime 直接读取全量事件,冠军回放缺少独立的 playback 语义。
  • Artifact Viewer 选择逻辑强制回退到 winner team,导致三个入口展示同一个工作区。
  • 证据与作品投影曾读取全量事件,回放早期可能看到未来数据。

Verification

  • pnpm typecheck
  • pnpm lint
  • pnpm test:357/357 passed(265 root + 12 contracts + 18 API + 62 web)
  • pnpm e2e:12 passed / 2 viewport-configured skips
  • pnpm build
  • git diff --check
  • 三场真实 StepFun Battle 完整到达 Artifact、Champion 与 Passport;最终场 live_ms0lmp9n_kv02d1 持久化 142 条事件。
  • 对抗复审:此前未来数据泄漏、跨队防守串线、部分回放冠军泄漏、Passport 混队和惰性按钮五项全部关闭,无阻断项。

视觉比对与证据

Dependencies

Blocked by #26、#29–#41、#44(均已集成到本分支;当前相对 origin/main 落后 0,无未合并代码依赖)。

Known non-blocking scope gaps

  • 当前引擎每队一次交叉攻击,PRD §8.3 的更完整多次攻击属于后端状态机后续范围。
  • Markdown 导出尚未暴露在当前三页面,现有 Champion 提供证据链分享。

Summary by CodeRabbit

  • New Features
    • Added a page-level “Live AI 证据不足” takeover with a pausable 10-second countdown and a clear “return to verified” action.
    • Enhanced live arena flow with richer evidence/artifact modal interactions and expanded Chinese localization across live/replay/champion experiences.
  • Bug Fixes
    • Refined fatal-takeover behavior and health/recovery calculations (including updated recovery after accepted actions) for more consistent live runtime results.
    • Improved live battle streaming reliability and local persistence for resumed live sessions.
  • Documentation
    • Updated UI/design learnings and visual baseline materials for v0.5.2.
  • Tests
    • Expanded unit and end-to-end coverage for degraded, fatal, recovery, replay controls, and mobile overflow behavior.

@coderabbitai

coderabbitai Bot commented Jul 25, 2026 •

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@Ripped-sys, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 56 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Free

Run ID: fff92fca-f366-4262-a169-e2be3639570a

📥 Commits

Reviewing files that changed from the base of the PR and between acf596a and 22e27bf.

📒 Files selected for processing (1)
  • lib/runtime/providers/stepfun.test.ts
📝 Walkthrough

Walkthrough

The Live Arena now supports persisted live battles, concurrent runtime phases, routed fatal and evidence flows, artifact projections, replay controls, and page-level degraded recovery. Product text is localized, UI layouts are updated, validation coverage is expanded, and workflow permissions are explicit.

Changes

Live Arena behavior

Layer / File(s) Summary
Runtime orchestration and persistence
lib/runtime/..., apps/api/src/...
Live battle phases run concurrently with deadlines, retries, streaming telemetry, evidence-bound artifacts, and filesystem-backed event persistence exposed through SSE.
Route wiring and evidence projections
apps/web/src/App.tsx, apps/web/src/components/*modal.tsx, apps/web/src/data/battle.ts
Battle routes load or stream events, support replay and fatal query modes, derive live evidence/passport data, and connect evidence and artifact modal interactions.
Fatal playback and degraded runtime
apps/web/src/components/live-arena-page.*, apps/web/src/components/live-ai-degraded.*, apps/web/src/components/runtime-mode-badge.*
Fatal takeover and 88→38→68 HP states are implemented and tested, while failed live runs render a localized, pausable ten-second degraded page.
Localized product and presentation flow
apps/web/src/components/*, apps/web/src/data/*, apps/web/src/i18n/zh.ts, apps/web/src/styles.css
Landing, arena, artifact, champion, demo data, navigation, and responsive layouts use expanded Chinese translation keys and updated visual structures.

Acceptance and workflow support

Layer / File(s) Summary
Acceptance evidence and design records
tests/e2e/core-journeys.spec.ts, docs/design.md, docs/learnings/*, docs/visual-reference/..., docs/qa/..., findings.md
End-to-end journeys, visual baselines, design contracts, learnings, and audit reports cover verified replay, persisted live runtime, degraded fallback, modal interactions, fatal capture, and mobile overflow.
Coverage comment workflow access
.github/workflows/ci.yml
The coverage-comment job grants read access to contents and write access to issues and pull requests.

Estimated code review effort: 5 (Critical) | ~120 minutes

Sequence Diagram(s)

sequenceDiagram
  participant Browser
  participant LiveArenaRoute
  participant LiveBattleStore
  participant LiveRuntime
  participant LiveArenaPage
  participant LiveAiDegraded
  participant EvidenceLensModal
  participant ArtifactModal
  Browser->>LiveArenaRoute: Open battle route
  LiveArenaRoute->>LiveBattleStore: Load or subscribe to stored events
  LiveBattleStore->>LiveRuntime: Start missing live run
  LiveRuntime-->>LiveBattleStore: Persist and publish battle events
  LiveBattleStore-->>LiveArenaRoute: Stream events or terminal status
  LiveArenaRoute->>LiveArenaPage: Render replay, live, or fatal state
  LiveArenaRoute->>LiveAiDegraded: Render demo_fallback after live failure
  LiveAiDegraded-->>LiveArenaRoute: Return to verified replay by CTA or countdown
  LiveArenaPage->>EvidenceLensModal: Open selected evidence
  EvidenceLensModal->>ArtifactModal: Open linked artifact
Loading

Note

🎁 Summarized by CodeRabbit Free

Your organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting https://app.coderabbit.ai/login.

Comment @coderabbitai help to get the list of available commands.

@ecc-tools

ecc-tools Bot commented Jul 25, 2026

Copy link
Copy Markdown

🔒 Upgrade Required

Private repository analysis requires Pro or Enterprise.

Upgrade: https://ecc.tools/pricing?plan=pro


ECC Tools keeps the core app open, and puts private repos, team features, and enterprise controls behind paid tiers.

@Ripped-sys
Ripped-sys marked this pull request as ready for review July 25, 2026 05:50
@ecc-tools

ecc-tools Bot commented Jul 25, 2026

Copy link
Copy Markdown

🔒 Upgrade Required

Private repository analysis requires Pro or Enterprise.

Upgrade: https://ecc.tools/pricing?plan=pro


ECC Tools keeps the core app open, and puts private repos, team features, and enterprise controls behind paid tiers.

@github-actions

Copy link
Copy Markdown

Coverage

Lines: 100.0%

See artifact for full report.

@ecc-tools

ecc-tools Bot commented Jul 25, 2026

Copy link
Copy Markdown

🔒 Upgrade Required

Private repository analysis requires Pro or Enterprise.

Upgrade: https://ecc.tools/pricing?plan=pro


ECC Tools keeps the core app open, and puts private repos, team features, and enterprise controls behind paid tiers.

@github-actions

Copy link
Copy Markdown

Coverage

Lines: 100.0%

See artifact for full report.

@ecc-tools

ecc-tools Bot commented Jul 25, 2026

Copy link
Copy Markdown

🔒 Upgrade Required

Private repository analysis requires Pro or Enterprise.

Upgrade: https://ecc.tools/pricing?plan=pro


ECC Tools keeps the core app open, and puts private repos, team features, and enterprise controls behind paid tiers.

@github-actions

Copy link
Copy Markdown

Coverage

Lines: 100.0%

See artifact for full report.

@ecc-tools

ecc-tools Bot commented Jul 25, 2026

Copy link
Copy Markdown

🔒 Upgrade Required

Private repository analysis requires Pro or Enterprise.

Upgrade: https://ecc.tools/pricing?plan=pro


ECC Tools keeps the core app open, and puts private repos, team features, and enterprise controls behind paid tiers.

@Ripped-sys Ripped-sys changed the title [WS-E] #45 Visual Baseline v0.5.2 主线收口 [WS-E] #45 v0.5.2 中文实时 AI 演示闭环 Jul 25, 2026
@ecc-tools

ecc-tools Bot commented Jul 25, 2026

Copy link
Copy Markdown

🔒 Upgrade Required

Private repository analysis requires Pro or Enterprise.

Upgrade: https://ecc.tools/pricing?plan=pro


ECC Tools keeps the core app open, and puts private repos, team features, and enterprise controls behind paid tiers.

@github-actions

Copy link
Copy Markdown

Coverage

Lines: 100.0%

See artifact for full report.

@Ripped-sys
Ripped-sys merged commit 6caef2a into main Jul 25, 2026
7 checks passed
@Ripped-sys
Ripped-sys deleted the ws-E/45-visual-baseline-main branch July 25, 2026 17:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[v0.5.2] #24 Visual Baseline v0.5.2(13 张基线截图)

1 participant