chore: D22 落地——docs/SDD/wiki/CLAUDE.md 進 repo(Gitea private 預設全 push)

頂層 D22 決策(leo 2026-07-03 拍板):推什麼由開發環境歸屬決定,
Gitea private=除機敏值/build 產物/.github 外全 push。
解 T1.5 卡點:雲端工人 clone 拿得到 credential-store-migration.md,可就地改寫 SDD。
機敏掃描兩輪通過(新增 189 檔約 2.1MB,node_modules/dist/wasm 照舊排除)。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
uncle6me-web
2026-07-03 07:13:15 +08:00
parent c830150da1
commit 5d00e71275
190 changed files with 39486 additions and 14 deletions
+97
View File
@@ -0,0 +1,97 @@
# CLAUDE.md — arcrun
> **上游約束(InkStoneCo 總管)**:本 repo 是 InkStoneCo 大專案的子專案,受頂層知識庫約束。
> 動工前讀 `github.com/uncle6me-web/InkStoneCo` 的 CLAUDE.md + `docs/3-specs/`。
> 關鍵鐵律:禁止跨 repo 同步 Actions / Mira≠Arcrun 分層(arcrun.dev 是框架域名,非產品入口)/ self-hosted 用 namespace 明碼非 api key / 部署繞開 GitHubwrangler 直推)。
> 本 repo 的待整合交棒見 `docs/HANDOFF-matrix-rearrange.md`。
> **與 InkStoneCo 總管的溝通走本 repo 的 GitHub issue**:總管交辦框架 bug / 跨專案需求 →
> 在本 repo 開 issueCC 用 `gh` 讀(`gh issue list/view`)、修完在同一 issue `comment` 回報修法 + 驗證證據。
> issue thread = 雙向溝通 + 永久記錄。**有事才讀,禁自動輪詢**(flag 安全界線)。
> 結案時機由「end-to-end 實證綠燈」決定——尚待人/總管確認的留 open。詳見 `/issue-handle` skill。
> 發 issue 給**別的 repo** 要先問人類,不可擅自。
> 本檔是**索引 + 最高原則**,詳細規範拆到 `.claude/rules/`。
> Hook 強制機制在 `.claude/hooks/`,違反會直接 blockexit 2)。
---
## 絕對鐵律(違反 = 停手)
1. **任何 code 變動前必須先讀對應 SDD**,在回覆開頭宣告已讀清單與對應 task 編號(格式見 `.claude/rules/00-sdd-protocol.md`
2. **零件只能用 TinyGo 或 AssemblyScript 編譯成 WASM**`registry/components/` 下禁止 TypeScript
3. **cypher-executor TS 禁止實作 credential / auth / JWT / template 展開業務邏輯**;這些全在 WASM 零件
4. **Cypher binding = YAML 裡的 URL 清單**,不是 Cloudflare service binding;零件串接走 HTTP URL(含 auth primitive)。self-hosted same-zone 1042 用 `global_fetch_strictly_public` flag 解,不新增 bindingcredential-primitives-wasm Phase 7
5. **每個 WASM 零件 = 獨立 Worker = 公開 URL**;不從 R2 動態讀(R2 只 Phase 5 啟用)
6. **修改現有程式碼,不是新建資料夾重做**
7. **每完成一個 task 立刻更新 tasks.md 的 `[x]`**,不批次
8. **薄殼原則**:能力只實作一次放在 API;CLI/MCP/lib 是薄殼,不得自帶業務邏輯 / 拼裝 API / 用 recipe 補 API 缺口(見 `.claude/rules/07-thin-shell.md`hook 7.x 部分強制)
---
## 工作流程(強制)
開始任一任務,按順序:
1. **讀 wiki**3 分鐘快速進度)→ `.claude/wiki/status.md`
2.`docs/3-specs/arcrun/arcrun.md`(總進度)
3. 讀對應的 SDD `design.md` + `tasks.md`
4. 在回覆開頭貼出:
```
📋 已讀 SDD<清單>
🎯 本次對應 task<編號>
📐 本次 task 的 SDD 規範摘要:<重點>
🚧 執行範圍:修改/建立/刪除 <檔案>
```
5. 動手前把 tasks.md 對應 task 標為 `[🔄]`,完成後標 `[x]`
6. 完成後確認:是否需要同步更新 design.md?
找不到對應 SDD → **停手問 richblack**,不要自行建立。
---
## Wiki(每次 session 的讀取順序)
| 檔案 | 時機 | 用途 |
|------|------|------|
| `.claude/wiki/status.md` | session 開始第一件事 | 當前 Phase、進度、下一步 |
| `.claude/wiki/mistakes.md` | 做新功能前 | 10 大常犯錯誤 + 快速檢查清單 |
| `.claude/wiki/decisions-summary.md` | 遇到設計判斷時 | 6 大架構決策 + trade-off |
| `.claude/wiki/INDEX.md` | 找不到東西時 | wiki 導引 + 快速導航 |
---
## 詳細規範索引
| 檔案 | 內容 |
|-----|------|
| `.claude/rules/00-sdd-protocol.md` | SDD 讀取協議(強制流程) |
| `.claude/rules/01-tech-stack.md` | 技術棧硬限制(語言/儲存/加解密) |
| `.claude/rules/02-forbidden.md` | 禁止清單(hook 強制執行) |
| `.claude/rules/03-component-architecture.md` | 零件架構(R2 用途 / cypher binding / service binding 邊界) |
| `.claude/rules/04-current-progress.md` | 當前進度 + SDD 索引 |
| `.claude/rules/05-deploy-convention.md` | 部署慣例(新 Worker = 新目錄 + wrangler.toml |
| `.claude/rules/06-mindset.md` | mindset(為什麼層) |
| `.claude/rules/07-thin-shell.md` | 薄殼原則鐵律(能力長在 API,介面只暴露) |
---
## SDD 位置速查
| 子系統 | 路徑 |
|-------|------|
| **進行中** Credential Primitives WASM | `docs/3-specs/arcrun/credential-primitives-wasm/` |
| arcrun 總進度 | `docs/3-specs/arcrun/arcrun.md` |
| Auth Recipe 系統 | `docs/3-specs/arcrun/auth-recipe.md` |
| Landing Page | `docs/3-specs/arcrun/landing-page.md` |
| SDK + Website | `docs/3-specs/arcrun/sdk-and-website/` |
| arcrun MVP 整體 | `docs/3-specs/arcrun-core-mvp/` |
| Platform Evolution | `docs/3-specs/arcrun-platform-evolution/` |
| Credential 長期規格(需求源) | `docs/user_requirements/credential_parts.md` |
| Tech Stack 詳細 | `docs/3-specs/tech.md` |
---
## 封測狀態
**推遲**richblack 2026-04-19 決定)。先完成 Phase 1-3 清除違規 TS,再啟動封測。