jim800121chen c54f16fca0 Initial commit: visionA monorepo with local-tool subproject
local-tool/: visionA-local desktop app
- M1: Wails shell + Go server + Next.js UI + Mock mode (macOS dmg ready)
- M2: i18n (zh-TW/en) + Settings 4-tab refactor
- M3: Embedded Python 3.12 runtime (python-build-standalone) + KneronPLUS wheels
- M4: Windows Inno Setup script (build on Windows runner)
- M5: Linux AppImage script + udev rule (build on Linux runner)
- M6: ffmpeg (GPL, pending legal review) + yt-dlp bundled
- Lifecycle: watchServer health check, fatal native dialog,
            Wails IPC raise endpoint, stale process cleanup

.autoflow/: full PRD / Design Spec / Architecture / Testing docs
            (4 rounds tri-party discussion + cross review)
.github/workflows/: macOS / Windows / Linux build CI

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-11 22:10:38 +08:00

6.8 KiB
Raw Blame History

visionA-local — 產品需求文件PRD索引

版本v1.2(第四輪使用者決策套用) 作者PM Agent 日期2026-04-11 狀態:三方交叉審閱完成 + 第四輪決策落地 任務等級L 級(完整流程)

品牌命名 vs 資料目錄命名:產品品牌名維持 visionA-local(大小寫混寫,對應現有 Logo 與對外文案);資料目錄、Bundle ID、CLI 執行檔、安裝檔檔名統一用全小寫 visiona-local(對齊 Bundle ID com.innovedus.visiona-local 與 Linux 檔案系統慣例)。第四輪 R4-5 決策。


文件導覽

本 PRD 採模組化結構。各章節為一句話摘要 + 子檔案連結,子檔案內含完整細節。

章節 摘要 子檔案
1. 產品策略與定位 visionA-local 是 edge-ai-platform 的單機桌面版,專為「帶著筆電做 Kneron demo 的人」而生,價值主張是「裝起來就能跑、離線可用、零依賴」 strategy.md
2. 目標使用者與使用情境 三種 Persona內部 FAE主要、外部開發者 / 評估客戶、Solution Architect / PM6 個核心 User Story user-research.md
3. 產品願景與非目標 visionA-local 不做cluster、relay、tunnel、tray、auto-update、程式碼簽章、telemetry、韌體燒錄、多架構、商店上架 vision-and-non-goals.md
4. 功能清單與 API 對照 對照原 edge-ai-platform列出保留 / 刪除 / 新增的前後端功能與 API endpoint features/feature-inventory.md
5. 使用者流程 首次安裝 → First-Run → 日常使用 → 離開 features/user-flows.md
6. 非功能需求與驗收標準 量化驗收條件:安裝時間、首次推論時間、安裝檔大小、資源占用、離線可用 nonfunctional.md
7. 發佈與交付策略 內部 Gitea Releases / GitHub Releases不上商店、不做 auto-update、不做憑證簽章 release-strategy.md
8. 風險與相依性 交叉引用 Architect Round 1 的 R1-R5 技術風險 + PM 補充的產品風險 risks.md

快速摘要TL;DR

做什麼:把 edge-ai-platform(原本要部署到 EC2 / Docker 的 Kneron AI 邊緣運算平台)改造成單機桌面應用,打包成 macOS / Windows / Ubuntu 三平台的 GUI 安裝檔。

為誰做:主要是 Innovedus 內部 FAE帶筆電到客戶現場做 demo次要是外部開發者剛拿到 Kneron 板想快速上手)和 Solution Architect / PM想用 Mock 模式說故事)。

核心轉換:從「共享基礎設施」→「個人工具」。任何為「多人 / 遠端 / 規模化」而生的功能都砍掉,任何為「安裝便利 / 離線可用 / 單人順手」的體驗都強化。

最重要的 3 個產品決策

  1. 一鍵離線安裝Python runtime + KneronPLUS SDK + ffmpeg + 預置模型 .nef 全部內嵌進安裝檔(單平台約 200MB使用者不需要預先裝任何東西、也不需要連網。使用者還可以 fallback 使用系統 Python。
  2. 砍掉 50% 的原始碼cluster、relay、tunnel、tray、relay-token、gitea-url、韌體燒錄、auto-update、docker / deploy scripts 全部刪除。新專案只保留核心推論路徑。
  3. 內部工具定位:不投資憑證簽章(使用者接受 Gatekeeper / SmartScreen 警告)、不上商店、不做 telemetry、不做 license key。發佈到內部 Gitea Releases。

不做什麼(明確排除):多裝置 cluster、遠端連線、系統列 tray、自動更新、程式碼簽章、崩潰遙測、韌體 flash、ARM 架構、Mac App Store / Microsoft Store / Snap Store 上架、license 啟用機制。


發佈範圍MVP

visionA-local 不分 Phase 1 / Phase 2 / Phase 3——所有核心功能一次到位因為這是內部工具沒有「分階段驗證市場」的必要。MVP 即 GA。

MVP 必達功能

  • macOSx86_64/ Windowsx86_64/ Ubuntux86_64三平台安裝檔
  • 首次啟動 First-Run 流程(歡迎 → 模式選擇 → 硬體偵測)
  • 裝置管理USB Kneron 偵測 / 連線)
  • 模型管理(預置 .nef + 自上傳)
  • 推論引擎(分類 / 偵測 / 臉辨)
  • 攝影機串流MJPEG + 推論 overlay
  • 媒體推論(圖片 / 影片 / URL 上傳)
  • Mock 模式(零硬體入口)
  • 中英雙語 + 跟隨系統的深色模式
  • M1 即一次清乾淨前端 cluster / relay UI不留半調子 legacy

MVP 排除cluster、relay、tunnel、系統列 tray、auto-update、程式碼簽章、telemetry、韌體燒錄、ARM 架構。


交叉審閱清單

本 PRD 完成後需:

  • Architect 審閱所有需求技術上可行Effort 估算合理R1-R5 風險有被充分反映2026-04-11 完成,見 /Users/jimchen/visionA/local-tool/.autoflow/04-architecture/architect-cross-review.md
  • Design 審閱體驗面沒有遺漏First-Run 流程已被納入2026-04-11 完成,見 /Users/jimchen/visionA/local-tool/.autoflow/03-design/design-cross-review.md
  • PM 自審v1.2第四輪決策已點對點落地2026-04-11
  • 使用者最終確認:整份 PRD v1.2 的發佈範圍、非目標、驗收標準皆無誤?

變更紀錄

版本 日期 作者 變更
v1.0 2026-04-11 PM Agent 第一階段產出;以 15 個使用者決策 + 三方第一輪分析為基礎撰寫
v1.1 2026-04-11 PM Agent 套用第三輪使用者決策:砍 trayQ-A、Kneron 模型授權改風險標記Q-B、M1 前端一次清乾淨Q-C、macOS 資料目錄改 ~/Library/Application Support/visionA-local/Q-E1、Workspace 升 sidebar 一級Q-E2、Settings 外觀分頁取消並把語言併入一般Q-E3
v1.2 2026-04-11 PM Agent 套用第四輪使用者決策三方交叉審閱後R4-1 Kneron 授權暫不主動問、R4-2 MJPEG 延遲改首次≤250ms / 穩定後≤150ms、R4-3 WCAG 2.2 AA 正式列為非目標盡力而為、R4-4 安裝時間上限放寬至 5 分鐘、Mock idle RAM 放寬至 ≤600MB、R4-5 資料目錄/Bundle ID 全小寫 visiona-local、R4-6 ⌘R 改 ⌘Shift+R、⌘Shift+W 取消、R4-7 首次推論拆首次≤30s/回訪≤15s 兩級、R4-8 OS 通知策略分層(裝置 toast / 崩潰 shell out 原生通知);另補 sidebar 描述對齊 Design4 主導航 + Settings 底部獨立區)、新增 4.8 第三方授權宣告章節ffmpeg LGPL、yt-dlp、Python 等)、新增 R11 發佈通路 / R12 CI runner 風險追蹤項、新增 5.5 single-instance 第二次雙擊 UX、5.6 OS 通知策略