# 評估技術棧 (Evaluate Tech Stack) 技能指南 ## 概述 `evaluate_tech_stack` 是可交付技能,用來評估與建議技術棧,包含語言、框架、資料庫、佇列、快取與基礎設施。記錄每個選擇的優缺點與理由。供 `design-architecture` 在產生 Technology Stack 子章節時參考。 ## 核心原則 技術選擇必須基於 PRD 需求、現有系統、團隊專業知識與營運限制。每個技術選擇都必須有優缺點與理由。 ## 評估層次 - **Language**:程式語言(以生態系、效能、團隊專業、函式庫支援評估) - **Framework**:應用框架(以成熟度、社群、效能、開發者體驗評估) - **Database**:資料庫(以資料模型契合度、查詢模式、一致性需求評估) - **Queue / Message Broker**:訊息佇列或事件串流平台 - **Cache**:快取層 - **Infrastructure**:部署基礎設施 ## 防範佔位符規則 範例僅供說明用途。不要重複使用範例中的佔位符技術名稱、理由或替代方案。 ## 知識合約職責 - 與 `storage-knowledge` 和 `architecture-patterns` 知識合約搭配使用 - 前者提供儲存技術比較,後者提供模式選擇指引 ## 不應做的事 - 不替 PRD 沒有要求的場景選擇技術 - 不基於時尚或流行選擇技術 - 不產生獨立評估文件(所有內容必須嵌入 `docs/architecture/{feature}.md`)