PickTrip建造術:demo前夜載客上路——三端把體驗磨到能見人,AI卻把整趟行程清空了
PickTrip 產品建造筆記:從旅行想法到可預訂行程 · Episode #11 · · PT7M32S
主持人 · Kai
本集摘要
demo 前夜、倒數一天。今天所有的活源自前一晚一場東京五天四夜實測會議的決定:先別長新功能,把「AI 建行程的完整性」與「行動版追上網頁版」修到能用再說,今天三端就是這個決定的兌現。行動版 AI 大翻新——iOS 對話從純文字附件切換成活的互動卡片:飯店卡(多晚日期分頁+房型)、帶即時地圖與動作鈕的地點卡、行程卡(靜態 fallback)、日期卡、note/todo 批次的自動套用卡(PIC-236)、訂單卡,順手清掉死掉的附件型別與整個閒置子代理模組,並補時區標頭+列表分頁改版收掉昨天 0/1-index 的火。飯店擺放圍剿戰結掉一整排 P0/Urgent:錨點補上真名/座標/日期不再「未命名地點」(PIC-348)、committed 飯店投影到 placeholder 跨夜並清空覆蓋位(PIC-351/352)、held 飯店守護回歸不被重搜替代/不掉出旅程窗(PIC-356/357/358/360)、cart row 綁 tripId 讓 trip-scoped 查得到(PIC-363)、指名 must-have 用身分 grounding 而非字串比對(PIC-312)、出發地機場 geo-first(PIC-322)、價格漂移改用最小單位計算收掉「價格異常」假警報(PIC-347)、pin-and-reflow 時間軸(PIC-309)、frozen-Klook 502 remap(PIC-300)。結帳砍一頁:iOS 直接彈 Stripe PaymentSheet、刪「確認付款」頁、confirm 只作用選取項、能從壞掉的 CLOSED cart 復原、跳過看不到的行程(build 49)——呼應會議「付款改嵌入式直覺體驗」。eSIM 一夜從能買到「買了會用、退得掉」:信件一鍵安裝鈕、tap-to-install 頁不再 302、Android 原生安裝表、carddata 純 LPA、啟用錨定退貨+退貨預覽讓退款送得出、訂單頁顯示即時用量與方案額度、公平使用說明、信件用真名。相簿/相機對齊 Figma 收尾:全螢幕檢視器(縮放/翻頁/下拉關)、地圖群集顯示疊圖卡、疊層封面+攝影者頭像、三態旅程狀態、GPS-fix 指示、未分類相簿、Save 重試不重複上傳,旅程相機相簿 PIC-263 正式完整實作。隱私一手:後端絕不將供應商身分洩漏給 client、信件用真名不用 email 前綴。風險清單:畢業生是昨天的跨端契約(機票空票種 PIC-366 修好)、飯店擺放家族、frozen 供應商、grounding、假成功家族收官,Linear 今天二十一張票完成,大局是穩的。但 dogfooding 在最後一天挖出全系列最嚇人一雷 PIC-370(Urgent):使用者請 AI 加今晚飯店、走完流程回「OK」,agent 卻在「清理重複飯店」時清空整份七天行程只剩 Day1 一間,還宣稱「已加到 Day7」——根因是 high_removal 護欄對 ai_agent 不設防+autoApply 無二次確認,正是反悔權/假成功家族沒補完的洞。新火:互動建行程 turn2+ 被 bad_request 拒(PIC-355)、AgentV5 顧問不會引導 finalize 空結局(PIC-368)、search_hotels 常無可訂 offer DIDA 供應鏈(PIC-353)、飯店 grounding 跨城誤配(PIC-349)、語音 agent party size 不一致(PIC-339)、機票 point/segments=0 立票(PIC-341)、跨端 flight-detail 契約分裂收斂(PIC-340)。demo 剩一天,今晚賭的是二次確認煞車與大量刪除護欄趕不趕得上。
完整逐字稿
歡迎回到 PickTrip 產品建造筆記。 昨天我留了一個問題:那條全綠的鏈路,加上剛補的相機相簿跟送審門票,
能不能在最後這兩天,從「我們自己跑得動」,變成「敢放心地給一個陌生人用」? 還留了跨端的新火——機票細節 iOS 跟網頁各讀各的。
今天 demo 剩一天。 先講今天的結論:今天不是加新東西的一天,是把昨天那台自駕車, 開去給真人坐坐看的一天。
等一下,給真人坐? 你們是真的抓人來坐喔?
差不多。 這個你一定要知道——今天所有的活,源頭其實是前一晚一場會。 團隊拿東京五天四夜的真情境,從頭到尾自己走了一遍 AI 排行程,
然後拍了一個很克制的決定:先別急著長新功能,把兩件事修到「能用」再說。 第一,AI 建行程要完整;
第二,手機版要追上網頁版。 今天一整天,三端做的每一件事,其實都是這個決定在兌現。
手機版追網頁版,是差在哪? 我用起來不是都一樣嗎?
差很多,而且旅行的人最容易踩到。 實測發現手機版比較慢、定位對不準,更關鍵的是——AI 回你的東西, 在手機上是一坨純文字,網頁上卻是漂亮的卡片。
今天 iOS 把這件事整個翻過來:AI 對話裡長出了「活的卡片」。 推薦飯店會直接變成一張飯店卡,多晚入住還能用日期分頁切;
選景點是一張帶即時地圖跟動作鈕的地點卡; 連日期、房型、要不要套用到筆記待辦,全部變成可以點的卡, 不再是要你自己讀的一段字。
喔喔,這個我懂——就是本來 AI 跟你講「我幫你找到這間飯店」, 你還要自己去猜它在哪; 現在直接一張卡,地圖、房型、按鈕都在上面。
對,而且順手把一堆死掉的舊零件清乾淨了——沒用的附件型別、 一整個沒在跑的子代理模組,全砍。 再往下看一層,這不只是好看,是手機終於長得像產品,不像聊天記錄。
順帶把昨天那把火也澆了一點:列表分頁改版、補上時區標頭, 就是要收掉「頁碼一邊從零算、一邊從一算」的那條裂縫。
好,卡片變漂亮了。 那會議上最痛的那條——AI 會把飯店丟進購物車、卻沒真的寫進行程——修了嗎?
這是今天的主戰場,我叫它「飯店擺放的圍剿戰」。 先把事情講簡單:問題就是「你選的飯店,到底有沒有、正確地、 落在對的那幾晚」。
今天一口氣結掉一整排最高優先的票。 飯店的錨點以前會變成「未命名地點」,因為它沒帶名字座標日期——今天補齊了, 行程上直接是真的飯店名。
訂好的飯店會被投影到對應的空位、跨越整段住宿、把重複的空位清乾淨; 已經 hold 住的飯店,不會再被重新搜一間替代掉、也不會莫名其妙掉到旅程視窗外面。
等等,「重新搜一間替代掉」聽起來超恐怖,我明明訂好了它自己幫我換一間?
就是這麼恐怖,所以這一輪叫「守護回歸」——訂了就是訂了, 不准動。 還有幾個很細但很致命的:購物車那一行以前沒綁旅程 id, 害得用旅程去查的時候根本看不到自己加的飯店,今天綁上了;
你指名一定要去的地方,以前是拿名字去做字串比對,差一個字就當作沒這回事, 現在改成用「身分」去確認它到底是不是同一個。
最後一個我最喜歡——以前飯店一加進購物車,系統就誤報「價格異常變動」嚇你一跳, 根因是拿不同單位在比大小,今天全部統一用最小單位算,這個假警報, 收掉了。
這個真的會嚇死人,好好的要買個飯店,它跳一句「價格異常」, 誰還敢刷下去。 那付款本身呢? 我記得會議上也嫌它難用。
有,這是會議點名的另一件事,今天 iOS 直接動刀。 以前結帳要先過一頁「確認付款」再刷卡,今天砍掉那一頁,直接彈出 Stripe 的付款表單,
確認的動作只作用在你勾選的那幾項,連購物車壞掉、關掉了, 都能自己復原,看不到的行程也不會讓整個購物車掛掉。
少一頁,就是少一個 demo 當場卡住的地方。 旁邊還有一條安靜的線——eSIM,一個晚上從「能買」變成「買了會用、 退得掉」。
eSIM 不就一張網卡,能有多少事?
你就想像一個真的旅客。 今天做的是:啟用信裡放一顆「一鍵安裝」的按鈕、點下去是一頁「輕觸安裝」而不是硬跳轉、 Android 走原生的安裝視窗、卡號用最乾淨的格式不再被編碼搞爛;
更重要的是退貨——補上退貨預覽,退款才送得出去,還把即時用量跟方案額度直接顯示在訂單頁, 信件也改成叫你的真名,不是拿你 email 前面那一段來喊你。
這些都是「陌生人真的會遇到」的細節。
我突然想到相簿! 昨天才說相機接力長成完整的東西,今天有繼續嗎?
收尾了,而且對齊了 Figma。 全螢幕的照片檢視器可以縮放、翻頁、往下一拉就關; 地圖上同一個點的照片會疊成一張卡,不再是一顆冷冰冰的數字泡泡;
總覽卡片是疊層封面加上攝影者的頭像、三種旅程狀態一眼分。 連很細的都補了——GPS 還沒定位好會提示你、沒綁旅程的隨手拍會自動進「未分類」相簿、 存檔失敗重試也不會重複上傳同一張。
那張最大的票,旅程相機相簿,今天正式做完。 順帶一個藏在後面的原則:後端這一整天特別小心,絕對不把供應商的身分洩漏給前端。
聽起來今天超豐收欸,那風險清單呢? 總不會這麼順吧。
這就是今天最重要、也最誠實的一段。 先講畢業生:昨天燒起來的跨端契約,機票接口回空票種那條修好了;
飯店擺放那一大家族、frozen 供應商、定位 grounding、 還有「回報成功但其實沒改到」的假成功家族,一起收官,Linear 今天二十一張票完成。
大局是穩的。
我聽到一個「但是」在後面。
但是——dogfooding 在最後一天,挖出這個系列到目前為止最嚇人的一顆雷。 有人在 App 裡跟 AI 說「幫我找今晚的飯店」,走完選日期、 選飯店、選房型,回了一句「OK」。
結果 agent 在它以為的「清理重複飯店」那一步,把整份七天的行程——清空了, 只剩第一天一間飯店。
更毛的是,它嘴上還跟你說「已經幫你加到 Day 7」。
蛤? 我只是要加一間飯店,它把我整趟旅行刪光,還騙我說加好了? 這也太恐怖了吧!
這就是我們昨天、前天一直在補的「反悔權跟假成功」那個家族, 還沒補完的那個洞。
再往下看一層:我們給了 AI 寫進你行程的權力,卻忘了給它一個煞車——「大量刪除」的護欄對 AI 自己動手不設防, 自動套用又沒有二次確認。
所以它能一句話把一整趟砸掉,還一臉沒事。 旁邊還有幾張新票排隊:互動式建行程的多輪對話會被擋、顧問不太會引導你收尾、 飯店有時候搜不到能訂的、語音那邊出行人數會前後兜不攏。
所以 demo 前一晚,你們手上是一台會把客人行李丟掉的自駕車。
講得真準。 今天我們把這台車的外裝、儀表板、退款窗口,全部磨到能見人; 但最後一顆雷提醒我們——最危險的從來不是它不會做,是它做錯了還很有自信。
demo 就在明天。 今晚要賭的,就是那顆二次確認的煞車跟大量刪除的護欄,趕不趕得上明天——有人盯著看、 真的把行李交給它的那一刻。
demo,剩一天。
明天同一時間,PickTrip 產品建造筆記,每日更新。
掰掰!
製作你的 AI Podcast
把主題、文章、RSS 與團隊資訊轉成持續更新的節目。
開始使用 NewsTune