David Chao

Vibe Coding 上線前檢查:踩坑地圖 26 題

這份題目是我從 799 份 AI 程式審查,加上自己做產品踩過的坑,一題一題整理出來的。分成資安、邏輯、架構、效能、維護、維運六類,每類 4 到 5 題,全部做完大概 15 分鐘。

每題按「有」「沒有」「不知道」。答「有」代表你確定做到,而且真的試過。動手測的時候,請用自己開的測試帳號跟測試資料,不要拿真的客戶資料來試。

做完每一類會亮一個燈:全部「有」是綠燈,有「不知道」是黃燈,有「沒有」就是紅燈。

一、資安

1.改網址裡的編號,看不到別人的資料

為什麼
2025 年有人掃了 1,645 個用 Lovable 做的專案,有 170 個沒鎖好,誰都看得到別人的資料。我也審到過,一個多店的平台,別家店的商品隨便一家店登入都看得到。
自己測
用 A 帳號打開一筆自己的訂單,把網址最後那串數字加一或減一,按 Enter。正確的結果是「沒有權限」或「找不到」。

這題還沒答

2.沒登入的人,打不開要登入才能看的頁面

為什麼
AI 加新功能的時候,常常新開一個入口卻忘了掛登入檢查。漏掉的那一個,就是會出事的那一個。
自己測
登入後把後台各頁的網址複製下來,開一個無痕視窗貼上,看打不打得開。

這題還沒答

3.權限最低的帳號,按不到不該按的按鈕

為什麼
我抓到過一個車行系統,業務新增付款時選個帳戶就直接入帳了,本來應該要會計核准。另一個系統把員工管理、系統管理的選單,直接露給一般員工看。
自己測
開一個權限最低的帳號,把每個選單、每顆按鈕都點一遍。

這題還沒答

4.金鑰跟密碼,不在網頁裡,也不在程式碼裡

為什麼
有人掃了大約 13 萬個 vibe coding 做的網站,差不多每五個就有一個把金鑰或憑證露在外面。金鑰一外流,別人就能拿你的帳號刷 AI、發簡訊,帳單算你的。
自己測
網頁按 F12,在「網路」或「來源」裡搜尋 key、secret、token,看有沒有一長串像密碼的字。

這題還沒答

5.一般使用者,改不到角色、金額、點數

為什麼
如果系統把使用者送來的資料整包照收,有人多塞一個欄位,就能把自己變成管理員,或把點數改成想要的數字。
自己測
列出系統裡跟權限、錢有關的欄位,請 AI 列出每個表單可以寫入哪些欄位,看這些欄位有沒有在裡面。

這題還沒答

二、邏輯

6.金額欄位留空、填 0、填負數,系統都會擋

為什麼
我審過一個活動系統,兩種價格其中一種沒填,結果直接照 0 元收。799 份審查裡,錢、數量、點數算錯有三十幾個,是最多的一類。
自己測
每個要填金額或數量的欄位,留空、填 0、填負數、填一個超大的數字,各送一次。

這題還沒答

7.清晨或半夜操作,日期不會跑掉

為什麼
我的存錢筒 App,早上 8 點前打卡會被記成昨天,家長再勾一次就多發一次獎勵。原因是伺服器用世界標準時間,畫面用台灣時間。
自己測
早上 8 點前操作一次,隔天看紀錄上的日期對不對。報表選「本月」,看頭尾兩天有沒有算到別的月份。

這題還沒答

8.連按兩次、或網路斷掉重送,不會多出一筆

為什麼
我審過一個串臉書廣告的功能,連線逾時自動重送,結果在客戶的廣告帳號裡建出重複的活動。另一個系統,同一筆資料傳兩次就變成兩筆。
自己測
送出按鈕快速連按兩下;或在按下送出的瞬間把網路關掉再打開,看會不會多一筆。

這題還沒答

9.畫面寫「成功」,是真的成功

為什麼
我看過一個系統上線後每天抓到 0 筆資料,管理頁照樣顯示成功。我的存錢筒 App 也有過,選了照片、按建立、顯示成功,照片其實沒存進去。
自己測
不要看畫面寫什麼,去看資料本身。筆數有沒有增加、照片點開有沒有、寄出的信收不收得到。

這題還沒答

10.新加的功能,有守住原本的限制

為什麼
我的存錢筒 App,每週一次的任務,加了新的打卡方式之後,變成一週可以領七次。舊的地方有擋,新的地方沒擋。
自己測
每加一種新的操作方式,就把「每天上限」「每週一次」「只能領一次」這類規則,用新方式再試一遍。

這題還沒答

三、架構

11.兩家店(兩間公司)的資料,互相看不到

為什麼
做給很多家店一起用的系統,最怕 A 店看到 B 店的資料。AI 每次只看眼前那段程式,記不住每次查資料都要加上「是哪一家店」。
自己測
開兩家店的測試帳號,各建一筆好認的資料(例如「測試甲」「測試乙」),列表、搜尋、匯出都互相找找看。

這題還沒答

12.哪些資料是各店共用的,有一份清單

為什麼
我幫一個汽車業客戶做的系統,所有資料都過同一道「只看自己店」的關,不分店的那些也一項一項寫清楚為什麼可以共用。沒有這份清單,就沒人分得出哪些是故意共用、哪些是漏掉。
自己測
請工程師或 AI 給你這份清單。給不出來,就是沒有。

這題還沒答

13.同一份資料,只在一個地方改

為什麼
我審過一個報價單的設計,AI 把客戶名稱跟地址直接複製一份存在單據裡。這樣客戶一改地址,就得一張一張去改,漏一張就對不起來。
自己測
改一次客戶或商品的基本資料,看所有用到它的畫面是不是都一致。

這題還沒答

14.外部資料自動同步,不會蓋掉你手動改過的

為什麼
我做過一個每晚跟外部系統同步的功能,第一個要求就是「不要去覆寫不同或既有的值」。我也審到過,老闆手改過的草稿,被 AI 再改一句就整份蓋掉。
自己測
手動改一筆會被同步的資料,等同步跑完,再回來看還在不在。

這題還沒答

四、效能

15.資料多 100 倍,最常用的頁面還跑得動

為什麼
我有個客戶的每日對帳,AI 寫成每天從上線第一天重算一遍。現在很快,一年後、三年後、十年後就不一定了。國外也有人在論壇說,才 100 個訪客,主機 CPU 就衝到 970%,原因是少了索引。
自己測
問工程師或 AI,最常用的三個頁面,資料多 100 倍的時候要跑多久。答不出來,就是沒想過。

這題還沒答

16.每個要花錢的外部服務,都設了上限

為什麼
我做停車 App 的時候,AI 光是開發測試,就把政府資料一個月的查詢額度用光,只好再付一次錢。國外也有人說,他的程式自己一直叫自己,一個月收到上萬美金的雲端帳單。
自己測
列出所有要付錢的服務(AI、簡訊、地圖、雲端主機),到各家後台看有沒有設每月上限或用量警示。

這題還沒答

17.舊資料多久清,有寫清楚

為什麼
我看過一個系統的資料庫長到 109 GB,裡面的索引比資料本身還大,有一張通知表三年都沒清過。
自己測
問工程師,資料庫現在多大、每個月長多少、哪些資料會自動清。

這題還沒答

18.App 開著用,手機不會發燙、狂掉電

為什麼
我的重訓 App 一開始鏡頭一直在偵測,用沒多久手機就很燙、很耗電。
自己測
開著 App 正常用 15 分鐘,看電量掉多少、手機燙不燙。

這題還沒答

五、維護

19.每次改完,有一份固定要點過的清單

為什麼
PTT 上有人形容 AI 寫程式是「改一處壞三處」。我的重訓 App 修好示範動畫,計次就壞了,怎麼做都是 0 下。
自己測
寫下你產品最重要的 5 個操作(像是註冊、下單、付款),每次改完都從頭點一遍。

這題還沒答

20.AI 只改了你叫它改的地方

為什麼
AI 很愛雞婆。我遇過叫它調版面,它順手把客戶的品牌主色改掉;也遇過叫它加一個新分頁,差點把原本的功能拿掉。
自己測
每次改完,請 AI 列出它動了哪些檔案、各改了什麼,看有沒有跟這次無關的。

這題還沒答

21.每一頁的樣式、名稱、圖示都一致

為什麼
我看過一個從別的專案複製過來的後台,上線前登入頁還寫著別家系統的名字,網頁小圖示也是別家的。
自己測
上線前把每一頁快速看一輪,標題、Logo、網頁小圖示、按鈕跟彈窗長得一不一樣。

這題還沒答

22.程式裡的註解在講「為什麼」,不是流水帳

為什麼
AI 很愛寫長篇註解,連日期、改了幾次、誰說了什麼都寫進去,半年後沒人分得出哪段還有效。我自己的規定是註解只准寫兩種:程式看不出來的「為什麼」,跟會踩到的坑。
自己測
隨便打開幾個檔案,看註解是不是比程式還長、有沒有日期跟人名。

這題還沒答

六、維運

23.AI 碰不到正式資料庫,也不能自己上線

為什麼
今年國外有人用 AI 寫程式工具,9 秒就把正式資料庫連同備份一起刪掉。我自己的 AI 只能把改好的東西送審,上線那一步只有我能按。
自己測
問工程師,AI 工具平常連的是正式資料庫還是測試的?它的帳號能不能刪資料?能不能自己把程式推上正式站?

這題還沒答

24.備份不跟主機放一起,而且真的還原過

為什麼
國外有人讓 AI 幫忙搬網站,AI 把整套環境砍掉,主機連同備份一起不見,兩年半的資料最後靠雲端廠商才救回來。備份檔放在那邊不算數,要打開來數過、對得起來才算。
自己測
問三件事:最近一次備份是哪天?放在哪?最近一次實際還原是什麼時候?

這題還沒答

25.上線之後,確認跑的真的是新版本

為什麼
我遇過修好上線卻沒生效,原因是排程那台主機忘了更新;也遇過畫面顯示新版,實際上還在打舊版。
自己測
每次上線後,看一下系統顯示的版本號或更新時間,再實際操作一次剛修好的功能。

這題還沒答

26.出錯的時候,畫面不會吐出內部細節,而且有留紀錄

為什麼
我審過一個系統,資料庫一出錯,就把完整的查詢語法、email、密碼雜湊全顯示在畫面上。
自己測
網址後面亂打一串字,或表單填一段超長的文字送出,看到的是一般錯誤頁,還是一長串英文?再問工程師:上週系統出錯幾次?答不出來,通常就是沒在記。

這題還沒答