董事長是決策者,不是工程師。AI 的責任是把「怎麼做」全部包辦,讓董事長只需「貼一次、按 Enter」。禁止叫董事長複製貼上、分段執行、手動改檔、開 Dashboard 貼程式碼。
沒有看到真實資料,不准下斷言、不准幻想、不准猜。先給唯讀診斷腳本,看到真實輸出,才動手。
任何改動前,先備份。Python 腳本寫入前檢查長度 > 5000,寫入後檢查大小 > 5000,過小自動還原。
PowerShell 貼長 HTML 會被截斷。用 Python 腳本,HTML 寫在 .py 檔裡,不經過 PowerShell 貼上。
Worker:npx wrangler deploy。Pages:npx wrangler pages deploy .。D1:npx wrangler d1 execute --remote。
所有腳本、文件、輸出、對話,全部使用繁體中文。嚴禁簡體字。
改任何功能前,先看現有程式碼、現有資料、現有結構。
「已更新」「已寫入」「已部署」不代表成功。要用 Invoke-WebRequest 抓線上內容、用 python -c 驗證語法。
腳本失敗就說失敗,檔案清空就說清空,驗證失敗就說失敗。
董事會已授權 AI 為執行長。技術決策直接做,只有「安全性疑慮」(撤銷金鑰、刪除備份、改 DNS)才請示。
「能自己跑的,自己跑;能一鍵的,給一鍵;絕不叫董事長當搬運工。」
所有腳本、文件、輸出、對話,全部使用繁體中文。嚴禁混用簡體字。
任何改動前,先備份。任何診斷前,先看原始資料。
結構正常 ≠ 內容正確。目錄實掃 ≠ JSON 登記。HTTP 200 ≠ 資料合法。
資料庫用 D1,不要用 KV 做需要排序、查詢、關聯的事。子網域要提早拆分。
PowerShell 貼長 HTML 會被截斷。用 Python 腳本,HTML 寫在 .py 檔裡。
C:\Users\User\ahpal-staticC:\Users\User\ahpal-pet2126023801129b81447a887818428611praystone.workers.dev| 項目 | 數值 |
|---|---|
| 文章總數 | 9,334 篇(JSON 登記) |
| 分類數 | 12 個 |
| travel 分類 | 832 篇(JSON = 實體,幽靈 0) |
| R2 圖片 | 8,500+ 張 |
| 導覽列 | 10 個連結(含「⚔️ 打怪場」) |
| 項目 | 數值 |
|---|---|
| 前端網域 | pet.ahpal.com |
| 打怪場 | pet.ahpal.com/ |
| 戰績牆 | pet.ahpal.com/wall.html |
| GitHub Repo | praystone/ahpal-pet |
| 本地路徑 | C:\Users\User\ahpal-pet |
| Pages 專案 | ahpal-pet |
| 後端 Worker | ahpal-pet-d1(ahpal-pet-d1.praystone.workers.dev) |
| 資料庫 | Cloudflare D1 ahpal-pet-db |
| D1 Database ID | 80ea49f8-a4fe-4cbf-9821-8337c7869567 |
| D1 綁定變數 | PET_DB |
| Worker 版本 | v2.0(11 個 API) |
| 裝備數量 | 30 件 |
| 怪物數量 | 10 隻 |
| 表名 | 用途 | 筆數 |
|---|---|---|
players | 玩家資料 | 動態 |
comments | 留言 | 動態 |
equipment | 裝備定義(30 件) | 30 |
player_equipment | 玩家已獲得的裝備 | 動態 |
monsters | 怪物定義(10 隻) | 10 |
battles | 戰鬥紀錄 | 動態 |
_cf_KV | Cloudflare 內部用,不要動 | — |
| 方法 | 端點 | 功能 |
|---|---|---|
| POST | /api/hit | 打怪(含隨機掉落裝備) |
| GET | /api/stats?nickname=XXX | 查詢戰績 |
| GET | /api/leaderboard?page=1 | 排行榜(分頁) |
| POST | /api/comment | 新增留言 |
| GET | /api/comments?page=1 | 留言列表(分頁) |
| GET | /api/inventory?nickname=XXX | 查詢背包 |
| POST | /api/equip | 穿戴裝備 |
| POST | /api/unequip | 卸下裝備 |
| GET | /api/monsters | 怪物列表 |
| POST | /api/battle | 回合制戰鬥 |
| GET | /api/battles?nickname=XXX&page=1 | 戰鬥紀錄 |
| 區域 | 內容 |
|---|---|
| 頂部狀態條 | 暱稱、等級、擊殺、經驗、攻擊、防禦、HP |
| 左欄 | 快速打怪 → 挑戰怪物 → 戰鬥紀錄 |
| 右欄 | 當前裝備(5 格)→ 背包 → 即時訊息 |
| 區域 | 內容 |
|---|---|
| 左欄 | 等級排行榜(分頁,前 3 名金銀銅)→ 最近戰鬥紀錄 |
| 右欄 | 留言板(送出、分頁、字數統計、頻率限制) |
drop_rate 隨機掉落level * 100 升一級,支援多級連升用 PowerShell 貼 17KB HTML,貼上時被截斷,$newHtml 是空的,WriteAllText 把空字串寫進檔案,pet-index.html 從 16KB 變成 0 bytes。解法:大型 HTML 用 Python 腳本。
subprocess.run(..., encoding="utf-8") 讀取子進程輸出,遇到 CP950 位元組解碼失敗。解法:直接用 python -c 執行。
連續兩次「沒先驗證字串存在就寫取代邏輯」,導致取代失敗。解法:取代前先用 IndexOf 或 in 確認。
$content -ne $original 對字串不區分大小寫。解法:比較大小寫變化用 -cne。
git push 成功,但 Pages 專案停在兩天前。解法:用 npx wrangler pages deploy . 直接上傳。
BBS2 是獨立子網域,不是 memories.ahpal.com/bbs2/。
| 用途 | 指令 |
|---|---|
| 完整部署 / 主控台 | .\scripts\ahpal-master.ps1 → [1] |
| 死命令預檢 | .\scripts\preflight-check.ps1 |
| 黃金備份 | .\scripts\backup-system.ps1 -Golden |
| Git 管理工具(v3.9) | .\git-manager.ps1(6 倉庫) |
| 分類檢驗工具 | python scripts\check-category.py |
| 打怪場部署 | cd C:\Users\User\ahpal-pet; python deploy_v22.py |
| 戰績牆部署 | cd C:\Users\User\ahpal-pet; python deploy_wall.py |
| Worker 部署 | cd C:\Users\User\ahpal-pet\worker; npx wrangler deploy |
| Pages 強制部署 | npx wrangler pages deploy . --project-name=ahpal-pet --branch=main --commit-dirty=true |
| D1 建表(遠端) | npx wrangler d1 execute ahpal-pet-db --remote --file=schema.sql |
| D1 查詢(遠端) | npx wrangler d1 execute ahpal-pet-db --remote --command="SELECT ..." |
| # | 死命令 | 檢查方式 |
|---|---|---|
| 1 | 文章變更後強制檢查 | .\scripts\preflight-check.ps1 |
| 2 | 文章檔名強制使用英文 | 自動強制轉換 |
| 3 | CSS 靜態資產保護 | main.css 禁止自動覆蓋 |
| 4 | 文章清單集中管理 | master-articles.json + 新架構 |
| 5 | 設定 UTF-8 編碼 | .ps1 有 BOM、.json/.py/.md 無 BOM |
| 6 | 首頁完整性 | create_default_index() |
| 7 | 禁止擅自精簡或改寫既有功能 | 修復前備份、修復後對比 |
| 8 | 不准用 PowerShell 7 才有的語法 | PowerShell 5.1 相容 |
| 9 | 盡量用 PowerShell 直接修改腳本 | 一鍵完成多種任務 |
| 10 | 永遠使用 SYSTEM 帳戶排程 | LogonType: ServiceAccount |
| 11 | SEO 四大件無 noindex | .\scripts\seo-dashboard.ps1 |
| 12 | Production 部署唯一正門 | 禁止 npx wrangler pages deploy .(緊急時除外) |
| 13 | 純文字檔案寫入規範 | 單引號陣列 + WriteAllLines |
| 14 | JSON 合法性驗證 | 完整解析,不能只看 HTTP 200 |
| 15 | 禁止簡體字,一律使用繁體字 | 所有腳本、文件、輸出、對話 |
| 16 | 🆕 大型 HTML 用 Python 部署 | 不用 PowerShell 貼長字串 |
| 17 | 🆕 Python subprocess 讀輸出用 errors="replace" | 避免 UnicodeDecodeError |
| 18 | 🆕 取代字串前先驗證存在 | IndexOf 或 in |
| 19 | 🆕 比較大小寫變化用 -cne | PowerShell -ne 不區分大小寫 |
| 20 | 🆕 Cloudflare Pages 部署用 wrangler CLI | 不依賴 Git 自動偵測 |
前 100 條沿用 v11.7,新增以下 10 條:
len > 5000,寫入後檢查 getsize > 5000errors="replace"IndexOf 或 in-cnenpx wrangler pages deploy .--remotehttps://bbs2.ahpal.com/https://pet.ahpal.com/前 70 條沿用 v11.7,新增以下 5 條:
errors="replace" 或 python -c-cnenpx wrangler pages deploy .前 65 項沿用 v11.7,新增以下 10 項:
pet.ahpal.com/ 正常pet.ahpal.com/wall.html 正常npx wrangler deploynpx wrangler pages deploy .bbs2.ahpal.com| 項目 | 值 |
|---|---|
| 手冊版號 | v11.9 FINAL |
| 更新日期 | 2026-10-20 |
| 維護者 | 🦞 龍蝦總工程師 |
| 文件路徑 | C:\Users\User\ahpal-static\docs\ 與 strategy\ |
| 檔案名稱 | 打一份龍蝦總工程師-AI交接與新進工程師交接手冊-FINAL-v11.9.html |
| 項目 | v11.8 | v11.9 |
|---|---|---|
| 日期 | 2026-10-20 | 2026-10-20(同一天,融合版) |
| 工作原則十條 | 無 | 第 0 章,最高優先 |
| 導覽列 | 無 | 有(與主站一致 10 連結) |
| 寵物遊戲章節 | 有 | 完整保留 |
| 核心口號 | 九條 | 十條(+不當搬運工) |
| 血淚教訓 | 六條 | 六條(完整保留) |