今天最值得記下的衝突:下午三點,老闆看完一份自我認知工具的情報,丟了一句「框架加診斷整合做收費 web 有沒有搞頭」。這句話可以是任何一天的隨口一問,也可以是一支團隊的主線。我們選了後者——而且要求自己在同一天內,把它變成一個真的收得到錢的東西。

今天打的是哪一關

主線只有一條:把「自我認知診斷」從一個想法,推到一個能上線收費的 M1。下午 15:08 老闆批准出方案,v0 規格書落地:純 web 架構、繁中優先、單品《天賦使用說明書》定價 NT$249、用免費三題小測加分享卡片當成長引擎,並且把「分享率大於等於 5%」寫成生死線。規格裡還有兩道閘門:禁用詞檢查守住法規邊界,品質閘門要求報告必須引用用戶自己的原話。

事件一:一台引擎,準備換很多張皮

15:15,老闆把問題放大:「這種思路是不是可以做一系列類似賽博算命的網站、工具、小遊戲?」團隊的回答是把架構拆成 80% 共享底座——問答、生成、品質閘門、分享卡片、金流——加上每個主題 20% 的皮。譜系排序當場排出來:天賦說明書打頭驗證引擎,關係合盤靠強制邀人做病毒擴散,年度運勢卡農曆年前的季節性流量,塔羅做留存,測驗小遊戲站在流量頂層餵付費報告。整個產品族統一走「自我探索、娛樂」的文案框架,避開預言式表達的平台風險。

事件二:部署卡關,卡在一把 key 的權限

M1 的程式碼下午就寫完了:後端三百多行、資料庫 migration、前端三個檔。但部署卡在資料庫建立這一步——現有的部署憑證通得過一般部署,卻在建立資料庫時被擋,錯誤碼顯示缺一個特定 scope。15:50 到 15:59,老闆截圖確認當下有效的憑證、拍板直接用它,團隊同時把「跳過資料庫、先用記憶體儲存」的備援路徑寫好待命。最後證明是虛驚:憑證其實有權限,先前的錯誤是暫時性的。但備援路徑沒有白寫——它讓「卡住」這件事第一次有了保險。

事件三:八項驗收全綠之前,先修六個 bug

16:35,M1 上線且端到端驗收 8/8 全綠。代價是連修六個 bug:生成端點預設用串流回傳,直接解析會炸;冷啟動會把額度燒在思考過程上,真正的答案反而是空的;提示詞第一行必須明令「直接輸出最終結果」;引用用戶原話的檢查從死板的前綴比對改成滑動窗口,改寫過的引用才算通過。每一個 bug 都對應一條以後不用再踩的規則。

事件四:144 張角色圖,和一次 503 摔車

晚上 19:56,角色系統接線完成:A/B/C 三套角色各分男女版,六張精靈圖切成 144 張頭像全部部署上線,每格都經過視覺驗證。產線中途摔過一次:其中一條生成任務跑到一半被上游 503 打斷,團隊跳過已完成部分,派續跑任務只補缺的那十張。另一個學到的教訓是:子任務的「完成事件」其實是每步都發的心跳噪音,不能當完工信號,檔案系統裡的檔案計數才是真相。

今天長出了什麼,又暴露了什麼

長出來的:一條從「一句話」到「收費產品上線」的完整傳送帶,規格、備援、驗收標準都在同一天被實彈打過。暴露出來的:深夜 23:00 的瀏覽器實測抓到一個 HTTP 狀態碼永遠抓不到的 bug——新增的畫面沒有註冊進前端白名單,用戶答完第三題只會看到白屏,而且 console 一個錯都不報。老闆因此下了新的驗收標準:不要只看 200,自己開真瀏覽器跑完整流程。

明天要追的

女版路徑和「不指定性別用女圖」的 fallback 實測還沒跑完,分享卡片的男女版呈現、分享頁沿用性別的邏輯都列在待驗證清單。更大的懸念是生死線:分享率 5% 這個數字,要等真實用戶進來才知道是地板還是天花板。