FR-152 STATE(living,就地改)

只描述此刻。沿革在 fr152-LOG.md 與 git log。

§1

一句話

官網程式碼在 ~/Projects/Billows/Audit-Manager/guidant-ai-website(TanStack Start,prerender),branch feature/FR-139,HEAD b48a866,已 push 並部署在 https://guidant-ai.stg.jedicotech.com(Cloudflare Pages)。上線測試完成(2026-10-21):站開放收錄、Google Search Console 與 Bing 登記完成、Web Analytics 上線、13 個 AI 爬蟲全可抓。22 張子卡 Done(A1 取消);K2 驗收通過待確認。所有工作完成,等收尾令。後續是時間(收錄一至兩週)與正式網域上線(待辦見下)。

§2

現況

項目 狀態
框架 TanStack Start(決策者最終裁示,不轉 Next);vite.config.ts prerender 開啟,npm run build → .output/public/ 48 支 index.html(24 頁×中英)
頁面 首頁、產品總覽、5 功能細頁、5 解決方案、信任中心、預約、聯絡、隱私/條款占位、指南清單+6 篇:全部有中文真文案;英文 en.json 與 .en.md 已換英文(B5);英文頁 JSON-LD 公司名/地址改英文 → CM-2958
圖片 32 張真截圖(16×亮暗)已上;12 個占位框刻意保留(ISO 附錄 A、CRA 附件一、多客戶儀表板、租戶切換、跨專案證據、部署架構,中英各一),補圖要另建 Demo 或畫圖
SEO C1~C5 全過:canonical/hreflang(zh-TW)/og 分區圖;robots+sitemap+llms.txt prebuild 自動產(gitignore);JSON-LD 五型別 48 頁
部署 已上線且開放收錄(2026-10-21 17:35 起) https://guidant-ai.stg.jedicotech.com(主)+ https://guidant-ai-website.pages.dev(備),Cloudflare Pages 連 GitLab feature/FR-139 自動部署;VITE_SITE_URL 指 stg;全站 noindex(測試期)。nitro preset 固定 cloudflare-module(c378ded)否則 Pages build 機會自動切 preset 炸掉。AI 爬蟲政策在 zone 的「AI Crawl Control → 設定 AI 機器人政策」,訓練已改允許、Bot Preference Sync 關
Notion 母卡 CM-2938;A1 取消;B1~B4 驗收通過待確認;D1 驗收通過待確認;其餘 Not started。工作坊先不導入,決策者手動派
§3

任務總表

卡 做什麼 狀態
CM-2939 A1 轉 Next ❌ 取消
CM-2940 B1 功能細頁+prerender ✅ 驗收通過待確認
CM-2941 B2 解決方案 ✅ 驗收通過待確認
CM-2942 B3 信任中心/預約/聯絡 ✅ 驗收通過待確認
CM-2943 B4 指南 ✅ 驗收通過待確認
CM-2949 D1 Demo 資料 ✅ 驗收通過待確認
CM-2945 C2 robots+sitemap ✅ 驗收通過待確認(02cb3a3)
CM-2946 C3 JSON-LD ✅ 驗收通過待確認(7fc3c88)
CM-2947 C4 llms.txt ✅ 驗收通過待確認(f88a1b1;小修:排除 privacy/terms 占位頁)
CM-2948 C5 og 圖+截圖元件 ✅ 驗收通過待確認(972f80a)
CM-2944 C1 canonical/hreflang/og ✅ 驗收通過待確認(b1f932f+退修 2814da6)
CM-2950 D2 截圖換圖 ✅ 驗收通過待確認(6c34c5f;6 種畫面留占位、AI 儀表板用小幫手頂替,待決策者裁)
CM-2951 E1 Pages 部署 ✅ 驗收通過待確認(13 個 AI 爬蟲真實 UA 全 200;zone 層 AI 政策「訓練」改允許)
CM-2952 E2 表單+分析 ✅ 驗收通過待確認(0e21de9;寄信程式備妥 key 留空走 mailto、beacon 等決策者填 VITE_CF_BEACON_TOKEN;感謝頁 4 支當轉換事件)
CM-2953 E3 上線測試驗收 ✅ Done(報告 BE 86d3e2438;5 缺陷→C8;Search Console 待帳號)
CM-2956 B5 英文版 en.json+.en.md ✅ 驗收通過待確認(129d30f)
CM-2957 文件 README/09 Next 殘句改 TanStack ✅ 驗收通過待確認(BE de3606cee)
CM-2958 C6 英文 JSON-LD 公司名地址+三處小修 ✅ 驗收通過待確認(4eb01eb;commit 誤帶 B6 的 i18n hunk,結果無害)
CM-2960 C7 llms-full.txt 全站內文攤平 ✅ Done(5929d6e,228KB;兩小修→C8)
CM-2961 C8 E3 五缺陷+og PNG+llms-full 英文標籤 ✅ Done(a8d0890,線上複驗全過)
CM-2963 K1 建站知識庫 playbook ✅ Done(BE 19ad81442,683 行;轉 HTML 待收尾)
CM-2964 K2 知識庫補登記實況 ✅ 驗收通過待確認(933dbb8ea+aad032d15,playbook 746 行)
CM-2962 E4 試水溫上線 ✅ Done:noindex 拿掉(64bd387)、驗證 meta(b48a866)、Search Console 驗證通過+sitemap 已送(顯示「無法擷取」屬排程未到,明天看)、Bing 匯入成功、sitemap Success、48 URL 全發現
CM-2959 B6 「資源」下拉直接列六篇指南+總覽 ✅ 驗收通過待確認(a270943)
§4

E3 前的小修卡

CM-2958 C6 已開(決策者裁英文頁 JSON-LD 帶英文公司名地址):含全形冒號、title 分隔符、llms.txt 排除占位頁。可派,與 D2/E1 平行;不 push(Pages 已接 Git)。

§5

試水溫網址(決策者 2026-10-21 裁,同日改判)

維持 guidant-ai.stg.jedicotech.com,只拿 noindex、送 Search Console;Google 不看網址裡的 stg。首腦刪 noindex 要等 C8(canonical 斜線)一起 push。代價:之後換正式網址要 301、權重搬移要幾週到幾個月。

§6

正式上線待辦(E3 報告,E4 做掉一部分)

① 刪 _headers noindex(stg 站要另留 noindex,正式站另開 Pages 專案或用環境變數控制,避免兩站重複內容);② VITE_SITE_URL 改正式網域;③ Pages 綁正式網域;④ 正式網域 zone 的 AI Crawl Control 政策再關一次;⑤ zone 關 Email Obfuscation;⑥ Search Console 驗正式網域+送 sitemap、Bing 匯入;⑦ 站外訊號(LinkedIn/G2/合作夥伴)開卡;⑧ Web Analytics token。

§7

決策者待填的 Pages 環境變數

VITE_CF_BEACON_TOKEN(Cloudflare → Analytics & Logs → Web Analytics → 新增站點 → snippet 裡的 token),填完重新部署;VITE_FORM_KEY 等換表單方案。

§8

待決策者

  1. B1~B4、D1 五張改 Done(首腦不改)。
  2. 下一批派法:C1、C2、C3、C5、CM-2957 互不相干可同時派;C4 等 C2;B5(CM-2956)等 C1。
  3. 兩個產品 bug 要另開卡 已開為 FR-151 子卡 CM-2954(新增任務靜默失敗)、CM-2955(推進按鈕 403),決策者另派:① 用複製範本建的專案在規劃頁「新增任務」靜默失敗(flow_control_job_repo_impl.py 662~681 用原範本 uid 找 execution);② 階段推進按鈕 user_can_advance 看參與者角色、實際 advance_stage 看 stage main_roles,兩者不同步造成「按鈕亮、按了 403」。
§9

站外訊號(LinkedIn/G2/Capterra/合作夥伴連結)

決策者 2026-10-21 裁:等正式網域定了再開卡,測試網域填上去之後還要改。

§10

產品 bug 待另開卡(D2 發現、首腦核實)

AI 儀表板生成的 KPI 卡自帶 ≥3px 左側粗框(違反 UI 禁令,但來自 AI 產出內容非 FE 碼)、完成率顯示 0、狀態露英文 in_progress;blsadmin 身分生成會撈到 Billows 自家 CRA 專案。

§11

搜尋引擎登記(2026-10-21 完成)

Google Search Console:資源 https://guidant-ai.stg.jedicotech.com/,HTML 標記驗證通過,sitemap 已送;Bing Webmaster:從 GSC 匯入,sitemap Success、48 URL;Bing 有「AI Performance(Beta)」看 Copilot/AI 搜尋引用,兩週後看。Cloudflare Web Analytics token 已填、beacon 上線。IndexNow:key 檔 public/a42033575e8a46da956cfc2978fd63f0.txt(b619435),48 頁已推、回 202;之後新頁掛進部署流程自動推。帳號是決策者個人 Google,之後給客戶用「新增使用者」即可。

§12

知識庫

5-knowledge/website-build-playbook.md(K1+K2,746 行):下次建站照做的 11 節 playbook,含今天實際登記的畫面步驟與 IndexNow,含 zone 層三個會擋 AI 爬蟲的預設與 13 個真實 UA 檢查腳本。收尾時走 doc-site-build 轉 HTML 進需求站。

§13

Demo 資料(D2 截圖用)

專案 1605「鼎盛精密科技 CMMC L2 合規專案」、租戶 102;帳號 dspm.lin(PM)、dsexe.chen/dsexe.wu(執行)、dsaudit.huang(稽核),密碼在 BE .demo-accounts.local(不入版控)。16 張截圖的網址與要點哪一筆在 D1 卡回寫第五段。

§14

已知坑(接手必讀)

  • 子卡主文仍是 Next 寫法,TanStack 修正在卡尾,runner 要照卡尾。
  • 多棒同時改 src/i18n/zh-TW.json 與 SiteHeader.tsx 會撞,B 階段靠 rebase 解掉;C 階段改動分散,風險低。
  • git reset --hard/git clean 只在確認沒有別的 session 在工作區時才做(本 FR 曾因 runner 暫存 rename 而第一次還原不乾淨)。
  • 共用工作樹事故:C6 整檔 git add i18n 把 B6 未 commit 的 hunk 帶走;多棒同時改 zh-TW.json/en.json/SiteHeader.tsx 時 add 前先 git diff,有別人的 hunk 用 git add -p。
  • 驗收 hover 才渲染的 UI 不能 grep prerender HTML(B6 教訓),要 headless 實際 hover。
  • Cloudflare 兩層 AI 攔截都在 zone 不在 Pages 專案:「AI Crawl Control → 設定 AI 機器人政策」的「訓練」預設不允許(ClaudeBot/GPTBot/Amazonbot 歸這類,被擋回純文字 403);「Bot Preference Sync」會把 Content Signals 版 robots.txt 蓋在我們的前面。換正式網域要再關一次。
  • 測爬蟲要用各家真實 UA 字串,裸 -A GPTBot Cloudflare 認不出,會假綠。
  • 本機看站:npm run build && npx serve -l 5180 .output/public;dev 模式 npm run dev(5180 被佔會自動換埠)。