diff --git a/CLAUDE.md b/CLAUDE.md index 0a8b1b6..7cee713 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -10,13 +10,13 @@ variance by the majority vote, step 5 by consolidating the three readings. - Prompt definition files live in - `prompts/--.md` (e.g. 01-tag.md; no - version suffix -- versions live in git history) and are - passed verbatim as the system prompt. The number names a - step of the research procedure, not the file: the - deterministic vocabulary step (step 2) has no definition - file yet holds its own number. Zero padding is for - sorting only -- prose says "step 1", "step 3". + `prompts/-.md` (e.g. 1-tag.md, + 5a-read.md; substeps are lettered, matching the step + numbering of the paper; no version suffix -- versions live + in git history) and are passed verbatim as the system + prompt. The number names a step of the research + procedure, not the file: the deterministic vocabulary step + (step 2) has no definition file yet holds its own number. - Itemwise LLM judgments (per-song coding in step 3, per-keyword group selection in step 4) run the same definition file three times, independently, over the same diff --git a/docs/decision-log.md b/docs/decision-log.md index 759bb15..d5afc4a 100644 --- a/docs/decision-log.md +++ b/docs/decision-log.md @@ -912,3 +912,23 @@ 研究的執行方式、沿用與棄用的成果,以及它如何促成正式研究 的可稽核設計;投稿摘要不於樹中另存副本,其內容留在 git 歷史(`paper/abstract.md` 的前身)。 + +## 2026-08-18 + +- **工序編號改與論文正文一致**:論文正文將五個步驟的細分 + 工序以字母標示(表三「步驟3a」、表四「步驟5d」),repo + 的檔名與歸檔目錄卻沿用 `05-01`、`05-02` 這種數字次步, + 兩邊對不上。裁定:改為 `1-tag`、`2-cluster`、`3a-code`、 + `4-group`、`5a-read`、`5b-consolidate`、`5c-synthesize`、 + `5d-annotate`(`prompts/` 與 `runs/` 同步,以 `git mv` + 保留歷史),補零一併取消。`runs/*/meta.json` + 內記的 `prompt_path` 不追改——它是執行當下的實況記錄; + 本日誌的既有條目同理,維持當時的名稱。`run-costs.md` 則 + 相反:它的「步驟」欄是查閱歸檔的索引,故一律換為現行 + 編號(`01-01-01-tag`→`1-tag`、`03-01-code` 與 + `03-code`→`3a-code`),並新增末欄「原步驟名」保留執行 + 當時的名稱——索引要指得到現在的歸檔,紀錄要留得住當時 + 的形狀,兩者以兩欄並存解決。已刪除的工序(步驟 2 的 + LLM 合併嘗試 `01-02-01-merge`、步驟 3 的仲裁 + `03-02-arbitration`)其歸檔已不存在,無現行編號可指, + 不另發新名,步驟欄逕標「已廢棄」,原名存於末欄。 diff --git a/docs/methodology.md b/docs/methodology.md index babbfe5..5260be4 100644 --- a/docs/methodology.md +++ b/docs/methodology.md @@ -98,7 +98,7 @@ ## 步驟 3 編碼的三次執行與多數決 - **三次執行**:同一份定義檔、同一份輸入檔,獨立執行 - 三次,三份歸檔並列(`runs/03-code/run1`、`run2`、 + 三次,三份歸檔並列(`runs/3a-code/run1`、`run2`、 `run3`),彼此無先後主從之別。 - **多數決**:一首歌的一個標籤,三次執行中至少兩次標出 即收入定案編碼。三票不平手,裁決規則因此無例外條款, @@ -125,13 +125,13 @@ 由 LLM 依編碼名的字面語意判斷。 - **任務**:每筆輸入為一個群名加 101 個編碼的字母序 清單,輸出為入選編碼的單層 JSON 陣列;定義檔 - `prompts/04-group.md` 只定格式,不含任何群的語意定義。 + `prompts/4-group.md` 只定格式,不含任何群的語意定義。 - **模型**:`claude-fable-5`(步驟 1、3 為 `claude-sonnet-4-6`)。該模型不受理 `temperature` 與 `thinking` 參數,兩者均不送出;取樣變異由多數決吸收。 模型裁定的理由與對照實驗見決策日誌。 - **三次執行**:同一份定義檔、同一份輸入檔,獨立執行 - 三次,歸檔並列(`runs/04-group/run1`、`run2`、`run3`)。 + 三次,歸檔並列(`runs/4-group/run1`、`run2`、`run3`)。 - **多數決**:一個(群,編碼)配對,三次執行中至少兩次 入選即屬該群;不在 101 碼詞彙表內的輸出項無效,每筆 丟棄印於標準錯誤。計票由確定性子命令 `tally-groups` @@ -146,7 +146,7 @@ ## 步驟 5 女性主義問題之質性深讀 -本步驟之 5-1 至 5-3 為**質性閱讀,非編碼**:輸出為自由 +本步驟之 5a 至 5c 為**質性閱讀,非編碼**:輸出為自由 文字的問題閱讀報告,無可逐項機械比對的單位,故不適用 三票多數決與仲裁; 三次獨立閱讀為分析者三角檢核,逐首整合為整合而非裁決, @@ -155,34 +155,34 @@ - **對象**:定案編碼含 `women-power` 或 `female-empowerment` 的 145 首歌。 -- **5-1 逐首閱讀**:每筆輸入為一首歌的完整歌詞逐字全文, +- **5a 逐首閱讀**:每筆輸入為一首歌的完整歌詞逐字全文, 不含歌名與演唱者(盲讀);定義檔 - `prompts/05-01-read.md`。同一份定義檔、同一份輸入檔, - 獨立執行三次,歸檔並列(`runs/05-01-read/run1`、 + `prompts/5a-read.md`。同一份定義檔、同一份輸入檔, + 獨立執行三次,歸檔並列(`runs/5a-read/run1`、 `run2`、`run3`)。 -- **5-2 逐首整合**:每筆輸入為該首歌的三份閱讀報告 +- **5b 逐首整合**:每筆輸入為該首歌的三份閱讀報告 (不含歌詞);以問題機制為單位保守合併,標收斂註記 ((3/3)、(2/3)),主清單僅列兩讀以上提出者,單讀發現 - 以一行存目;定義檔 `prompts/05-02-consolidate.md`, - 執行一次,歸檔 `runs/05-02-consolidate/run1`。 -- **5-3 樣態統整**:單筆輸入為一批整合報告;歸納問題 + 以一行存目;定義檔 `prompts/5b-consolidate.md`, + 執行一次,歸檔 `runs/5b-consolidate/run1`。 +- **5c 樣態統整**:單筆輸入為一批整合報告;歸納問題 **樣態**——問題呈現與運作的重複形態,非問題分類, 代表引句僅取自主清單;定義檔 - `prompts/05-03-synthesize.md`。四種輸入範圍各執行 + `prompts/5c-synthesize.md`。四種輸入範圍各執行 一次:全 145 首之基底統整(歸檔 - `runs/05-03-synthesize/run1`),及依 `performer_gender` + `runs/5c-synthesize/run1`),及依 `performer_gender` (演唱聲音之性別)切分之三個發話脈絡統整——男聲 (male,歸檔 `run2`)、女聲(female,歸檔 `run3`)、 混合(mixed,歸檔 `run4`);基底看橫貫各脈絡之樣態, 分組看各權力脈絡下之樣態。genderfluid 與 non-binary 共 3 首不設群——樣本數不支持歸納——僅入基底統整, 由研究者以個案閱讀。同一輸入不重複執行:自由歸納之 - 產出無機械合併可言,其變異由 5-1 三讀、5-2 整合與 + 產出無機械合併可言,其變異由 5a 三讀、5b 整合與 草稿地位承接,四份草稿互為對照,由研究者終審裁決。 -- **5-4 樣態標註**:以 (歌, 樣態) 對為可逐項機械比對之 +- **5d 樣態標註**:以 (歌, 樣態) 對為可逐項機械比對之 單位,回歸「三次執行+多數決」協定。對象為「有問題」 的歌——三讀中至多一個「無」(多數決精神;恰兩「無」 - 者其整合報告主清單必為空,與 5-2 主清單規則自洽), + 者其整合報告主清單必為空,與 5b 主清單規則自洽), 計 111 首(男聲 12、女聲 69、混合 29、genderfluid 1)。 樣態表為三份分組統整草稿原文:男聲 13 條(M1–M13)、 女聲 14 條(F1–F14)、混合 16 條(X1–X16);基底 15 條 @@ -195,17 +195,17 @@ 位置無法先驗決定),其歸屬引用維持個案地位。每筆 輸入為一首歌之整合報告(「僅單獨提及」行於組裝時 剝除,標註僅依主清單)與該首適用之樣態表;定義檔 - `prompts/05-04-annotate.md`,獨立執行三次 - (`runs/05-04-annotate/run1`~`run3`),(歌, 樣態) 對 + `prompts/5d-annotate.md`,獨立執行三次 + (`runs/5d-annotate/run1`~`run3`),(歌, 樣態) 對 得兩票以上者定案。 - **模型**:`claude-fable-5`(與先導深讀同儀器; `temperature` 與 `thinking` 參數不適用,均不送出)。 -- **輸入組裝**:確定性行內腳本。5-1:145 首依歌曲 ID - 升序,`content` 為歌詞逐字全文;5-2:每筆 +- **輸入組裝**:確定性行內腳本。5a:145 首依歌曲 ID + 升序,`content` 為歌詞逐字全文;5b:每筆 `{"reports": [run1 輸出, run2 輸出, run3 輸出]}`; - 5-3:單筆以 `song-` 為鍵、整合報告為值之 JSON + 5c:單筆以 `song-` 為鍵、整合報告為值之 JSON 物件,鍵集合為該次統整之範圍(基底為全 145 首, - 分組依工作庫 `performer_gender` 切分);5-4:每筆 + 分組依工作庫 `performer_gender` 切分);5d:每筆 `{"report": 主清單, "patterns": [{"id", "name", "description"}]}`,樣態條目自分組統整草稿機械切出, 代表引句不隨附——引句出自特定歌曲,判該曲時形同 @@ -263,7 +263,7 @@ 在資料中找不到對應者,即中止;校定的判準記於 `decision-log.md`。 - **合法碼清單**:純文字、一行一個碼,自詞彙表產出: - `{ cat runs/02-cluster/result-keywords.txt; echo + `{ cat runs/2-cluster/result-keywords.txt; echo women-power; } | sort`。 - **定案表**:`results/codings.csv`,欄位 `Song`、 `Artist Credit`、`Keyword`、`Quote`,一列一個標籤。歌名 diff --git a/docs/output-validation.md b/docs/output-validation.md index b769d84..687e705 100644 --- a/docs/output-validation.md +++ b/docs/output-validation.md @@ -1,11 +1,11 @@ # LLM 輸出的契約查核 (2026-08-06 量測。對象為步驟 3 的三份執行歸檔 -`runs/03-code/run1`–`run3`,共 883 首歌、44,149 筆標籤 +`runs/3a-code/run1`–`run3`,共 883 首歌、44,149 筆標籤 指派、44,146 句引述。歌詞以模型實際看到的那一份為準,即 `tools/instance/llm-input-code.jsonl`。) -定義檔 `prompts/03-code.md` 對輸出下了四條明確要求:只用 +定義檔 `prompts/3a-code.md` 對輸出下了四條明確要求:只用 給定的碼且拼寫照給、每個標出的碼恰引一行歌詞、引述逐字、 輸出為合法 JSON 且無其他文字。本檔記錄這四條各自被遵守到 什麼程度。 diff --git a/docs/project-structure.md b/docs/project-structure.md index 03acc38..4a9d83b 100644 --- a/docs/project-structure.md +++ b/docs/project-structure.md @@ -26,16 +26,17 @@ pop-fem-audit/ │ ├── songs.csv # 歌曲報表(人讀;進 git) │ └── artists.csv # 歌手報表(人讀;進 git) ├── prompts/ # LLM 定義檔(逐字作為 system prompt) -│ └── <步>-<次步>-.md # 01-tag.md、03-code.md、 -│ # 04-group.md、05-01-read.md、 -│ # 05-02-consolidate.md、 -│ # 05-03-synthesize.md、 -│ # 05-04-annotate.md -│ # (步內僅一個執行時省略次步) +│ └── <步><次步>-.md # 1-tag.md、3a-code.md、 +│ # 4-group.md、5a-read.md、 +│ # 5b-consolidate.md、 +│ # 5c-synthesize.md、 +│ # 5d-annotate.md +│ # (次步以字母標示,與論文正文 +│ # 的步驟編號一致;步內僅一個 +│ # 執行時省略次步) │ # 不帶版本號,版本即 git 歷史 │ # (編號的所指是工序:確定性 -│ # 的步驟 2 無定義檔仍佔一號; -│ # 補零只為排序) +│ # 的步驟 2 無定義檔仍佔一號) ├── tools/ # 輔助工具子專案(src-layout) │ ├── pyproject.toml # 發行名 pop-fem-audit-tools; │ │ # pip install -e tools/ 安裝 @@ -60,7 +61,7 @@ pop-fem-audit/ │ │ │ │ # into the codes (step 2) │ │ │ ├── tally_codings.py # settle step 3 by majority │ │ │ ├── tally_groups.py # settle step 4 by majority -│ │ │ ├── tally_annotations.py # settle step 5-4 by majority +│ │ │ ├── tally_annotations.py # settle step 5d by majority │ │ │ └── run_llm.py # API 執行器:一份定義檔+一份輸入 │ │ │ # →歸檔至指定目錄(Batch API); │ │ │ # 多次執行的計票由獨立子命令承擔 @@ -71,23 +72,23 @@ pop-fem-audit/ │ └── tests/ # 單元測試(unittest) ├── runs/ # 現行執行的完整稽核紀錄(進 git; │ │ # 重跑同一 run 須明示 --replace) -│ ├── <步驟名>/ # 一步一個目錄(01-tag、03-code、 -│ │ # 04-group、05-01-read、 -│ │ # 05-02-consolidate、 -│ │ # 05-03-synthesize、05-04-annotate) +│ ├── <步驟名>/ # 一步一個目錄(1-tag、3a-code、 +│ │ # 4-group、5a-read、 +│ │ # 5b-consolidate、 +│ │ # 5c-synthesize、5d-annotate) │ │ └── run/ # LLM 步驟:每個 run 一份自我 │ │ ├── prompt.md # 完備歸檔(定義檔快照) │ │ ├── output.jsonl # 該次執行原始輸出 │ │ └── meta.json # model ID、temperature、時間戳、 │ │ # batch ID、token 用量 -│ └── 02-cluster/ # 確定性步驟:無執行變異, +│ └── 2-cluster/ # 確定性步驟:無執行變異, │ # 不分 run 層 ├── results/ # 論文引用的定案表 CSV(計票子命令 │ │ # 產出;「可再生仍 commit」的例外) │ ├── codings.csv # 步驟 3 定案編碼 │ ├── groups.csv # 步驟 4 定案編碼群 -│ ├── patterns.csv # 步驟 5-3 定案樣態表 -│ ├── annotations.csv # 步驟 5-4 定案歌×樣態 +│ ├── patterns.csv # 步驟 5c 定案樣態表 +│ ├── annotations.csv # 步驟 5d 定案歌×樣態 │ └── pattern-matrix.csv # 前四者的人讀寬表 ├── docs/ │ ├── research-plan.md # 研究步驟規劃(本檔之姊妹篇) diff --git a/docs/reliability.md b/docs/reliability.md index 2582c7f..c3a5f2b 100644 --- a/docs/reliability.md +++ b/docs/reliability.md @@ -1,8 +1,8 @@ # 信度:量測方式與結果 -(2026-08-16 量測。對象為步驟 3 的三份執行歸檔 -`runs/03-code/run1`–`run3`,與步驟 5-4 的三份執行歸檔 -`runs/05-04-annotate/run1`–`run3`;數字由原始輸出直接計算。) +(2026-08-16 量測。對象為步驟 3a 的三份執行歸檔 +`runs/3a-code/run1`–`run3`,與步驟 5d 的三份執行歸檔 +`runs/5d-annotate/run1`–`run3`;數字由原始輸出直接計算。) ## 一、本研究的信度是什麼 @@ -67,7 +67,7 @@ Krippendorff 依產生資料的設計,把信度分成三型 ## 三、實測結果 -### 步驟 3(編碼:883 首 × 101 個碼 = 89,183 格,執行三次) +### 步驟 3a(編碼:883 首 × 101 個碼 = 89,183 格,執行三次) | 兩次執行 | 百分比一致率 | Cohen's κ | Jaccard | |---|---:|---:|---:| @@ -84,7 +84,7 @@ Krippendorff 依產生資料的設計,把信度分成三型 (此處由原始輸出計算,未套用 936 筆人工校對表;論文引用的 定案數 14,664 為校對後的結果,差 1 筆。) -### 步驟 5-4(樣態標註:111 首 × 各自適用樣態 = 3,708 格,執行三次) +### 步驟 5d(樣態標註:111 首 × 各自適用樣態 = 3,708 格,執行三次) | 兩次執行 | 百分比一致率 | Cohen's κ | Jaccard | |---|---:|---:|---:| @@ -111,7 +111,7 @@ Jaccard(只看「有標到」的格子,忽略雙方都沒標的)約 0.89–0.91, 信度數字回答的實際問題是:**這台儀器的隨機性,大到會不會 改變結論?** -步驟 3 的 89,183 格中,搖擺的格子共 2,473 格(兩票 1,163、 +步驟 3a 的 89,183 格中,搖擺的格子共 2,473 格(兩票 1,163、 一票 1,310),佔 2.8%。若只執行一次即定案,這批格子當中約 一半會成為誤收、另一半會成為漏收。三票多數決把兩票以上者 收入、一票者剔除,處理的正是這一批。 @@ -146,8 +146,8 @@ p=0.1 者由 0.1 壓低到 0.028,而 p=0.5 者仍是 0.5——真正 ## 六、計算方式與依據 - **分析單位**:每一個「(歌曲, 編碼)」格為一個單位,是非題 - (有標/無標)。步驟 3 為 883 首 × 101 碼 = 89,183 格; - 步驟 5-4 為各歌適用樣態數合計 3,708 格。 + (有標/無標)。步驟 3a 為 883 首 × 101 碼 = 89,183 格; + 步驟 5d 為各歌適用樣態數合計 3,708 格。 - **Cohen's κ**:兩次執行的 2×2 表,κ=(p_o−p_e)/(1−p_e), p_e 由兩次各自的邊際比例相乘求得。 - **Krippendorff's α(名目、三位「編碼者」、無缺漏)**: diff --git a/docs/research-plan.md b/docs/research-plan.md index 331c9ea..d10956a 100644 --- a/docs/research-plan.md +++ b/docs/research-plan.md @@ -15,10 +15,10 @@ script 執行。LLM 步驟以 Python script 呼叫 Anthropic Messages API(個人 Console 帳號、Batch API 五折),定義 檔逐字作為 system prompt。可逐項機械比對的判斷(步驟 3 - 編碼、步驟 4 選群、步驟 5-4 樣態標註)採「同一定義檔 + 編碼、步驟 4 選群、步驟 5d 樣態標註)採「同一定義檔 獨立執行三次+多數決」,計票由確定性子命令完成。自由 - 生成(步驟 1 自由標註)兩次執行全數進池。步驟 5-1 至 - 5-3 為質性閱讀協定:三次獨立閱讀為分析者三角檢核、 + 生成(步驟 1 自由標註)兩次執行全數進池。步驟 5a 至 + 5c 為質性閱讀協定:三次獨立閱讀為分析者三角檢核、 逐首整合、樣態統整產出草稿,不適用投票與仲裁。詞彙表 不經 LLM,由詞向量嵌入+確定性分群產生。驗證結果不符 預期則修訂定義檔重跑該循環,絕不手改結果。 @@ -60,8 +60,8 @@ (`data/derived/`,進 git),與 SQLite 同交易語意。 - 報表:論文引用的定案表進 `results/`—— `codings.csv`(步驟 3 定案編碼)、`groups.csv` - (步驟 4 定案編碼群)、`patterns.csv`(步驟 5-3 定案 - 樣態表)、`annotations.csv`(步驟 5-4 定案歌×樣態 + (步驟 4 定案編碼群)、`patterns.csv`(步驟 5c 定案 + 樣態表)、`annotations.csv`(步驟 5d 定案歌×樣態 矩陣)。衍生與報表為「可再生仍 commit」的例外,理由: 引用穩定性、審稿人零門檻、撰稿期數字變動可 diff。 - **資料模型**:`songs`(含 lyrics、`performer_gender`—— @@ -105,15 +105,16 @@ 定案 `results/groups.csv`;wp/fe 與各編碼、各編碼群之 關聯統計(BH-FDR 校正)入論文。 5. **女性主義問題之質性深讀(步驟 5)**:對 wp∪fe 145 首 - ——5-1 逐首盲讀(僅歌詞全文)×3;5-2 逐首整合(收斂 - 註記、主清單限兩讀以上);5-3 樣態統整(全體基底+ - 男聲/女聲/混合三個發話脈絡分組);5-4 樣態標註—— + ——5a 逐首盲讀(僅歌詞全文)×3;5b 逐首整合(收斂 + 註記、主清單限兩讀以上);5c 樣態統整(全體基底+ + 男聲/女聲/混合三個發話脈絡分組);5d 樣態標註—— 以分組樣態表逐首標註「有問題」的 111 首,×3+多數決 (`tally-annotations`),定案 `results/patterns.csv` 與 `results/annotations.csv`。 -定義檔命名 `prompts/<步>-<次步>-.md`,編號的所指是 -工序而非定義檔(確定性的第 2 步無定義檔仍佔編號);檔名 +定義檔命名 `prompts/<步><次步>-.md`,次步以字母標示 +(與論文正文的步驟編號一致);編號的所指是工序而非定義檔 +(確定性的第 2 步無定義檔仍佔編號);檔名 不帶版本號——版本即 git 歷史;每次執行的定義檔快照隨 `runs/` 自我完備,token 費用逐筆記於 `docs/run-costs.md`。 diff --git a/docs/run-costs.md b/docs/run-costs.md index 57415c9..52a0c75 100644 --- a/docs/run-costs.md +++ b/docs/run-costs.md @@ -10,53 +10,61 @@ $3/$15、opus-4-6 $5/$25、opus-5 與 fable-5 $10/$50) 被 `--replace` 取代的執行以「已取代」標記,數字保留供 總支出核算。 -| 日期 | 步驟 | 執行 | 模型 | 批次 ID | 耗時 | input | output | 費用 (USD) | 狀態 | -|---|---|---|---|---|---|---:|---:|---:|---| -| 2026-08-04 | 01-01-01-tag | run1 | claude-sonnet-4-6 | msgbatch_01PTACDQMr8M6ahnshbedjtB | 6 分 27 秒 | 763,318 | 338,661 | $3.68 | 已取代(浮水印清洗與防圍欄修訂後重跑) | -| 2026-08-05 | 01-01-01-tag | run1 | claude-sonnet-4-6 | msgbatch_01TikJNd2pZVxzQ8SaybVthu | 4 分 57 秒 | 774,604 | 323,651 | $3.59 | 已取代(合法 JSON 修訂後重跑) | -| 2026-08-05 | 01-01-01-tag | run1 | claude-sonnet-4-6 | msgbatch_01JFBCNqnu1cwXyqmEKLHQYF | 4 分 30 秒 | 790,370 | 328,227 | $3.65 | 已取代(song-288 平台失敗,整批重跑驗證) | -| 2026-08-05 | 01-01-01-tag | run1 | claude-sonnet-4-6 | msgbatch_01VSDneWuSbf8mShA32jiWrX | 6 分 15 秒 | 790,370 | 326,193 | $3.63 | 已取代(措辭修訂後全體重跑) | -| 2026-08-05 | 01-01-01-tag | run1-rescue-288 | claude-sonnet-4-6 | msgbatch_019Hq6bNVXVmp4DjRZ2cgVda | 2 分 5 秒 | 1,015 | 376 | $0.01 | 已取代(措辭修訂後全體重跑,該首原生通過)| -| 2026-08-05 | 01-01-01-tag | run1 | claude-sonnet-4-6 | msgbatch_01VgZ77KAPGWmuu3PnQFqZ7Q | 7 分 1 秒 | 794,913 | 326,435 | $3.64 | 現行 | -| 2026-08-05 | 01-01-01-tag | run2 | claude-sonnet-4-6 | msgbatch_01TLFey3L4fimKxcebTZQGYn | 4 分 21 秒 | 794,913 | 328,324 | $3.65 | 現行 | -| 2026-08-05 | 01-02-01-merge | run1 | claude-sonnet-4-6 | msgbatch_01BvYMFmH8zrUq9SNxWSNba7 | 9 分 14 秒 | 46,454 | 60,974 | $0.53 | 已取代(完整分割驗證不過:漏 366、重複分派 511、撞名 4) | -| 2026-08-05 | 01-02-01-merge | run1 | claude-opus-5 | msgbatch_018TkYpdT3DsZqq2q94FQCUN | — | 0 | 0 | $0.00 | 拒收(temperature 已棄用) | -| 2026-08-05 | 01-02-01-merge | run1 | claude-opus-4-8 | msgbatch_018Wuux4adz5mWSvzJjfgLxb | — | 0 | 0 | $0.00 | 拒收(temperature 已棄用) | -| 2026-08-05 | 01-02-01-merge | run1 | claude-opus-4-6 | msgbatch_01Lmt2j1Txyof9CctUK7CbHA | 12 分 19 秒 | 46,454 | 54,864 | $0.80 | 已取代(圍欄違規;漏 190、發明 151、重複 11) | -| 2026-08-05 | 01-02-01-merge | run1 | claude-opus-5 | msgbatch_012SEfebTnjU5uWN6hhfnhhh | 8 分 45 秒 | 63,368 | 64,000 | $1.92 | 已取代(64k 截斷) | -| 2026-08-05 | 01-02-01-merge | run1 | claude-opus-5 | msgbatch_01Wi9xEoQKCy1nZK6myVNg77 | 11 分 34 秒 | 63,368 | 70,175 | $2.07 | 已取代(驗證不過:漏 59、發明 140、重複 3) | -| 2026-08-05 | 01-02-01-merge | run1 | claude-fable-5 | msgbatch_01M15hUs8P9FDTqWvAHdc1cA | 32 分 45 秒 | 63,368 | 107,721 | $3.01 | 現行歸檔(JSON 語法毀損,驗證不過) | -| 2026-08-05 | 01-02-01-merge | run1 | claude-fable-5 | msgbatch_012stRP28uuQDQwobm41HMLh | — | 0 | 0 | $0.00 | 拒收(thinking.type.enabled 不支援) | -| 2026-08-05 | 01-02-01-merge | run1 | claude-fable-5 | msgbatch_01KpS7AMx1zAHTcNujgGsouJ | 26 分 28 秒 | 63,368 | 128,000 | $3.52 | 現行歸檔(effort max:128k 全耗於推理,正文空白) | -| 2026-08-05 | 03-01-code | run1 | claude-sonnet-4-6 | msgbatch_01L7VepTxSNz5vruvzzjuL2c | 6 分 36 秒 | 1,247,264 | 492,730 | $5.57 | 36 首輸出遭內容過濾攔阻,待修訂重跑 | -| 2026-08-05 | 03-01-code | 引述減量實驗(36 首)| claude-sonnet-4-6 | msgbatch_01Hskdhi2DkudYmgZhhgFts7 | 3 分 51 秒 | 56,458 | 11,074 | $0.17 | 實驗:每碼一行引述,36 首全數通過過濾;歸檔不入 repo | -| 2026-08-05 | 03-01-code | run1 | claude-sonnet-4-6 | msgbatch_01GG5Ez9KT1pPwtQaY4sW7tv | 4 分 35 秒 | 1,293,724 | 269,166 | $3.96 | 過濾零攔阻;song-168、song-590 因餘額用盡失敗,song-775 拒答 | -| 2026-08-05 | 03-01-code | 101 碼樹狀探測(148 首)| claude-sonnet-4-6 | msgbatch_017jo3E5gWVks9b39iWMTqz3 | 2 小時 11 分 | 385,270 | 79,690 | $0.87 | 實驗:k=100 葉碼+women-power;零違規碼; 歸檔不入 repo | -| 2026-08-06 | 命名實驗(100 組)| — | claude-sonnet-4-6 | msgbatch_01XSi1YtWzdVyYUzYh7DQRWg | 3 分 5 秒 | 55,090 | 1,168 | $0.09 | 實驗:LLM 命名對照 medoid,未採用;歸檔不入 repo | -| 2026-08-06 | 命名實驗(100 組)| — | claude-fable-5 | msgbatch_01Y8SJj1h1ZuSQRErhqkvgZE | 3 分 2 秒 | 76,211 | 2,049 | $0.43 | 實驗:同上,加禁用 themes;未採用;歸檔不入 repo | -| 2026-08-06 | 03-01-code | run1 | claude-sonnet-4-6 | msgbatch_01GS1opvurvsf62oknnQxhtx | 3 分 46 秒 | 1,625,458 | 362,759 | $5.16 | 現行(101 碼;883 首全數有效,零攔阻) | -| 2026-08-06 | 03-01-code | run2 | claude-sonnet-4-6 | msgbatch_01CxnwNLWzZbRpZK7UAdpb8i | 5 分 22 秒 | 1,625,458 | 364,098 | $5.17 | 現行(101 碼;883 首全數有效,零攔阻) | -| 2026-08-06 | 03-02-arbitration | — | claude-sonnet-4-6 | msgbatch_019xcQXwrbwDGFc9nE5M8AjE | 4 分 0 秒 | 763,193 | 42,389 | $1.46 | 已取代(2 首遭內容過濾攔阻、13 首輸出夾帶散文;定義檔修訂後重跑) | -| 2026-08-06 | 03-02-arbitration | — | claude-sonnet-4-6 | msgbatch_01N7bDbXRSfAVUzzaj2thKeR | 4 分 20 秒 | 781,037 | 39,315 | $1.47 | 現行(644 首全數有效,零攔阻;保留 1,481/送裁 1,699) | -| 2026-08-06 | 03-code | run3 | claude-sonnet-4-6 | msgbatch_01KnkCaGETnFJrPddrxZTYHA | 6 分 26 秒 | 1,625,458 | 363,840 | $5.17 | 現行(101 碼;883 首全數有效,零攔阻) | -| 2026-08-14 | 04-group | run1 | claude-sonnet-4-6 | msgbatch_01UPNedog6feQzJ9WVfSAxBD | 1 分 1 秒 | 3,129 | 470 | $0.01 | 已取代(僅 3 群;改納 women-power 群後重跑) | -| 2026-08-14 | 04-group | run1 | claude-sonnet-4-6 | msgbatch_01KntJgxdicStaMjNL12P3zi | 1 分 25 秒 | 4,170 | 558 | $0.01 | 已取代(改以 claude-fable-5 執行;vulnerable 輸出含詞彙表外碼 1 筆;歸檔另行私人備份,不入版本庫) | -| 2026-08-14 | 04-group | run1 | claude-fable-5 | msgbatch_01Mr6goBb2Efa4YrqCprbP4U | 55 秒 | 5,553 | 2,049 | $0.08 | 現行(4 群;零違規碼;temperature 與 thinking 參數不適用於本模型,未送出) | -| 2026-08-14 | 04-group | run2 | claude-fable-5 | msgbatch_01C17xW3YBefThTYZ83g7KkL | 1 分 21 秒 | 5,553 | 1,891 | $0.08 | 現行(4 群;零違規碼) | -| 2026-08-14 | 04-group | run3 | claude-fable-5 | msgbatch_01DveEMYyjCAYe6wxpcCD87V | 2 分 9 秒 | 5,553 | 1,975 | $0.08 | 現行(4 群;零違規碼) | -| 2026-08-15 | 05-01-read | run1 | claude-fable-5 | msgbatch_018NJejke75o7kzKyjZeeKwi | 2 分 12 秒 | 189,607 | 181,299 | $5.48 | 現行(144/145 有效;song-444 平台錯誤,單筆補送) | -| 2026-08-15 | 05-01-read | run1-rescue-444 | claude-fable-5 | msgbatch_01DgygMm6iYn2qEnyqHkTMfa | 1 分 52 秒 | 1,852 | 1,557 | $0.05 | 現行(run1 之 song-444 單筆補送,成功) | -| 2026-08-15 | 05-01-read | run2 | claude-fable-5 | msgbatch_011txWpWDtdkNXNiPA74ZUfQ | 15 分 25 秒 | 191,459 | 185,630 | $5.60 | 現行(145/145 有效) | -| 2026-08-15 | 05-01-read | run3 | claude-fable-5 | msgbatch_01Unn7C7WCnuVoLraJRXksoG | 7 分 59 秒 | 191,459 | 190,433 | $5.72 | 現行(145/145 有效) | -| 2026-08-15 | 05-02-consolidate | run1 | claude-fable-5 | msgbatch_01WPyH4pCCiieHs4yU3xtHzN | 2 分 28 秒 | 326,287 | 242,785 | $7.70 | 現行(145/145 有效) | -| 2026-08-15 | 05-03-synthesize | run1 | claude-fable-5 | msgbatch_01XbNQb1SFrUxhk2ZWF7epPA | 3 分 0 秒 | 103,888 | 9,982 | $0.77 | 現行(15 個樣態;研究者審定用草稿) | -| 2026-08-15 | 05-03-synthesize | run2 | claude-fable-5 | msgbatch_01FKqq8U6m5HLLsx7KpQES26 | 3 分 4 秒 | 13,573 | 6,883 | $0.24 | 現行(男聲群 14 首;13 個樣態) | -| 2026-08-15 | 05-03-synthesize | run3 | claude-fable-5 | msgbatch_017tfhiRTnaxqCp6YFyoivsu | 4 分 4 秒 | 60,727 | 8,519 | $0.52 | 現行(女聲群 98 首;14 個樣態) | -| 2026-08-15 | 05-03-synthesize | run4 | claude-fable-5 | msgbatch_01SNjTLiNPEba4LW2tcUAcTJ | 4 分 3 秒 | 29,958 | 9,793 | $0.39 | 現行(混合群 30 首;16 個樣態) | -| 2026-08-15 | 05-04-annotate | run1 | claude-fable-5 | msgbatch_01H9gXXhNbhZG6gzZtvMHxhh | 3 分 9 秒 | 815,492 | 300,901 | $11.60 | 現行(109/111 有效;song-177、song-199 遭 max_tokens 截斷,單筆補送) | -| 2026-08-15 | 05-04-annotate | run1-rescue-177-199 | claude-fable-5 | msgbatch_01YEdroZ51b8btPfG1aqPFCD | 3 分 5 秒 | 17,802 | 11,601 | $0.38 | 現行(run1 之 2 筆補送,max_tokens 提為 16000,成功) | -| 2026-08-15 | 05-04-annotate | — | claude-fable-5 | msgbatch_01G67STqZsHpnhedat2HRU85 | 3 分 0 秒 | 17,802 | 14,162 | $0.44 | 誤送(補送批次輪詢中斷後誤判死亡而重送;原批次自行完成並歸檔為現行,本批次取消不及、兩筆皆完成,結果棄用) | -| 2026-08-15 | 05-04-annotate | run2 | claude-fable-5 | msgbatch_01VVJpsfidNtF66GnHQdWnGR | 9 分 16 秒 | 815,492 | 306,582 | $11.74 | 現行(111/111 有效;max_tokens 16000,零截斷) | -| 2026-08-15 | 05-04-annotate | run3 | claude-fable-5 | msgbatch_01AsYvZd8rsTYVfUYLzWfeMK | 4 分 12 秒 | 815,492 | 298,512 | $11.54 | 現行(111/111 有效;max_tokens 16000,零截斷) | +「步驟」欄的名稱於 2026-08-18 一律換為現行編號(見 +`decision-log.md` 當日條目),執行當時的名稱記於末欄 +「原步驟名」,未曾改名者留空。已刪除的工序——步驟 2 的 +LLM 合併嘗試(`01-02-01-merge`,詞彙表改採詞向量分群時 +放棄)與步驟 3 的仲裁(`03-02-arbitration`,改採三票 +多數決時刪除)——不另發新名,步驟欄標「已廢棄」,僅存 +本表供總支出核算。 + +| 日期 | 步驟 | 執行 | 模型 | 批次 ID | 耗時 | input | output | 費用 (USD) | 狀態 | 原步驟名 | +|---|---|---|---|---|---|---:|---:|---:|---|---| +| 2026-08-04 | 1-tag | run1 | claude-sonnet-4-6 | msgbatch_01PTACDQMr8M6ahnshbedjtB | 6 分 27 秒 | 763,318 | 338,661 | $3.68 | 已取代(浮水印清洗與防圍欄修訂後重跑) | 01-01-01-tag | +| 2026-08-05 | 1-tag | run1 | claude-sonnet-4-6 | msgbatch_01TikJNd2pZVxzQ8SaybVthu | 4 分 57 秒 | 774,604 | 323,651 | $3.59 | 已取代(合法 JSON 修訂後重跑) | 01-01-01-tag | +| 2026-08-05 | 1-tag | run1 | claude-sonnet-4-6 | msgbatch_01JFBCNqnu1cwXyqmEKLHQYF | 4 分 30 秒 | 790,370 | 328,227 | $3.65 | 已取代(song-288 平台失敗,整批重跑驗證) | 01-01-01-tag | +| 2026-08-05 | 1-tag | run1 | claude-sonnet-4-6 | msgbatch_01VSDneWuSbf8mShA32jiWrX | 6 分 15 秒 | 790,370 | 326,193 | $3.63 | 已取代(措辭修訂後全體重跑) | 01-01-01-tag | +| 2026-08-05 | 1-tag | run1-rescue-288 | claude-sonnet-4-6 | msgbatch_019Hq6bNVXVmp4DjRZ2cgVda | 2 分 5 秒 | 1,015 | 376 | $0.01 | 已取代(措辭修訂後全體重跑,該首原生通過)| 01-01-01-tag | +| 2026-08-05 | 1-tag | run1 | claude-sonnet-4-6 | msgbatch_01VgZ77KAPGWmuu3PnQFqZ7Q | 7 分 1 秒 | 794,913 | 326,435 | $3.64 | 現行 | 01-01-01-tag | +| 2026-08-05 | 1-tag | run2 | claude-sonnet-4-6 | msgbatch_01TLFey3L4fimKxcebTZQGYn | 4 分 21 秒 | 794,913 | 328,324 | $3.65 | 現行 | 01-01-01-tag | +| 2026-08-05 | 已廢棄 | run1 | claude-sonnet-4-6 | msgbatch_01BvYMFmH8zrUq9SNxWSNba7 | 9 分 14 秒 | 46,454 | 60,974 | $0.53 | 已取代(完整分割驗證不過:漏 366、重複分派 511、撞名 4) | 01-02-01-merge | +| 2026-08-05 | 已廢棄 | run1 | claude-opus-5 | msgbatch_018TkYpdT3DsZqq2q94FQCUN | — | 0 | 0 | $0.00 | 拒收(temperature 已棄用) | 01-02-01-merge | +| 2026-08-05 | 已廢棄 | run1 | claude-opus-4-8 | msgbatch_018Wuux4adz5mWSvzJjfgLxb | — | 0 | 0 | $0.00 | 拒收(temperature 已棄用) | 01-02-01-merge | +| 2026-08-05 | 已廢棄 | run1 | claude-opus-4-6 | msgbatch_01Lmt2j1Txyof9CctUK7CbHA | 12 分 19 秒 | 46,454 | 54,864 | $0.80 | 已取代(圍欄違規;漏 190、發明 151、重複 11) | 01-02-01-merge | +| 2026-08-05 | 已廢棄 | run1 | claude-opus-5 | msgbatch_012SEfebTnjU5uWN6hhfnhhh | 8 分 45 秒 | 63,368 | 64,000 | $1.92 | 已取代(64k 截斷) | 01-02-01-merge | +| 2026-08-05 | 已廢棄 | run1 | claude-opus-5 | msgbatch_01Wi9xEoQKCy1nZK6myVNg77 | 11 分 34 秒 | 63,368 | 70,175 | $2.07 | 已取代(驗證不過:漏 59、發明 140、重複 3) | 01-02-01-merge | +| 2026-08-05 | 已廢棄 | run1 | claude-fable-5 | msgbatch_01M15hUs8P9FDTqWvAHdc1cA | 32 分 45 秒 | 63,368 | 107,721 | $3.01 | 現行歸檔(JSON 語法毀損,驗證不過) | 01-02-01-merge | +| 2026-08-05 | 已廢棄 | run1 | claude-fable-5 | msgbatch_012stRP28uuQDQwobm41HMLh | — | 0 | 0 | $0.00 | 拒收(thinking.type.enabled 不支援) | 01-02-01-merge | +| 2026-08-05 | 已廢棄 | run1 | claude-fable-5 | msgbatch_01KpS7AMx1zAHTcNujgGsouJ | 26 分 28 秒 | 63,368 | 128,000 | $3.52 | 現行歸檔(effort max:128k 全耗於推理,正文空白) | 01-02-01-merge | +| 2026-08-05 | 3a-code | run1 | claude-sonnet-4-6 | msgbatch_01L7VepTxSNz5vruvzzjuL2c | 6 分 36 秒 | 1,247,264 | 492,730 | $5.57 | 36 首輸出遭內容過濾攔阻,待修訂重跑 | 03-01-code | +| 2026-08-05 | 3a-code | 引述減量實驗(36 首)| claude-sonnet-4-6 | msgbatch_01Hskdhi2DkudYmgZhhgFts7 | 3 分 51 秒 | 56,458 | 11,074 | $0.17 | 實驗:每碼一行引述,36 首全數通過過濾;歸檔不入 repo | 03-01-code | +| 2026-08-05 | 3a-code | run1 | claude-sonnet-4-6 | msgbatch_01GG5Ez9KT1pPwtQaY4sW7tv | 4 分 35 秒 | 1,293,724 | 269,166 | $3.96 | 過濾零攔阻;song-168、song-590 因餘額用盡失敗,song-775 拒答 | 03-01-code | +| 2026-08-05 | 3a-code | 101 碼樹狀探測(148 首)| claude-sonnet-4-6 | msgbatch_017jo3E5gWVks9b39iWMTqz3 | 2 小時 11 分 | 385,270 | 79,690 | $0.87 | 實驗:k=100 葉碼+women-power;零違規碼; 歸檔不入 repo | 03-01-code | +| 2026-08-06 | 命名實驗(100 組)| — | claude-sonnet-4-6 | msgbatch_01XSi1YtWzdVyYUzYh7DQRWg | 3 分 5 秒 | 55,090 | 1,168 | $0.09 | 實驗:LLM 命名對照 medoid,未採用;歸檔不入 repo | | +| 2026-08-06 | 命名實驗(100 組)| — | claude-fable-5 | msgbatch_01Y8SJj1h1ZuSQRErhqkvgZE | 3 分 2 秒 | 76,211 | 2,049 | $0.43 | 實驗:同上,加禁用 themes;未採用;歸檔不入 repo | | +| 2026-08-06 | 3a-code | run1 | claude-sonnet-4-6 | msgbatch_01GS1opvurvsf62oknnQxhtx | 3 分 46 秒 | 1,625,458 | 362,759 | $5.16 | 現行(101 碼;883 首全數有效,零攔阻) | 03-01-code | +| 2026-08-06 | 3a-code | run2 | claude-sonnet-4-6 | msgbatch_01CxnwNLWzZbRpZK7UAdpb8i | 5 分 22 秒 | 1,625,458 | 364,098 | $5.17 | 現行(101 碼;883 首全數有效,零攔阻) | 03-01-code | +| 2026-08-06 | 已廢棄 | — | claude-sonnet-4-6 | msgbatch_019xcQXwrbwDGFc9nE5M8AjE | 4 分 0 秒 | 763,193 | 42,389 | $1.46 | 已取代(2 首遭內容過濾攔阻、13 首輸出夾帶散文;定義檔修訂後重跑) | 03-02-arbitration | +| 2026-08-06 | 已廢棄 | — | claude-sonnet-4-6 | msgbatch_01N7bDbXRSfAVUzzaj2thKeR | 4 分 20 秒 | 781,037 | 39,315 | $1.47 | 現行(644 首全數有效,零攔阻;保留 1,481/送裁 1,699) | 03-02-arbitration | +| 2026-08-06 | 3a-code | run3 | claude-sonnet-4-6 | msgbatch_01KnkCaGETnFJrPddrxZTYHA | 6 分 26 秒 | 1,625,458 | 363,840 | $5.17 | 現行(101 碼;883 首全數有效,零攔阻) | 03-code | +| 2026-08-14 | 4-group | run1 | claude-sonnet-4-6 | msgbatch_01UPNedog6feQzJ9WVfSAxBD | 1 分 1 秒 | 3,129 | 470 | $0.01 | 已取代(僅 3 群;改納 women-power 群後重跑) | 04-group | +| 2026-08-14 | 4-group | run1 | claude-sonnet-4-6 | msgbatch_01KntJgxdicStaMjNL12P3zi | 1 分 25 秒 | 4,170 | 558 | $0.01 | 已取代(改以 claude-fable-5 執行;vulnerable 輸出含詞彙表外碼 1 筆;歸檔另行私人備份,不入版本庫) | 04-group | +| 2026-08-14 | 4-group | run1 | claude-fable-5 | msgbatch_01Mr6goBb2Efa4YrqCprbP4U | 55 秒 | 5,553 | 2,049 | $0.08 | 現行(4 群;零違規碼;temperature 與 thinking 參數不適用於本模型,未送出) | 04-group | +| 2026-08-14 | 4-group | run2 | claude-fable-5 | msgbatch_01C17xW3YBefThTYZ83g7KkL | 1 分 21 秒 | 5,553 | 1,891 | $0.08 | 現行(4 群;零違規碼) | 04-group | +| 2026-08-14 | 4-group | run3 | claude-fable-5 | msgbatch_01DveEMYyjCAYe6wxpcCD87V | 2 分 9 秒 | 5,553 | 1,975 | $0.08 | 現行(4 群;零違規碼) | 04-group | +| 2026-08-15 | 5a-read | run1 | claude-fable-5 | msgbatch_018NJejke75o7kzKyjZeeKwi | 2 分 12 秒 | 189,607 | 181,299 | $5.48 | 現行(144/145 有效;song-444 平台錯誤,單筆補送) | 05-01-read | +| 2026-08-15 | 5a-read | run1-rescue-444 | claude-fable-5 | msgbatch_01DgygMm6iYn2qEnyqHkTMfa | 1 分 52 秒 | 1,852 | 1,557 | $0.05 | 現行(run1 之 song-444 單筆補送,成功) | 05-01-read | +| 2026-08-15 | 5a-read | run2 | claude-fable-5 | msgbatch_011txWpWDtdkNXNiPA74ZUfQ | 15 分 25 秒 | 191,459 | 185,630 | $5.60 | 現行(145/145 有效) | 05-01-read | +| 2026-08-15 | 5a-read | run3 | claude-fable-5 | msgbatch_01Unn7C7WCnuVoLraJRXksoG | 7 分 59 秒 | 191,459 | 190,433 | $5.72 | 現行(145/145 有效) | 05-01-read | +| 2026-08-15 | 5b-consolidate | run1 | claude-fable-5 | msgbatch_01WPyH4pCCiieHs4yU3xtHzN | 2 分 28 秒 | 326,287 | 242,785 | $7.70 | 現行(145/145 有效) | 05-02-consolidate | +| 2026-08-15 | 5c-synthesize | run1 | claude-fable-5 | msgbatch_01XbNQb1SFrUxhk2ZWF7epPA | 3 分 0 秒 | 103,888 | 9,982 | $0.77 | 現行(15 個樣態;研究者審定用草稿) | 05-03-synthesize | +| 2026-08-15 | 5c-synthesize | run2 | claude-fable-5 | msgbatch_01FKqq8U6m5HLLsx7KpQES26 | 3 分 4 秒 | 13,573 | 6,883 | $0.24 | 現行(男聲群 14 首;13 個樣態) | 05-03-synthesize | +| 2026-08-15 | 5c-synthesize | run3 | claude-fable-5 | msgbatch_017tfhiRTnaxqCp6YFyoivsu | 4 分 4 秒 | 60,727 | 8,519 | $0.52 | 現行(女聲群 98 首;14 個樣態) | 05-03-synthesize | +| 2026-08-15 | 5c-synthesize | run4 | claude-fable-5 | msgbatch_01SNjTLiNPEba4LW2tcUAcTJ | 4 分 3 秒 | 29,958 | 9,793 | $0.39 | 現行(混合群 30 首;16 個樣態) | 05-03-synthesize | +| 2026-08-15 | 5d-annotate | run1 | claude-fable-5 | msgbatch_01H9gXXhNbhZG6gzZtvMHxhh | 3 分 9 秒 | 815,492 | 300,901 | $11.60 | 現行(109/111 有效;song-177、song-199 遭 max_tokens 截斷,單筆補送) | 05-04-annotate | +| 2026-08-15 | 5d-annotate | run1-rescue-177-199 | claude-fable-5 | msgbatch_01YEdroZ51b8btPfG1aqPFCD | 3 分 5 秒 | 17,802 | 11,601 | $0.38 | 現行(run1 之 2 筆補送,max_tokens 提為 16000,成功) | 05-04-annotate | +| 2026-08-15 | 5d-annotate | — | claude-fable-5 | msgbatch_01G67STqZsHpnhedat2HRU85 | 3 分 0 秒 | 17,802 | 14,162 | $0.44 | 誤送(補送批次輪詢中斷後誤判死亡而重送;原批次自行完成並歸檔為現行,本批次取消不及、兩筆皆完成,結果棄用) | 05-04-annotate | +| 2026-08-15 | 5d-annotate | run2 | claude-fable-5 | msgbatch_01VVJpsfidNtF66GnHQdWnGR | 9 分 16 秒 | 815,492 | 306,582 | $11.74 | 現行(111/111 有效;max_tokens 16000,零截斷) | 05-04-annotate | +| 2026-08-15 | 5d-annotate | run3 | claude-fable-5 | msgbatch_01AsYvZd8rsTYVfUYLzWfeMK | 4 分 12 秒 | 815,492 | 298,512 | $11.54 | 現行(111/111 有效;max_tokens 16000,零截斷) | 05-04-annotate | 累計支出:$125.65。 diff --git a/prompts/01-tag.md b/prompts/1-tag.md similarity index 100% rename from prompts/01-tag.md rename to prompts/1-tag.md diff --git a/prompts/03-code.md b/prompts/3a-code.md similarity index 100% rename from prompts/03-code.md rename to prompts/3a-code.md diff --git a/prompts/04-group.md b/prompts/4-group.md similarity index 100% rename from prompts/04-group.md rename to prompts/4-group.md diff --git a/prompts/05-01-read.md b/prompts/5a-read.md similarity index 100% rename from prompts/05-01-read.md rename to prompts/5a-read.md diff --git a/prompts/05-02-consolidate.md b/prompts/5b-consolidate.md similarity index 100% rename from prompts/05-02-consolidate.md rename to prompts/5b-consolidate.md diff --git a/prompts/05-03-synthesize.md b/prompts/5c-synthesize.md similarity index 100% rename from prompts/05-03-synthesize.md rename to prompts/5c-synthesize.md diff --git a/prompts/05-04-annotate.md b/prompts/5d-annotate.md similarity index 100% rename from prompts/05-04-annotate.md rename to prompts/5d-annotate.md diff --git a/runs/01-tag/run1/meta.json b/runs/1-tag/run1/meta.json similarity index 100% rename from runs/01-tag/run1/meta.json rename to runs/1-tag/run1/meta.json diff --git a/runs/01-tag/run1/output.jsonl b/runs/1-tag/run1/output.jsonl similarity index 100% rename from runs/01-tag/run1/output.jsonl rename to runs/1-tag/run1/output.jsonl diff --git a/runs/01-tag/run1/prompt.md b/runs/1-tag/run1/prompt.md similarity index 100% rename from runs/01-tag/run1/prompt.md rename to runs/1-tag/run1/prompt.md diff --git a/runs/01-tag/run2/meta.json b/runs/1-tag/run2/meta.json similarity index 100% rename from runs/01-tag/run2/meta.json rename to runs/1-tag/run2/meta.json diff --git a/runs/01-tag/run2/output.jsonl b/runs/1-tag/run2/output.jsonl similarity index 100% rename from runs/01-tag/run2/output.jsonl rename to runs/1-tag/run2/output.jsonl diff --git a/runs/01-tag/run2/prompt.md b/runs/1-tag/run2/prompt.md similarity index 100% rename from runs/01-tag/run2/prompt.md rename to runs/1-tag/run2/prompt.md diff --git a/runs/02-cluster/groups.csv b/runs/2-cluster/groups.csv similarity index 100% rename from runs/02-cluster/groups.csv rename to runs/2-cluster/groups.csv diff --git a/runs/02-cluster/keywords-to-merge.json b/runs/2-cluster/keywords-to-merge.json similarity index 100% rename from runs/02-cluster/keywords-to-merge.json rename to runs/2-cluster/keywords-to-merge.json diff --git a/runs/02-cluster/meta.json b/runs/2-cluster/meta.json similarity index 100% rename from runs/02-cluster/meta.json rename to runs/2-cluster/meta.json diff --git a/runs/02-cluster/result-keywords.txt b/runs/2-cluster/result-keywords.txt similarity index 100% rename from runs/02-cluster/result-keywords.txt rename to runs/2-cluster/result-keywords.txt diff --git a/runs/02-cluster/source-keywords.txt b/runs/2-cluster/source-keywords.txt similarity index 100% rename from runs/02-cluster/source-keywords.txt rename to runs/2-cluster/source-keywords.txt diff --git a/runs/03-code/run1/meta.json b/runs/3a-code/run1/meta.json similarity index 100% rename from runs/03-code/run1/meta.json rename to runs/3a-code/run1/meta.json diff --git a/runs/03-code/run1/output.jsonl b/runs/3a-code/run1/output.jsonl similarity index 100% rename from runs/03-code/run1/output.jsonl rename to runs/3a-code/run1/output.jsonl diff --git a/runs/03-code/run1/prompt.md b/runs/3a-code/run1/prompt.md similarity index 100% rename from runs/03-code/run1/prompt.md rename to runs/3a-code/run1/prompt.md diff --git a/runs/03-code/run2/meta.json b/runs/3a-code/run2/meta.json similarity index 100% rename from runs/03-code/run2/meta.json rename to runs/3a-code/run2/meta.json diff --git a/runs/03-code/run2/output.jsonl b/runs/3a-code/run2/output.jsonl similarity index 100% rename from runs/03-code/run2/output.jsonl rename to runs/3a-code/run2/output.jsonl diff --git a/runs/03-code/run2/prompt.md b/runs/3a-code/run2/prompt.md similarity index 100% rename from runs/03-code/run2/prompt.md rename to runs/3a-code/run2/prompt.md diff --git a/runs/03-code/run3/meta.json b/runs/3a-code/run3/meta.json similarity index 100% rename from runs/03-code/run3/meta.json rename to runs/3a-code/run3/meta.json diff --git a/runs/03-code/run3/output.jsonl b/runs/3a-code/run3/output.jsonl similarity index 100% rename from runs/03-code/run3/output.jsonl rename to runs/3a-code/run3/output.jsonl diff --git a/runs/03-code/run3/prompt.md b/runs/3a-code/run3/prompt.md similarity index 100% rename from runs/03-code/run3/prompt.md rename to runs/3a-code/run3/prompt.md diff --git a/runs/04-group/run1/meta.json b/runs/4-group/run1/meta.json similarity index 100% rename from runs/04-group/run1/meta.json rename to runs/4-group/run1/meta.json diff --git a/runs/04-group/run1/output.jsonl b/runs/4-group/run1/output.jsonl similarity index 100% rename from runs/04-group/run1/output.jsonl rename to runs/4-group/run1/output.jsonl diff --git a/runs/04-group/run1/prompt.md b/runs/4-group/run1/prompt.md similarity index 100% rename from runs/04-group/run1/prompt.md rename to runs/4-group/run1/prompt.md diff --git a/runs/04-group/run2/meta.json b/runs/4-group/run2/meta.json similarity index 100% rename from runs/04-group/run2/meta.json rename to runs/4-group/run2/meta.json diff --git a/runs/04-group/run2/output.jsonl b/runs/4-group/run2/output.jsonl similarity index 100% rename from runs/04-group/run2/output.jsonl rename to runs/4-group/run2/output.jsonl diff --git a/runs/04-group/run2/prompt.md b/runs/4-group/run2/prompt.md similarity index 100% rename from runs/04-group/run2/prompt.md rename to runs/4-group/run2/prompt.md diff --git a/runs/04-group/run3/meta.json b/runs/4-group/run3/meta.json similarity index 100% rename from runs/04-group/run3/meta.json rename to runs/4-group/run3/meta.json diff --git a/runs/04-group/run3/output.jsonl b/runs/4-group/run3/output.jsonl similarity index 100% rename from runs/04-group/run3/output.jsonl rename to runs/4-group/run3/output.jsonl diff --git a/runs/04-group/run3/prompt.md b/runs/4-group/run3/prompt.md similarity index 100% rename from runs/04-group/run3/prompt.md rename to runs/4-group/run3/prompt.md diff --git a/runs/05-01-read/run1-rescue-444/meta.json b/runs/5a-read/run1-rescue-444/meta.json similarity index 100% rename from runs/05-01-read/run1-rescue-444/meta.json rename to runs/5a-read/run1-rescue-444/meta.json diff --git a/runs/05-01-read/run1-rescue-444/output.jsonl b/runs/5a-read/run1-rescue-444/output.jsonl similarity index 100% rename from runs/05-01-read/run1-rescue-444/output.jsonl rename to runs/5a-read/run1-rescue-444/output.jsonl diff --git a/runs/05-01-read/run1-rescue-444/prompt.md b/runs/5a-read/run1-rescue-444/prompt.md similarity index 100% rename from runs/05-01-read/run1-rescue-444/prompt.md rename to runs/5a-read/run1-rescue-444/prompt.md diff --git a/runs/05-01-read/run1/meta.json b/runs/5a-read/run1/meta.json similarity index 100% rename from runs/05-01-read/run1/meta.json rename to runs/5a-read/run1/meta.json diff --git a/runs/05-01-read/run1/output.jsonl b/runs/5a-read/run1/output.jsonl similarity index 100% rename from runs/05-01-read/run1/output.jsonl rename to runs/5a-read/run1/output.jsonl diff --git a/runs/05-01-read/run1/prompt.md b/runs/5a-read/run1/prompt.md similarity index 100% rename from runs/05-01-read/run1/prompt.md rename to runs/5a-read/run1/prompt.md diff --git a/runs/05-01-read/run2/meta.json b/runs/5a-read/run2/meta.json similarity index 100% rename from runs/05-01-read/run2/meta.json rename to runs/5a-read/run2/meta.json diff --git a/runs/05-01-read/run2/output.jsonl b/runs/5a-read/run2/output.jsonl similarity index 100% rename from runs/05-01-read/run2/output.jsonl rename to runs/5a-read/run2/output.jsonl diff --git a/runs/05-01-read/run2/prompt.md b/runs/5a-read/run2/prompt.md similarity index 100% rename from runs/05-01-read/run2/prompt.md rename to runs/5a-read/run2/prompt.md diff --git a/runs/05-01-read/run3/meta.json b/runs/5a-read/run3/meta.json similarity index 100% rename from runs/05-01-read/run3/meta.json rename to runs/5a-read/run3/meta.json diff --git a/runs/05-01-read/run3/output.jsonl b/runs/5a-read/run3/output.jsonl similarity index 100% rename from runs/05-01-read/run3/output.jsonl rename to runs/5a-read/run3/output.jsonl diff --git a/runs/05-01-read/run3/prompt.md b/runs/5a-read/run3/prompt.md similarity index 100% rename from runs/05-01-read/run3/prompt.md rename to runs/5a-read/run3/prompt.md diff --git a/runs/05-02-consolidate/run1/meta.json b/runs/5b-consolidate/run1/meta.json similarity index 100% rename from runs/05-02-consolidate/run1/meta.json rename to runs/5b-consolidate/run1/meta.json diff --git a/runs/05-02-consolidate/run1/output.jsonl b/runs/5b-consolidate/run1/output.jsonl similarity index 100% rename from runs/05-02-consolidate/run1/output.jsonl rename to runs/5b-consolidate/run1/output.jsonl diff --git a/runs/05-02-consolidate/run1/prompt.md b/runs/5b-consolidate/run1/prompt.md similarity index 100% rename from runs/05-02-consolidate/run1/prompt.md rename to runs/5b-consolidate/run1/prompt.md diff --git a/runs/05-03-synthesize/run1/meta.json b/runs/5c-synthesize/run1/meta.json similarity index 100% rename from runs/05-03-synthesize/run1/meta.json rename to runs/5c-synthesize/run1/meta.json diff --git a/runs/05-03-synthesize/run1/output.jsonl b/runs/5c-synthesize/run1/output.jsonl similarity index 100% rename from runs/05-03-synthesize/run1/output.jsonl rename to runs/5c-synthesize/run1/output.jsonl diff --git a/runs/05-03-synthesize/run1/prompt.md b/runs/5c-synthesize/run1/prompt.md similarity index 100% rename from runs/05-03-synthesize/run1/prompt.md rename to runs/5c-synthesize/run1/prompt.md diff --git a/runs/05-03-synthesize/run2/meta.json b/runs/5c-synthesize/run2/meta.json similarity index 100% rename from runs/05-03-synthesize/run2/meta.json rename to runs/5c-synthesize/run2/meta.json diff --git a/runs/05-03-synthesize/run2/output.jsonl b/runs/5c-synthesize/run2/output.jsonl similarity index 100% rename from runs/05-03-synthesize/run2/output.jsonl rename to runs/5c-synthesize/run2/output.jsonl diff --git a/runs/05-03-synthesize/run2/prompt.md b/runs/5c-synthesize/run2/prompt.md similarity index 100% rename from runs/05-03-synthesize/run2/prompt.md rename to runs/5c-synthesize/run2/prompt.md diff --git a/runs/05-03-synthesize/run3/meta.json b/runs/5c-synthesize/run3/meta.json similarity index 100% rename from runs/05-03-synthesize/run3/meta.json rename to runs/5c-synthesize/run3/meta.json diff --git a/runs/05-03-synthesize/run3/output.jsonl b/runs/5c-synthesize/run3/output.jsonl similarity index 100% rename from runs/05-03-synthesize/run3/output.jsonl rename to runs/5c-synthesize/run3/output.jsonl diff --git a/runs/05-03-synthesize/run3/prompt.md b/runs/5c-synthesize/run3/prompt.md similarity index 100% rename from runs/05-03-synthesize/run3/prompt.md rename to runs/5c-synthesize/run3/prompt.md diff --git a/runs/05-03-synthesize/run4/meta.json b/runs/5c-synthesize/run4/meta.json similarity index 100% rename from runs/05-03-synthesize/run4/meta.json rename to runs/5c-synthesize/run4/meta.json diff --git a/runs/05-03-synthesize/run4/output.jsonl b/runs/5c-synthesize/run4/output.jsonl similarity index 100% rename from runs/05-03-synthesize/run4/output.jsonl rename to runs/5c-synthesize/run4/output.jsonl diff --git a/runs/05-03-synthesize/run4/prompt.md b/runs/5c-synthesize/run4/prompt.md similarity index 100% rename from runs/05-03-synthesize/run4/prompt.md rename to runs/5c-synthesize/run4/prompt.md diff --git a/runs/05-04-annotate/run1-rescue-177-199/meta.json b/runs/5d-annotate/run1-rescue-177-199/meta.json similarity index 100% rename from runs/05-04-annotate/run1-rescue-177-199/meta.json rename to runs/5d-annotate/run1-rescue-177-199/meta.json diff --git a/runs/05-04-annotate/run1-rescue-177-199/output.jsonl b/runs/5d-annotate/run1-rescue-177-199/output.jsonl similarity index 100% rename from runs/05-04-annotate/run1-rescue-177-199/output.jsonl rename to runs/5d-annotate/run1-rescue-177-199/output.jsonl diff --git a/runs/05-04-annotate/run1-rescue-177-199/prompt.md b/runs/5d-annotate/run1-rescue-177-199/prompt.md similarity index 100% rename from runs/05-04-annotate/run1-rescue-177-199/prompt.md rename to runs/5d-annotate/run1-rescue-177-199/prompt.md diff --git a/runs/05-04-annotate/run1/meta.json b/runs/5d-annotate/run1/meta.json similarity index 100% rename from runs/05-04-annotate/run1/meta.json rename to runs/5d-annotate/run1/meta.json diff --git a/runs/05-04-annotate/run1/output.jsonl b/runs/5d-annotate/run1/output.jsonl similarity index 100% rename from runs/05-04-annotate/run1/output.jsonl rename to runs/5d-annotate/run1/output.jsonl diff --git a/runs/05-04-annotate/run1/prompt.md b/runs/5d-annotate/run1/prompt.md similarity index 100% rename from runs/05-04-annotate/run1/prompt.md rename to runs/5d-annotate/run1/prompt.md diff --git a/runs/05-04-annotate/run2/meta.json b/runs/5d-annotate/run2/meta.json similarity index 100% rename from runs/05-04-annotate/run2/meta.json rename to runs/5d-annotate/run2/meta.json diff --git a/runs/05-04-annotate/run2/output.jsonl b/runs/5d-annotate/run2/output.jsonl similarity index 100% rename from runs/05-04-annotate/run2/output.jsonl rename to runs/5d-annotate/run2/output.jsonl diff --git a/runs/05-04-annotate/run2/prompt.md b/runs/5d-annotate/run2/prompt.md similarity index 100% rename from runs/05-04-annotate/run2/prompt.md rename to runs/5d-annotate/run2/prompt.md diff --git a/runs/05-04-annotate/run3/meta.json b/runs/5d-annotate/run3/meta.json similarity index 100% rename from runs/05-04-annotate/run3/meta.json rename to runs/5d-annotate/run3/meta.json diff --git a/runs/05-04-annotate/run3/output.jsonl b/runs/5d-annotate/run3/output.jsonl similarity index 100% rename from runs/05-04-annotate/run3/output.jsonl rename to runs/5d-annotate/run3/output.jsonl diff --git a/runs/05-04-annotate/run3/prompt.md b/runs/5d-annotate/run3/prompt.md similarity index 100% rename from runs/05-04-annotate/run3/prompt.md rename to runs/5d-annotate/run3/prompt.md