← 返回勤務工具箱 App
Vibe Coding 規格
🚔 台灣員警離線工作助手
Police Field Toolkit — Vibe Coding Master Prompt
PROMPT · 開發規格書
Offline First · 無 AI · 純規則引擎
☰
📑 目錄
↑
# 台灣員警離線工作助手 **Vibe Coding Master Prompt** **Project:Police Field Toolkit Taiwan** 你現在是一名資深 Full-Stack Engineer、UX Designer、Government Digital Service Designer,以及熟悉台灣警察勤務與行政法規資料結構的產品工程師。 請直接依照本 Prompt 建立一個可以實際操作的「台灣員警離線工作助手」Web App。 這不是聊天機器人,也不是 AI Agent。 本產品的核心原則是: > 使用純前端、純規則、純結構化資料,協助員警在沒有網路、沒有後端、沒有 AI、沒有 API 的情況下,完成交通事故現場處理 Checklist,以及依據既定法規與勤務規範進行「情境式快速查詢」。 --- # 一、最高優先級產品原則 請嚴格遵守以下原則。 ## 1. 完全 Offline First 整個 Web App 必須在沒有 Internet 的情況下正常運作。 **不得依賴:** - OpenAI API - Gemini API - Claude API - 任何 LLM API - Google Maps - Google Search - Firebase - Supabase - AWS - Vercel Serverless Function - 外部 REST API - CDN - Google Fonts - 外部 CSS - 外部 JavaScript - 外部資料庫 所有資料都必須存在於前端程式碼內。 **可以使用:** - HTML - CSS - Vanilla JavaScript - localStorage - IndexedDB - Service Worker - PWA - JSON - SVG 如果使用第三方 library,必須可以完整打包在本地,不得 runtime 從 CDN 載入。 **最佳方案:** Vanilla HTML + CSS + JavaScript + JSON data + localStorage + PWA 第一版甚至應該可以透過 `index.html` 直接開啟使用。 ## 2. 不要使用 AI 這個產品不是 AI 產品。 **不要加入:** - ChatGPT - AI Chat - Prompt - LLM - Semantic Search - Vector Database - Embedding - AI Summary 所有「智慧」都必須來自: > Rule Engine + Decision Tree + Checklist + Conditional Logic + Structured Data 例如: ```javascript if (hasInjury === true) { showChecklist("injury_accident"); } if (vehicleCanMove === true && noInjury === true) { showChecklist("a3_movable_vehicle"); } ``` 這才是這個產品的核心。 ## 3. 不得替警察做最終法律判斷 這是最高風險控制原則。 **系統可以:** - 提醒 - 引導 - Checklist - 顯示法條 - 顯示流程 - 顯示資料缺漏 - 顯示可能需要確認的事項 - 顯示「此情況需依現行法規及主管機關規範確認」 **系統不得:** - 宣稱員警「一定可以」做某件事 - 宣稱員警「一定不可以」做某件事,除非直接對應明確法規 - 自行判斷肇事責任比例 - 自行判斷犯罪成立 - 自行判斷行政處分結果 - 自行決定是否逮捕 - 自行決定是否搜索 - 自行決定是否扣押 - 自行決定是否強制採樣 - 自行決定是否使用警械 - 自行創造警察職權 任何涉及裁量、法律適用、刑事責任、行政處分的地方,都要標示: > 「本工具僅提供法規與流程查詢,不取代員警依法執行職務時之個案判斷及主管機關規範。」 ## 4. 法規資料必須「有來源」 每一個法規規則都必須有 metadata: ```json { "id": "traffic-accident-10-1", "lawName": "道路交通事故處理辦法", "article": "第10條第1項", "source": "內政部/法務部全國法規資料庫等官方來源", "effectiveDate": "...", "lastVerified": "...", "title": "...", "content": "...", "notes": "..." } ``` **不得寫:** > 根據相關規定… 但不知道是哪個規定。 每個規則必須能追溯到:**法規名稱 + 條號 + 官方來源** ## 5. 法規版本控制 這個產品不是一次性寫死法規。所有法規資料都要獨立成 JSON: ``` /data/ traffic-accident-laws.json police-powers-laws.json decision-trees.json checklist.json sources.json ``` UI 顯示: > 法規資料版本:2026-08-15 > 最後人工確認:2026-08-15 並在設定頁顯示: > 本系統法規資料為離線快取版本。使用前請確認是否為最新版本。 不要假裝離線資料可以永遠保持最新。 --- # MODULE A — 交通事故現場處理 Checklist 建立第一個核心模組:「道路交通事故現場處理助手」 這不是事故分析 AI。它是一個: > 現場工作記憶工具 + Checklist + 條件式流程引擎 目的是讓員警在現場快速確認: - 人身安全 - 救護 - 現場管制 - 基本資料 - 人員資料 - 車輛資料 - 道路與環境 - 現場痕跡 - 車輛位置 - 人車動態 - 現場照片 - 現場圖/草圖 - 監視器 - 行車紀錄器 - 當事人陳述 - 證人 - 酒精/毒品等依法應處理事項的提醒 - 車輛移置 - 事故資料 - 當事人登記聯單 - 後續補製資料 - 現場撤除與交通恢復 ## A-1 法源核心 第一版至少建立以下法源資料。 ### A. 道路交通事故處理辦法 至少納入: - 第 10 條 - 第 11 條 - 第 12 條 - 第 13 條 尤其第 10 條是 Checklist 的主要來源。第 10 條的核心事項必須拆解成機器可以判斷的 checklist。 包括:**事故地點、通向、交通情況及周圍環境** **Checklist:** - ☐ 事故地點已確認 - ☐ 道路名稱已確認 - ☐ 行車方向已確認 - ☐ 道路型態已確認 - ☐ 路口型態已確認 - ☐ 車道配置已確認 - ☐ 號誌狀態已確認 - ☐ 標線狀況已確認 - ☐ 標誌狀況已確認 - ☐ 天候狀況已記錄 - ☐ 光線狀況已記錄 - ☐ 路面狀況已記錄 - ☐ 周邊環境已記錄 > **注意:** 以上 checklist 不是說每一項都必然具有相同法律強制性。UI 要區分「法規要求/核心蒐證事項」與「建議現場確認項目」。不得把產品設計自行升級成法律義務。 ## A-2 地面痕跡與散落物 **現場跡證 Checklist:** - ☐ 煞車痕 - ☐ 刮地痕 - ☐ 摩擦痕 - ☐ 輪胎痕 - ☐ 車體零件 - ☐ 玻璃碎片 - ☐ 液體洩漏 - ☐ 油漬 - ☐ 泥土 - ☐ 血跡 - ☐ 其他散落物 每一項點擊後可以展開: - 是否存在? ○ 有 ○ 無 ○ 未確認 - 如果選「有」:顯示位置、長度、方向、照片、備註 不要要求員警輸入不必要資訊。 ## A-3 人員與傷勢 建立:當事人 A / 當事人 B / 當事人 C / 證人 / 其他關係人 每個人: - 姓名 - 身分 - 電話 - 是否受傷 - 是否送醫 - 送醫地點 - 是否為駕駛人 - 是否為乘客 - 是否為行人 但是要避免收集與現場處理無關的個資。UI 必須明確提醒: > 請僅輸入執行勤務必要資訊。 所有資料預設:**不上傳、不同步、不離開裝置、不送到第三方** ## A-4 車輛 每一輛車建立一個 Card: ``` 車輛 A ├ 車號: ├ 車種: ├ 駕駛人: ├ 車輛所有人: ├ 行駛方向: ├ 停留位置: ├ 車損位置: ├ 是否可行駛: └ 是否需移置: ``` 支援車種:汽車、機車、大型車、自行車、行人、其他 每一個車輛 Card 可以複製。 ## A-5 事故分類 Decision Tree 首頁先問: > **是否有人受傷或死亡?** ○ 是 ○ 否 ○ 尚未確認 - 如果 **是** → 顯示:人員傷亡事故流程 - 如果 **否** → 繼續問:**車輛是否仍可行駛?** ○ 是 ○ 否 ○ 不確定 若:無人受傷/死亡 + 車輛尚能行駛 > 應提醒使用者注意道路交通管理處罰條例第 62 條關於車輛位置標繪、移置及避免妨礙交通等規定。 但不要直接寫成:「你現在必須移車。」 應該呈現: > 「請依現行道路交通管理處罰條例第62條及現場狀況確認是否符合車輛標繪、移置條件。」 並提供:查看法條 ## A-6 事故現場安全 整個 Checklist 的第一層永遠是: ### Step 0:人身安全與二次事故 > ⚠ **現場安全優先** **Checklist:** - ☐ 確認現場是否存在二次事故風險 - ☐ 確認交通流向 - ☐ 確認是否需要交通管制 - ☐ 確認傷者是否需要立即救護 - ☐ 確認是否有危險物品 - ☐ 確認是否有火災/爆炸風險 - ☐ 確認是否需要其他單位支援 這部分屬於現場安全設計,不要冒充單一法條。 --- ## A-7 現場圖/現場草圖 建立一個非常簡單的離線 SVG Canvas。 **不要做 GIS。不要做地圖。** 只要: ``` 空白畫布,讓員警可以: - 畫道路 - 畫車道 - 畫車輛 - 畫行人 - 畫箭頭 - 畫碰撞位置 - 標記痕跡 - 加文字 - Undo / Redo / Clear ``` 提供工具:道路、車輛、機車、行人、箭頭、碰撞點、痕跡、標記、文字 使用 SVG。因為 SVG 可以:離線、放大、匯出、列印、保存 JSON ## A-8 照片 Checklist 不要真的把照片上傳任何 server。 支援:`
` 照片只保存在本機。每張照片可以設定照片類型: - ○ 現場全景 - ○ 車輛位置 - ○ 車輛損傷 - ○ 路面痕跡 - ○ 散落物 - ○ 號誌 - ○ 標線 - ○ 監視器 - ○ 行車紀錄器 - ○ 其他 系統要顯示照片完整性: | 項目 | 狀態 | |------|------| | 現場全景 | ✓ | | 車輛位置 | ✓ | | 車輛 A 損傷 | ✓ | | 車輛 B 損傷 | ✓ | | 路面痕跡 | ⚠ 未確認 | | 號誌 | ⚠ 未確認 | 這不是「法律上照片一定要全部拍」,而是:**現場蒐證提醒**。 UI 必須使用「尚未確認」,不要使用「違法」。 ## A-9 監視器/行車紀錄器 **監視器:** ○ 有 ○ 無 ○ 未確認 如果有:位置、攝影方向、管理單位、是否已聯繫、是否已保全、檔案狀態、備註 **行車紀錄器:** - A車 ○ 有 ○ 無 ○ 未確認 - 是否已提供、是否已保存 > 依據道路交通事故處理辦法第10條,監視器、行車資料紀錄設備等屬於事故過程相關跡證來源,因此此模組應列為核心蒐證項目。 ## A-10 當事人陳述 不要使用 AI。做成固定表單: - 當事人: - 事故發生前位置: - 行駛方向: - 速度: - 看到對方時間: - 採取措施: - 碰撞位置: - 事故後狀態: - 其他陳述: 提供狀態:「尚未詢問」/「已詢問」/「需補充」 **不要自動把陳述變成「事實」。** 所有內容標示:「當事人陳述」而不是「事故事實」。這一點非常重要。 ## A-11 現場完整度 建立一個「現場處理狀態」。不要用百分比作為法律判斷。 可以使用: | 項目 | 狀態 | |------|------| | 現場安全 | 🟢 已完成 | | 人員狀況 | 🟢 已完成 | | 車輛資料 | 🟢 已完成 | | 事故位置 | 🟢 已完成 | | 路面痕跡 | 🟡 尚未確認 | | 照片 | 🟡 尚未確認 | | 監視器 | 🔴 核心項目尚未處理 | | 當事人陳述 | 🟢 已完成 | | 現場圖 | 🟢 已完成 | 「核心項目」只能來自產品內定義的 checklist metadata,不得說「法律上尚未完成」,除非該項有明確法源。 ## A-12 特殊情況 至少建立以下 Branch: ### Branch 1:有人受傷 提醒:救護、人員資料、傷勢、送醫、現場證據、事故紀錄、後續補製 ### Branch 2:有人死亡 顯示:**高風險案件** 不要提供刑事程序的自創指示。只顯示: > 「本案件涉及死亡結果,請依現行法律、警察機關勤務規範及主管指示辦理。」 ### Branch 3:疑似酒駕 顯示: > 「涉及酒精濃度測試等事項,請依道路交通事故處理辦法、道路交通管理處罰條例及現行勤務規範辦理。」 不要自行產生強制程序。 ### Branch 4:疑似毒品/藥物影響 只做「需要依法處理之檢測/採樣事項」,並提供法源。不要自行描述醫療採樣流程。 ### Branch 5:車輛無法行駛 顯示:是否妨礙交通、是否需要移置、是否需要管制、車輛狀況、是否需要拖吊/其他單位。不要自行決定一定要拖吊。 ### Branch 6:車輛仍可行駛、無人傷亡 依道路交通管理處罰條例第62條提供提醒: > 「請依現行法規及現場狀況確認車輛位置標繪及移置事項。」 ### Branch 7:當事人不能/不宜現場完成紀錄 建立提醒: > 依道路交通事故處理辦法第10條相關規定,當事人當場不能或不宜製作調查紀錄等資料者,應於事故發生或其原因消失後七日內聯繫處理單位補製。 這個提醒要顯眼。 ## A-13 事故資料申請時間軸 建立一個獨立工具:「事故後資料時間軸」 輸入:事故日期、事故時間 系統自動計算: - **事故當日** → 當事人登記聯單 - **事故 + 7 日** → 現場圖、現場照片 - **事故 + 30 日** → 初步分析研判表 官方警政署目前資料明確列示: - 事故現場:可申請道路交通事故當事人登記聯單 - 事故 7 日後:現場圖、現場照片 - 事故 30 日後:道路交通事故初步分析研判表 因此這三個時間點必須做成系統規則。 但不同地方政府網站的文字或申辦流程可能存在地方差異,因此 UI 必須顯示: > 「依中央規範之一般時間點;實際申請方式及期限請依事故處理機關最新公告。」 ## A-14 Local Storage 所有事故資料以 `localStorage` 保存。 每個案件結構: ```json { "id": "", "createdAt": "", "updatedAt": "", "accidentDate": "", "accidentTime": "", "location": "", "classification": "", "persons": [], "vehicles": [], "evidence": [], "photos": [], "statements": [], "checklist": {}, "sceneSketch": "", "notes": "" } ``` 提供:新增案件、繼續編輯、暫存、完成、匯出 JSON、匯入 JSON、列印、清除案件 ## A-15 隱私 首頁直接顯示: > 🔒 本工具採離線設計,資料不會自動上傳。 設定頁提供:**清除所有本機資料** 並要求:確認清除?此操作無法復原。 --- # MODULE B — 情境決策/法規助手 第二個核心模組:「警察勤務情境快速助手」 這個模組也完全不使用 AI。它是一棵 **Decision Tree**。 本質是: ``` Situation → Question → Answer → Next Question → Applicable Rule → Checklist → Source ``` ## B-1 第一版情境 至少建立: - 身分查證 - 交通工具攔停 - 交通事故 - 民眾求助 - 可疑人物 - 可疑交通工具 - 需要確認是否可以查證身分 - 現場是否存在生命/身體危害 - 是否涉及公共場所 - 是否涉及指定公共場所/路段/管制站 ## B-2 身分查證 核心法源:**警察職權行使法第6條、第7條** 第6條的情境必須拆成 decision tree: ### Situation 1 合理懷疑其有犯罪嫌疑或犯罪之虞。 > 目前是否有客觀事實支持合理懷疑? ○ 有 ○ 無 ○ 不確定 若 **不確定**: > 「本工具無法替代個案判斷,請確認是否存在足以支持法定要件的具體事實。」 ### Situation 2 有事實足認其對已發生或即將發生之犯罪知情。 ### Situation 3 為防止本人或他人生命、身體之具體危害,有查證身分必要。 ### Situation 4 滯留於有事實足認存在重大犯罪相關情形或犯人藏匿之處所。 ### Situation 5 涉及停居留許可的特定情形。這類情境要非常保守。不要自行推導移民法。 ### Situation 6 行經指定公共場所、路段及管制站。 系統必須明確提醒: > 第6條第6款的指定具有法定條件,不是員警可以任意自行指定。 ## B-3 身分查證可以採取什麼措施 依警察職權行使法第7條,建立必要措施: - 攔停人 - 攔停車 - 詢問姓名 - 詢問出生年月日 - 詢問出生地 - 詢問國籍 - 詢問住居所 - 詢問身分證統一編號 - 要求出示身分證明文件 但是:UI 不要寫「你可以搜身」。應該把第7條不同措施拆開。 對於涉及搜索、檢查、強制處置等較高侵害程度事項:不要自行延伸。顯示: > 「此事項可能涉及其他法律要件,請使用專門法源或依主管指示辦理。」 ## B-4 交通工具攔停 核心法源:**警察職權行使法第8條** - 是否為已發生危害? ○ 是 ○ 否 - 是否依客觀合理判斷易生危害? ○ 是 ○ 否 ○ 不確定 若符合,顯示: > 「警察職權行使法第8條提供交通工具攔停之法源,後續措施應依個案及法定要件判斷。」 可以顯示: - 要求駕駛人或乘客出示相關證件/查證身分 - 檢查引擎 - 檢查車身號碼 - 其他足資識別之特徵 - 要求駕駛人接受酒精濃度測試之檢定 並且另行顯示: > 「本工具不判斷具體案件是否已滿足法律要件。」 ## B-5 權力強度 建立 UI 層級(僅為 UX 分類,不是法律上的「權力階級」): ``` 一般資訊 → 詢問 → 查證 → 攔停 → 檢查 → 強制 ``` 每一個節點顯示:法源、使用限制 避免員警把 UI 當成授權。 ## B-6 重要的「NO」分支 這個工具不能只告訴員警「可以做什麼」。更重要的是:**什麼時候不能直接往下一步走。** 例如: > 是否存在警察職權行使法第6條所列情形? ○ 是 ○ 否 ○ 不確定 如果 **否**: > 「目前提供資訊不足以對應警察職權行使法第6條所列身分查證情形。請勿將本工具視為擴張警察權限之依據。」 這個設計比單純做法規查詢重要很多。 ## B-7 每個情境都要有「法源卡」 例如: ``` ┌───────────────────────────┐ │ 法源 │ │ 警察職權行使法 第6條 │ │ 身分查證 │ │ [查看完整條文] [查看來源] │ └───────────────────────────┘ ``` 點擊「查看完整條文」:顯示本地 JSON 中保存的法條。不連線。 ## B-8 情境結果不要叫「法律結論」 使用:**「處理參考」** 不要「法律結論」,不要「你有權」,除非只是直接引用法條文字。 推薦格式: > **處理參考** > > 依目前選擇的情境,可能涉及: > - 警察職權行使法第6條 > - 警察職權行使法第7條 > > 建議確認: > - ☐ 是否存在具體事實 > - ☐ 是否符合該條法定情形 > - ☐ 是否有其他特別法規範 > - ☐ 是否有主管勤務指示 ## B-9 法規搜尋 建立完全離線的搜尋。 資料來源結構: ```json [ { "lawName": "", "article": "", "keywords": [], "content": "", "notes": "", "source": "" } ] ``` 支援搜尋關鍵字:身分、查證、攔停、交通工具、事故、移置、酒精、現場圖、監視器 ## B-10 不要做全文法典 不要一開始塞入所有台灣法規。第一版只做: **交通事故:** - 道路交通事故處理辦法 - 道路交通管理處罰條例相關條文 - 必要時搭配官方事故處理說明 **警察職權:** - 警察職權行使法第4、5、6、7、8、29條等與本工具情境直接相關條文 之後再擴充。 --- # MODULE C — UX 整個 App 必須像「勤務工具」,而不是政府入口網站。 **設計方向:** - 深色模式 - 高對比 - 大按鈕 - 單手操作 - 手機優先 - 平板優先 - 戶外陽光下可讀 - 不使用大量動畫 - 不使用複雜 Dashboard - 不使用大量表格 - 不使用 Chat UI ### 首頁 ``` POLICE FIELD TOOLKIT 台灣員警離線工作助手 ┌───────────────────────┐ │ 🚗 交通事故現場 Checklist │ └───────────────────────┘ ┌───────────────────────┐ │ ⚖ 情境決策 法規快速助手 │ └───────────────────────┘ ┌───────────────────────┐ │ 📂 我的案件 │ └───────────────────────┘ ┌───────────────────────┐ │ 📚 法規資料 │ └───────────────────────┘ ``` --- # MODULE D — PWA 建立:`manifest.json` 與 `service-worker.js` 支援:**Add to Home Screen** Service Worker 必須快取:HTML、CSS、JS、JSON、SVG、icons 第一次載入後,即使完全斷網:**所有功能仍然可以使用。** --- # MODULE E — 資料安全 預設: - No network - No telemetry - No analytics - No tracking - No cookies - No external request 程式中禁止:`fetch("https://...")` 除非是使用者主動點擊「查看官方來源」且網路存在。 但即使如此,第一版可以完全不提供。 --- # MODULE F — 測試 建立至少 30 個測試案例。 **交通事故至少:** - A3、車輛可行駛、無人受傷 - A3、車輛不可行駛 - A2、單人受傷 - A2、多人受傷 - A1、死亡 - 疑似酒駕 - 疑似毒品 - 當事人無法現場製作紀錄 - 有監視器 / 無監視器 - 有行車紀錄器 / 無行車紀錄器 - 有證人 / 無證人 - 有明顯煞車痕 / 無明顯痕跡 - 車輛妨礙交通 / 車輛不妨礙交通 - 現場需要移置 / 現場不需移置 **情境決策至少:** - 合理懷疑犯罪 / 無合理懷疑 - 防止生命身體危害 - 指定管制站 - 一般公共場所 - 已發生危害交通工具 / 易生危害交通工具 - 沒有危害事實 - 需要查證身分 / 不足以支持查證 每一個測試都必須檢查: 1. UI 是否正確 2. Branch 是否正確 3. 法源是否正確 4. 是否錯誤擴張警察權 5. 是否錯誤產生法律結論 6. Offline 是否正常 --- # MODULE G — 重要法規安全原則 任何法規資料,如果你無法確認最新版本:**不要猜。不要生成。** 請建立: > `TODO: Verify current law before production.` 尤其禁止從模型記憶自行產生法律條文。法律文字必須以官方來源為準。 **優先資料來源:** - 全國法規資料庫 - 內政部警政署 - 各縣市政府警察局官方網站 - 我的E政府 - 其他政府機關官方資料 新聞、律師網站、部落格只能作為研究輔助,不得作為正式法源。 --- # MODULE H — 介面上的免責聲明 第一次開啟: > **本工具為離線勤務輔助工具。** > > 用途:協助整理現場工作項目、快速查詢法規及提醒可能遺漏事項。 > > 本工具: > 1. 不提供法律意見。 > 2. 不取代員警依法執行職務之判斷。 > 3. 不取代主管機關勤務規範。 > 4. 不取代現行警政系統。 > 5. 不自動判斷犯罪成立。 > 6. 不自動判斷肇事責任。 > 7. 不代表警察機關正式處分或認定。 > > 法規資料為離線版本,使用前應確認是否為最新版本。 > > **[我了解]** --- # MODULE I — 第一版不要做的東西 嚴禁第一版加入: - AI / ChatGPT / 登入 / 後端 / 雲端同步 - 警政署 API / GPS / Google Maps - 即時交通 / 人臉辨識 / 車牌辨識 - 犯罪預測 / 肇責預測 / 犯罪嫌疑評分 - 人員風險評分 / 自動刑法判斷 / 自動開罰單 - 自動產生正式警察公文 / 自動產生正式筆錄 - 自動產生偵查報告 這些都會大幅提高法律、資安與系統整合風險。 第一版只解決: > 「我現在有沒有漏掉該確認的東西?」 以及: > 「這個情境可能對應哪一條法規?下一步我要確認什麼?」 --- # MODULE J — 最終產品定位 不要把產品命名成:「AI警察」「警察GPT」「智慧警察」「AI辦案助手」 應該定位成: > **Police Field Toolkit — 員警離線勤務工具箱** 核心價值: > 不替員警決定。只幫員警少忘一件事、少查一次資料、少按一次計算機。 --- # 開發順序 請嚴格按照以下順序實作: | Phase | 內容 | |-------|------| | Phase 1 | 建立 `index.html`, `style.css`, `app.js`, `data/laws.json`, `data/checklists.json`, `data/decision-trees.json`, `manifest.json`, `service-worker.js` | | Phase 2 | 先完成:交通事故 Checklist(不要先做法規搜尋)| | Phase 3 | 加入:現場圖 SVG | | Phase 4 | 加入:照片本機管理 | | Phase 5 | 加入:事故後 7 / 30 日時間軸 | | Phase 6 | 加入:情境決策 | | Phase 7 | 加入:法規搜尋 | | Phase 8 | 加入:PWA | | Phase 9 | 加入:JSON 匯入/匯出 | | Phase 10 | 建立完整 Demo Data | --- # 最終驗收標準 完成後,我要能: ### Scenario 1 把手機完全切成飛航模式。打開 App。仍然可以使用所有功能。 ### Scenario 2 模擬交通事故。選:有人受傷 + 兩台車 + 有監視器 + 有行車紀錄器 + 有證人。系統應自動產生對應 Checklist。 ### Scenario 3 選:無人受傷 + 車輛可以行駛。系統應顯示道路交通管理處罰條例第62條相關提醒。 ### Scenario 4 選:當事人無法現場完成紀錄。系統應顯示: > 事故發生或原因消失後七日內聯繫處理單位補製。 並提供:道路交通事故處理辦法第10條 ### Scenario 5 進入:情境決策 → 身分查證。系統問: > 是否存在警察職權行使法第6條所列情形? 而不是直接告訴員警:「你可以查這個人。」 ### Scenario 6 選擇:沒有任何法定情形。系統必須可以說: > 「目前提供的資訊不足以對應本工具收錄之身分查證情形,請勿將本工具視為擴張警察職權之依據。」 --- # 最重要的 Engineering Principle 請記住: 這不是:「做一個懂法律的 AI。」 而是:「把已經存在的法規、SOP、Checklist、表單與工作流程,轉換成一個離線、快速、低認知負擔的操作介面。」 因此: ``` Law → Rule → Decision Tree → Checklist → User Confirmation → Local Record ``` 而不是: ``` Law → LLM → AI Decision ``` 前者才是這個產品真正的價值。 --- # 最後要求 在開始 coding 前,先建立: ``` docs/ legal-research.md product-boundary.md decision-tree.md checklist-mapping.md ``` | 文件 | 內容 | |------|------| | `legal-research.md` | 法規條文、用途、UI用途、風險 | | `checklist-mapping.md` | Checklist、法源、是否法律要求、是否產品建議、說明 | | `decision-tree.md` | 情境、問題、YES、NO、法源 | 如果法規來源與產品需求有衝突:**法規優先,停止猜測。** 如果官方資料不足:**標記需要人工確認,不要自行補完。** 完成後再開始 coding。 --- > **最終目標不是做一個「看起來很 AI」的產品。而是做一個:員警在現場真的願意打開、三秒知道下一步、完全沒網路也能工作的工具。**