Automattic / Automattic/wp-codebox

Capture WordPress runtime state for generated-site Playground replay

オープン
#955 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
TypeScript
スター
16
フォーク
4
平均マージ
59分
マージ済み PR(30日)
131

説明

## Problem
Studio Web Workflow Bench r38 now passes with durable artifact publication, but the generated-site Playground replay remains `partial` because WP Codebox only captures the starting blueprint plus read/write mount text files.

The public `blueprint.after.json` is reviewer-clickable, but it is not yet a faithful replay of the generated WordPress site. It contains only plugin activation and login steps, so Playground opens a runtime shell without the generated site state.

## Evidence
- Passing Workflow Bench report: https://homeboy-artifacts-tunnel.dev.chubes.net/homeboy/workflow-bench/runs/studio-web-data-machine-diagnostic-20260614-lab-merged-r38/report.md
- Source evidence: https://homeboy-artifacts-tunnel.dev.chubes.net/homeboy/workflow-bench/runs/studio-web-data-machine-diagnostic-20260614-lab-merged-r38/evidence.json
- Current partial blueprint: https://homeboy-artifacts-tunnel.dev.chubes.net/homeboy/workflow-bench/runs/studio-web-data-machine-diagnostic-20260614-lab-merged-r38/artifacts/plain-site-data-machine/studio-web/attempt-1/live-2026-06-14T15-43-49-973Z/plain-site-data-machine/studio-web/wp-codebox-artifacts/runtime-mqdyf9i0-qca8id/blueprint.after.json
- Replay notes: https://homeboy-artifacts-tunnel.dev.chubes.net/homeboy/workflow-bench/runs/studio-web-data-machine-diagnostic-20260614-lab-merged-r38/artifacts/plain-site-data-machine/studio-web/attempt-1/live-2026-06-14T15-43-49-973Z/plain-site-data-machine/studio-web/wp-codebox-artifacts/runtime-mqdyf9i0-qca8id/blueprint.after-notes.json
- Artifact manifest: https://homeboy-artifacts-tunnel.dev.chubes.net/homeboy/workflow-bench/runs/studio-web-data-machine-diagnostic-20260614-lab-merged-r38/artifacts/plain-site-data-machine/studio-web/attempt-1/live-2026-06-14T15-43-49-973Z/plain-site-data-machine/studio-web/wp-codebox-artifacts/runtime-mqdyf9i0-qca8id/manifest.json

The replay notes report:

```json
{
"replayStatus": "partial",
"capturedFileCount": 0,
"replayableFileCount": 0,
"limitations": [
"Text files from readwrite mounts are embedded in blueprint.after.json as writeFile steps; binary files are copied into artifacts but not replayed yet.",
"Database exports, option diffs, uploaded media, active theme/plugin state, and screenshots are not captured yet."
],
"nextCaptureTargets": [
"database-export",
"active-theme",
"active-plugins",
"uploads",
"binary-file-replay"
]
}
```

## Desired outcome
For successful generated-site runs, WP Codebox should capture enough WordPress runtime state to make `blueprint.after.json` a real generated-site replay instead of an activation/login-only shell.

The next useful target is a Playground blueprint that can recreate the generated WordPress site from public artifacts after the source runtime has been destroyed.

## Acceptance criteria
- Successful Studio Web generated-site recipe runs emit `replayStatus: "replayable"` when runtime state capture succeeds.
- `blueprint.after.json` includes the generated site's durable WordPress state, including database content/options needed to render the generated site.
- Active theme and active plugin state are represented in the replay artifact.
- Uploaded/media or binary state is either replayed from public artifacts or explicitly represented as a remaining structured limitation.
- The existing `files/runtime-evidence/replay-status.json` contract from #952 remains the single orchestration surface for status and reasons.
- A fresh Studio Web Workflow Bench run for `plain-site-data-machine` reports `Durable replay: replayable=1, partial=0, not-available=0`.

## Related
- #951 asked for reliable replay proof status and was closed by #952.
- #952 successfully added the replay summary surface that made this remaining capture gap explicit.

## AI assistance
- **AI assistance:** Yes
- **Tool(s):** OpenCode (GPT-5.5)
- **Used for:** Drafted this issue from r38 Workflow Bench evidence and WP Codebox replay-status artifacts.

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

files/runtime-evidence/replay-status.json から開始し、plain-site-data-machine の実行で参照されている blueprint.after.json、blueprint.after-notes.json、manifest.json のアーティファクトを調査します。既存の replay-status コントラクトをオーケストレーションの境界として使用し、変更後に Studio Web Workflow Bench を実行します。完了条件は、blueprint がデータベース、オプション、テーマ、プラグイン、利用可能なメディアの永続的な状態を取得し、再現されないものについて構造化された制限事項を報告し、replayable=1, partial=0, not-available=0 を示すことです。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
typescript
領域
backend, databases
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
静か
明瞭さ
おおむね明確
初心者へのやさしさ
38/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。