diff --git a/docs/LOGBOOK.md b/docs/LOGBOOK.md index b3cdd0f59..5dbcf18d4 100644 --- a/docs/LOGBOOK.md +++ b/docs/LOGBOOK.md @@ -1,3 +1,20 @@ +## 2026-06-24|Codex Start Here intake preflight sync readback + +**背景**:blocked products owner response intake preflight 已推上 Gitea 後,Mac Mini 本機 `~/.codex/CODEX-START-HERE.md` 與 `~/.codex/codex-workstation-sync-dashboard.snapshot.json` 需要再次同步到 MacBook Pro,避免外出開新 Codex 視窗時讀不到收件預檢 gate。 + +**Readback**: +- MacBook Pro reachable:`MacBook-Pro.local`。 +- Start Here SHA256:Mac Mini / MacBook Pro 皆 `4505cda5bba8d099a74305ee20d740bc42d10f6ae934ab1e41a419a9640cec54`。 +- Dashboard SHA256:Mac Mini / MacBook Pro 皆 `f4eba91c422edac694c5b35eb38a3bff279a9b2a2a8dfecb4581c567c3b16003`。 +- Dashboard JSON parse:Mac Mini / MacBook Pro 皆 pass。 +- MacBook Pro markers:`blocked_product_response_intake_preflight=8/8`、`blocked_product_owner_response_files=0`、`blocked_product_owner_accepted=0/8`、`artifact_sync_synced=2`、dashboard `blocked_product_owner_response_intake_preflight`、dashboard `blocked_product_owner_response_file_count=0`。 + +**文件**: +- `docs/operations/codex-start-here-intake-preflight-sync-readback.snapshot.json` +- `docs/operations/CODEX-START-HERE-INTAKE-PREFLIGHT-SYNC-READBACK-2026-06-24.md` + +**邊界**:沒有同步 auth、SQLite、sessions、raw Codex / ChatGPT conversations、`.env`、runtime volumes、raw `.git`;沒有修改產品 repo、沒有建立 product branch、沒有建立 remote `dev` 或 Gitea repo。owner response files 仍為 `0`,owner accepted 仍為 `0/8`。 + ## 2026-06-24|Blocked products owner response intake preflight **背景**:blocked products 已有 owner decision packages `8/8`、response templates `8/8`、acceptance ledgers `8/8`,但仍缺真正 owner response。為避免下一輪人工判斷混亂,本輪新增可執行 intake preflight,讓未來收件先走機器檢查與 lanes 分流。 diff --git a/docs/operations/CODEX-START-HERE-INTAKE-PREFLIGHT-SYNC-READBACK-2026-06-24.md b/docs/operations/CODEX-START-HERE-INTAKE-PREFLIGHT-SYNC-READBACK-2026-06-24.md new file mode 100644 index 000000000..f06aaad14 --- /dev/null +++ b/docs/operations/CODEX-START-HERE-INTAKE-PREFLIGHT-SYNC-READBACK-2026-06-24.md @@ -0,0 +1,51 @@ +# Codex Start Here Intake Preflight Sync Readback + +- generated_at: `2026-06-24T15:23:00+08:00` +- result: `synced` +- MacBook Pro: `MacBook-Pro.local` + +## 同步內容 + +只同步兩個 handoff 檔案: + +- `~/.codex/CODEX-START-HERE.md` +- `~/.codex/codex-workstation-sync-dashboard.snapshot.json` + +沒有同步: + +- `~/.codex/auth.json` +- `~/.codex/*.sqlite` +- `~/.codex/sessions` +- raw Codex / ChatGPT conversations +- `.env` +- runtime volumes +- raw `.git` directories + +## Readback + +| Workstation | Start Here SHA256 | Dashboard SHA256 | +|-------------|-------------------|------------------| +| Mac Mini | `4505cda5bba8d099a74305ee20d740bc42d10f6ae934ab1e41a419a9640cec54` | `f4eba91c422edac694c5b35eb38a3bff279a9b2a2a8dfecb4581c567c3b16003` | +| MacBook Pro | `4505cda5bba8d099a74305ee20d740bc42d10f6ae934ab1e41a419a9640cec54` | `f4eba91c422edac694c5b35eb38a3bff279a9b2a2a8dfecb4581c567c3b16003` | + +MacBook Pro markers: + +- `blocked_product_response_intake_preflight=8/8` +- `blocked_product_owner_response_files=0` +- `blocked_product_owner_accepted=0/8` +- `artifact_sync_synced=2` +- dashboard `blocked_product_owner_response_intake_preflight` +- dashboard `blocked_product_owner_response_file_count=0` + +## 判定 + +Mac Mini / MacBook Pro 現在看到同一份 Start Here 與 workstation dashboard,且兩邊都包含 blocked product intake preflight 狀態。這代表外出開新 Codex 視窗時可讀到最新收件預檢 gate;不代表 raw Codex 歷史視窗同步,也不代表任何 blocked product 已收到或驗收 owner response。 + +## 邊界 + +- 沒有同步 auth、SQLite、sessions、raw conversations、`.env`、runtime volumes 或 raw `.git`。 +- 沒有修改任何產品 repo。 +- 沒有建立 product branch、remote `dev` branch 或 Gitea repo。 +- owner response files 仍為 `0`。 +- owner accepted 仍為 `0/8`。 +- remote dev ready 仍為 `0/8`。 diff --git a/docs/operations/codex-start-here-intake-preflight-sync-readback.snapshot.json b/docs/operations/codex-start-here-intake-preflight-sync-readback.snapshot.json new file mode 100644 index 000000000..a4117c16a --- /dev/null +++ b/docs/operations/codex-start-here-intake-preflight-sync-readback.snapshot.json @@ -0,0 +1,59 @@ +{ + "schema_version": "codex_start_here_intake_preflight_sync_readback_v1", + "generated_at": "2026-06-24T15:23:00+08:00", + "scope": "Mac Mini and MacBook Pro Start Here / workstation dashboard sync after blocked product owner response intake preflight", + "synced_files": [ + "~/.codex/CODEX-START-HERE.md", + "~/.codex/codex-workstation-sync-dashboard.snapshot.json" + ], + "excluded_files": [ + "~/.codex/auth.json", + "~/.codex/*.sqlite", + "~/.codex/sessions", + "raw Codex conversations", + "raw ChatGPT conversations", + ".env", + "runtime volumes", + "raw .git directories" + ], + "mac_mini": { + "host": "local", + "start_here_sha256": "4505cda5bba8d099a74305ee20d740bc42d10f6ae934ab1e41a419a9640cec54", + "dashboard_sha256": "f4eba91c422edac694c5b35eb38a3bff279a9b2a2a8dfecb4581c567c3b16003", + "dashboard_json_parse_ok": true + }, + "macbook_pro": { + "host": "192.168.0.111", + "hostname": "MacBook-Pro.local", + "start_here_sha256": "4505cda5bba8d099a74305ee20d740bc42d10f6ae934ab1e41a419a9640cec54", + "dashboard_sha256": "f4eba91c422edac694c5b35eb38a3bff279a9b2a2a8dfecb4581c567c3b16003", + "dashboard_json_parse_ok": true, + "start_here_markers_found": [ + "blocked_product_response_intake_preflight=8/8", + "blocked_product_owner_response_files=0", + "blocked_product_owner_accepted=0/8", + "artifact_sync_synced=2" + ], + "dashboard_markers_found": [ + "blocked_product_owner_response_intake_preflight", + "blocked_product_owner_response_file_count=0" + ] + }, + "summary": { + "handoff_file_count": 2, + "sha256_match_count": 2, + "blocked_product_decision_package_count": 8, + "blocked_product_response_template_count": 8, + "blocked_product_response_acceptance_ledger_count": 8, + "blocked_product_response_intake_preflight_count": 8, + "blocked_product_owner_response_file_count": 0, + "blocked_product_owner_accepted_count": 0, + "blocked_product_remote_dev_ready_count": 0, + "artifact_sync_synced_count": 2, + "artifact_sync_blocked_count": 0, + "raw_history_sync": false, + "secret_values_collected": false, + "remote_product_write_performed": false, + "runtime_write_performed": false + } +}