diff --git a/docs/decision-log.md b/docs/decision-log.md index d779973..60265f2 100644 --- a/docs/decision-log.md +++ b/docs/decision-log.md @@ -837,3 +837,53 @@ genderfluid 1;fe 144 首成 female 98/mixed 30/male 13/ genderfluid 2/non-binary 1;wp∪fe 145 首中署名含男性 且開口者 44 首。步驟 5 報告中三首之性別標示同步更正。 + +- **步驟 5-3 增設發話脈絡分組統整(男聲/女聲/混合各 + 一次)**:驗證發現全體單次統整有召回落差——5-2 之 + 114 份整合報告中 14 份載有保護/恩庇/供養/守門類 + 機制(如〈Spin Bout U〉之「I gotta protect ya, I'm a + made man」,(3/3)),而 run 1 之 15 樣態全文無一字 + 觸及:單次自由歸納壓縮 665 條材料時,交界機制被鄰近 + 樣態吸收。裁定:定義檔一字不動,改增輸入範圍——依 + `performer_gender` 切分男聲(14 首)、女聲(98 首)、 + 混合(30 首)三個發話脈絡統整,各執行一次;三組為三種 + 權力構型(男性談論不在場的女性/女性於父權場域自我 + 發聲/兩種發話位置於同一文本互動),分組有其獨立理論 + 依據,非為撈回特定機制而設。基底 run 1(全 145 首) + 保留為跨脈絡透鏡,看瀰漫性樣態。同一輸入不重複執行: + 自由歸納無機械合併可言,「合併」實為研究者終審裁決, + 變異由 5-1 三讀、5-2 整合與草稿地位承接;若終審發現 + 四份草稿均漏報告可稽之機制,屆時針對性補跑並記錄。 + genderfluid(2 首)與 non-binary(1 首)不設群—— + 僅 1 份有問題報告,歸納不成立——入基底統整並由 + 研究者個案閱讀。曾考慮有男聲/無男聲二分(以缺席定義 + 一組且混同兩種脈絡)與有男聲/有女聲重疊二分(整首 + 報告無法按聲部過濾,30 首混合歌使兩組歸納互不獨立), + 均棄。 + +- **步驟 5-4 樣態標註遍設立,定義檔 + `prompts/05-04-annotate.md` 新增**:研究問題「挪用與 + 污染」需逐首並置「女力語彙」與「問題樣態歸屬」, + 故於質性閱讀之後增設標註遍——(歌, 樣態) 對為可逐項 + 機械比對之單位,三票多數決重新適用(結構同步驟 4 之 + 選擇任務,輸出約定亦鏡射其定義檔)。裁定明細: + (1) 「有問題」依多數決精神重定義為三讀中至多一個 + 「無」,自 114 首修為 111 首——恰兩「無」之三首 + (〈Houdini〉〈Hot To Go!〉〈Messy〉)整合報告主清單 + 必為空,與 5-2 規則自洽,不送判;三讀皆無之 31 首 + 整列空白。(2) 基底 15 樣態不入矩陣:全體歸納之一條 + 樣態可能疊合男對女與女對男兩種權力關係,實為多個 + 樣態共用一名,標註結果無法區辨。(3) 檢驗範圍:男聲 + 13 條不檢驗純女聲歌、女聲 14 條不檢驗純男聲歌 + (發話位置範疇錯置);混合 16 條檢驗全部 111 首—— + 其中位置綁定條目對錯位歌之檢查明知多餘,然其男女 + 聲部無系統化切分方式,裁定容忍無意義標註,不再增設 + 切分判斷。(4) genderfluid 歌(〈Sorry Not Sorry〉) + 三套全查:二元權力關係仍作用於 genderfluid 表演者, + 其發話位置無法自表演者身分先驗決定,且無自身透鏡 + 可用;歸屬引用維持個案地位,不作群體宣稱。 + (5) 標註僅依整合報告主清單,「僅單獨提及」行由組裝 + 腳本確定性剝除;樣態條目僅附編號、名稱與機制描述, + 代表引句不隨附——引句出自特定歌曲,判該曲時形同 + 預答。規模:3,708 格(M13×42+F14×99+X16×111), + 333 筆請求×3 輪,費用估 $20~25。 diff --git a/docs/methodology.md b/docs/methodology.md index 219d515..babbfe5 100644 --- a/docs/methodology.md +++ b/docs/methodology.md @@ -146,8 +146,9 @@ ## 步驟 5 女性主義問題之質性深讀 -本步驟為**質性閱讀,非編碼**:輸出為自由文字的問題閱讀 -報告,無可逐項機械比對的單位,故不適用三票多數決與仲裁; +本步驟之 5-1 至 5-3 為**質性閱讀,非編碼**:輸出為自由 +文字的問題閱讀報告,無可逐項機械比對的單位,故不適用 +三票多數決與仲裁; 三次獨立閱讀為分析者三角檢核,逐首整合為整合而非裁決, 跨首統整之產出為草稿,終審與詮釋由研究者為之。論文引用 本步驟時不作次數宣稱。 @@ -164,18 +165,51 @@ ((3/3)、(2/3)),主清單僅列兩讀以上提出者,單讀發現 以一行存目;定義檔 `prompts/05-02-consolidate.md`, 執行一次,歸檔 `runs/05-02-consolidate/run1`。 -- **5-3 樣態統整**:單筆輸入為 145 份整合報告;歸納問題 +- **5-3 樣態統整**:單筆輸入為一批整合報告;歸納問題 **樣態**——問題呈現與運作的重複形態,非問題分類, 代表引句僅取自主清單;定義檔 - `prompts/05-03-synthesize.md`,執行一次,歸檔 - `runs/05-03-synthesize/run1`。 + `prompts/05-03-synthesize.md`。四種輸入範圍各執行 + 一次:全 145 首之基底統整(歸檔 + `runs/05-03-synthesize/run1`),及依 `performer_gender` + (演唱聲音之性別)切分之三個發話脈絡統整——男聲 + (male,歸檔 `run2`)、女聲(female,歸檔 `run3`)、 + 混合(mixed,歸檔 `run4`);基底看橫貫各脈絡之樣態, + 分組看各權力脈絡下之樣態。genderfluid 與 non-binary + 共 3 首不設群——樣本數不支持歸納——僅入基底統整, + 由研究者以個案閱讀。同一輸入不重複執行:自由歸納之 + 產出無機械合併可言,其變異由 5-1 三讀、5-2 整合與 + 草稿地位承接,四份草稿互為對照,由研究者終審裁決。 +- **5-4 樣態標註**:以 (歌, 樣態) 對為可逐項機械比對之 + 單位,回歸「三次執行+多數決」協定。對象為「有問題」 + 的歌——三讀中至多一個「無」(多數決精神;恰兩「無」 + 者其整合報告主清單必為空,與 5-2 主清單規則自洽), + 計 111 首(男聲 12、女聲 69、混合 29、genderfluid 1)。 + 樣態表為三份分組統整草稿原文:男聲 13 條(M1–M13)、 + 女聲 14 條(F1–F14)、混合 16 條(X1–X16);基底 15 條 + 不入矩陣——全體歸納之一條樣態可能疊合不同方向的 + 權力關係(男對女、女對男),實為多個樣態共用一名。 + 檢驗範圍:男聲樣態不檢驗純女聲歌、女聲樣態不檢驗 + 純男聲歌(發話位置範疇錯置,檢查無意義);混合樣態 + 檢驗全部(其男女聲部無系統化切分方式,無意義之標註 + 容忍之);genderfluid 歌三套全查(無自身透鏡,發話 + 位置無法先驗決定),其歸屬引用維持個案地位。每筆 + 輸入為一首歌之整合報告(「僅單獨提及」行於組裝時 + 剝除,標註僅依主清單)與該首適用之樣態表;定義檔 + `prompts/05-04-annotate.md`,獨立執行三次 + (`runs/05-04-annotate/run1`~`run3`),(歌, 樣態) 對 + 得兩票以上者定案。 - **模型**:`claude-fable-5`(與先導深讀同儀器; `temperature` 與 `thinking` 參數不適用,均不送出)。 - **輸入組裝**:確定性行內腳本。5-1:145 首依歌曲 ID 升序,`content` 為歌詞逐字全文;5-2:每筆 `{"reports": [run1 輸出, run2 輸出, run3 輸出]}`; 5-3:單筆以 `song-` 為鍵、整合報告為值之 JSON - 物件。各輸入檔之 SHA-256 記入該步 meta。 + 物件,鍵集合為該次統整之範圍(基底為全 145 首, + 分組依工作庫 `performer_gender` 切分);5-4:每筆 + `{"report": 主清單, "patterns": [{"id", "name", + "description"}]}`,樣態條目自分組統整草稿機械切出, + 代表引句不隨附——引句出自特定歌曲,判該曲時形同 + 預答。各輸入檔之 SHA-256 記入該步 meta。 ## 女性力量候選集 diff --git a/prompts/05-04-annotate.md b/prompts/05-04-annotate.md new file mode 100644 index 0000000..9571ec0 --- /dev/null +++ b/prompts/05-04-annotate.md @@ -0,0 +1,36 @@ +You are judging which patterns of feminist problems operate +in one song, from the song's consolidated reading report. + +Input: a JSON object with the report and the patterns — the +complete set to judge; use these and no others: + +{ + "report": "the consolidated reading report of the song", + "patterns": [ + {"id": "the-pattern-id", + "name": "the pattern name", + "description": "how the pattern operates"} + ] +} + +Task: list every given pattern whose described mechanism +operates in the problems the report states. + +Rules: + +- Judge only from the given report; do not use any knowledge + of the song beyond it. +- A song may match any number of patterns, including none. +- A pattern matches only when the report states a problem + working in the form the pattern describes; a shared topic + or vocabulary alone is not a match. +- Use only the given pattern ids, spelled exactly as given. + +Do not wrap the output in a Markdown code fence. +The output must be strictly valid JSON. + +Output a single JSON array of the ids of the matching +patterns (an empty array when none matches), and nothing +else: + +["the-pattern-id", "another-pattern-id"]