# ManualApplyPreview 3B 線上驗收紀錄

## 1. 驗收定位

本文件記錄第三階段 3B `ManualApplyPreview` 完成稽核後，文件 repo 是否已成功推送並部署到線上文件網站。

本驗收只確認「文件網站與狀態頁已反映 3B 完成稽核與程式 repo commit」。不代表已執行真實 DB read-only preview、不代表正式 DDL Apply 可用，也不代表已啟用 WebApi、ServiceHost 或正式部署流程。

## 2. 驗收結論

| 項目 | 結果 | 說明 |
|---|---|---|
| 文件 repo push | 通過 | `origin/main` 已指向 `0feec7c04bad4b9b7c3a648d432d0f2674d19cc9`。 |
| Cloudflare Pages 首頁 | 通過 | 首頁 HTTP `200`，可讀到 3B 完成稽核入口、`75%` 與程式 commit `13c14ca`。 |
| 3B 完成稽核頁 | 通過 | 稽核頁 HTTP `200`，可讀到 `ManualApplyPreview 3B 完成稽核表` 與 `3B 第一版可驗收完成`。 |
| `status.json` | 通過 | 線上 `status.json` HTTP `200`，`shortCommit=13c14ca`、`source=local-codex`，stage 含 3B ManualApplyPreview。 |
| GitHub Actions | 通過 | 文件 repo 最新 `Apply code repo status` workflow run `26933207264` 為 `success`。 |

驗收結論：3B 文件與線上狀態已完成發布驗收；線上文件已反映 `ManualApplyPreview` 第一版完成稽核與程式 repo `13c14ca` 狀態。

## 3. 驗收環境

| 項目 | 內容 |
|---|---|
| 驗收日期 | 2026-06-04 |
| 文件 repo | `hs-device-control-template-docs` |
| 文件 branch | `main` |
| 文件 commit | `0feec7c04bad4b9b7c3a648d432d0f2674d19cc9` |
| 文件 commit 訊息 | `同步 3B ManualApplyPreview 完成稽核` |
| 程式 repo | `hs-device-control-template` |
| 程式 branch | `poc/nmodbus-tcp` |
| 程式 commit | `13c14cad40e47a56c9c782bef0fa9680d122fda4` |
| 程式短 commit | `13c14ca` |
| 程式 commit 訊息 | `新增 ManualApplyPreview 安全預覽` |

## 4. 線上 URL 檢查

| URL | 檢查結果 | 實際確認 |
|---|---|---|
| `https://hs-device-control-template-docs.pages.dev/` | HTTP `200` | 首頁可讀，且包含 3B 完成稽核入口。 |
| `https://hs-device-control-template-docs.pages.dev/docs/manual-apply-preview-3b-completion-audit.html` | HTTP `200` | Cloudflare Pages 會導向 extensionless URL，頁面內容可讀。 |
| `https://hs-device-control-template-docs.pages.dev/status.json` | HTTP `200` | JSON 可讀，內容對應程式 repo `13c14ca`。 |

## 5. 內容比對

| 線上內容 | 比對結果 |
|---|---|
| 稽核頁包含 `ManualApplyPreview 3B 完成稽核表` | 通過 |
| 稽核頁包含 `3B 第一版可驗收完成` | 通過 |
| 首頁包含 `3B 完成稽核表` | 通過 |
| 首頁包含 `75%` | 通過 |
| 首頁包含 `13c14ca` | 通過 |
| `status.json.shortCommit` 為 `13c14ca` | 通過 |
| `status.json.source` 為 `local-codex` | 通過 |
| `status.json.stage` 包含 `3B ManualApplyPreview` | 通過 |

## 6. GitHub Actions 檢查

| 項目 | 結果 |
|---|---|
| 最新 workflow | `Apply code repo status` |
| run id | `26933207264` |
| event | `repository_dispatch` |
| branch | `main` |
| 狀態 | `completed` |
| 結論 | `success` |
| 建立時間 | `2026-06-04T05:40:56Z` |
| 耗時 | `15s` |

補充說明：文件 repo 目前只有 `apply-code-status.yml`，最新成功 run 是 `repository_dispatch`；沒有新的 push-triggered GitHub Actions 部署 workflow。線上驗收以 Cloudflare Pages HTTP 與內容比對為主要依據。

## 7. 驗收限制

| 限制 | 說明 |
|---|---|
| 未執行真實 DB preview | 本次只驗收線上文件，不執行 DB 連線或 read-only preview。 |
| 未執行 DDL | 沒有執行 `CREATE TABLE`、`ALTER TABLE`、`DROP` 或正式 Apply。 |
| 未修改外部服務設定 | 沒有修改 Cloudflare、GitHub Secret、部署權限或 workflow 設定。 |
| 未驗收手機版視覺 | 本次以 HTTP 與內容比對為主，未做手機版截圖或瀏覽器視覺檢查。 |
| PowerShell stdout 限制 | 部分管線直接讀取 `curl` 內容時回傳空字串，後續改用提升權限 `curl` 下載內容後比對成功；此不列為部署失敗。 |

## 8. 停止線

即使本次線上驗收已通過，仍不得自動擴大到以下項目：

- 不得執行真實 DB read-only preview，除非使用者另行確認連線資訊、密碼環境變數與 `AllowRead`。
- 不得執行任何正式 DDL 或 Apply。
- 不得把 `CanApply` 改為 `true`。
- 不得新增 WebApi / ServiceHost / WinForms Debug Tool。
- 不得修改 Cloudflare Pages、GitHub Secret、GitHub Actions 權限或外部部署設定。
- 不得保存 DB 密碼、Token、完整 connection string 或正式環境資訊。

## 9. 建議下一步

3B 線上驗收已通過後，已承接並完成 3C Service / API 邊界分析。建議下一步由使用者選擇：

1. 整理 3C Service / API 決策確認表：逐項確認是否進入 Application Service contract、ServiceHost / WebApi 邊界或其他程式實作。
2. 執行真實 DB read-only ManualApplyPreview 驗證：需另行確認測試 DB、密碼環境變數與 `AllowRead`，且不得執行 DDL。
3. 整理本次文件 repo commit / push 前確認：若要把 3C 邊界分析與同步文件提交並推送，再進入下一輪部署檢查。
