Skip to content

feat: biblical-correspondence-dictionary Vault 初期セットアップ - #16

Draft
codowave wants to merge 19 commits into
mainfrom
claude/biblical-correspondence-vault-MfDg5
Draft

feat: biblical-correspondence-dictionary Vault 初期セットアップ#16
codowave wants to merge 19 commits into
mainfrom
claude/biblical-correspondence-vault-MfDg5

Conversation

@codowave

Copy link
Copy Markdown
Owner

概要

Obsidian 用 LLM Wiki 型 Vault(biblical-correspondence-dictionary)の初期構造を作成しました。

  • フォルダ構造(raw/ / wiki/ / schema/ / templates/
  • スキーマ 4 ファイル(adoption-gate・ingest-rules・lint-rules・Parallax スタブ)
  • テンプレート 3 種(candidates / provisional / confirmed)
  • README.md(目的・昇格フロー・first-run 自己点検チェックリスト)

主な設計ポイント

  • AI が生成した接続は wiki/candidates/ のみwiki/verified/provisional/ 昇格には AI 外部直接確認が必須。
  • 比喩の美しさ・複数AI同意・AI確信度は昇格根拠にしないことを schema/adoption-gate.md に明文化。
  • Lint は構造のみ監査(意味判定は人間の裁定)。C-01〜C-04 / P-01〜P-03 のルールを schema/lint-rules.md に定義。
  • raw/ai-dialogues/ は候補生成の種には使えるが verified 昇格の確認根拠には使えないことを schema/ingest-rules.md に明記。

テスト計画

  • Obsidian でこのリポジトリのルートを Vault として開き、フォルダ構造が正しく表示されることを確認
  • templates/candidates-template.md から候補ファイルを作成し、wiki/candidates/ に配置できることを確認
  • schema/adoption-gate.md の昇格条件を読み、candidates → provisional → confirmed の門が明確に分かれていることを確認

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2


Generated by Claude Code

Obsidian 用 LLM Wiki 型 Vault を構築。
- README.md(目的・フォルダ構造・昇格フロー・接続理由類型・first-run 自己点検)
- schema/adoption-gate.md(candidates/provisional/confirmed の昇格条件と採択禁止理由)
- schema/ingest-rules.md(raw/ フォルダ別取り込みルール・ai-dialogues の制限明記)
- schema/lint-rules.md(構造監査ルール C-01〜C-04 / P-01〜P-03)
- schema/Parallax.md(視差スキーマ スタブ)
- templates/candidates-template.md
- templates/provisional-template.md(確認来歴欄必須)
- templates/confirmed-template.md(再検証ログ・ダウングレード記録付き)
- raw/ wiki/ の空ディレクトリを .gitkeep で管理

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request replaces the TransformerLens repository with a new Obsidian Vault structure for a Biblical Correspondence Dictionary, including ingestion rules, lint rules, adoption gates, and templates. The reviewer feedback is highly constructive, suggesting a transition from section-level to chapter-level scripture files to prevent Obsidian performance degradation, aligning the README and lint rules accordingly, correcting the default status in the provisional template, and removing duplicate metadata fields in templates to avoid double-management of data.

Comment thread schema/ingest-rules.md Outdated
Comment on lines +18 to +20
- 聖書本文を章・節ごとに配置する。
- ファイル名規則: `{書名略語}/{章番号3桁}-{節番号3桁}.md`
例: `genesis/001-001.md`

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

聖書本文を節単位(例:genesis/001-001.md)でファイル分割すると、聖書全体で3万ファイル以上となり、Obsidianのインデックス作成やグラフビュー、検索などのパフォーマンスが著しく低下する懸念があります。一般的には章単位(例:genesis/001.md)でファイルを管理し、節への参照はObsidianのヘッダーリンク([[001#1]])やブロックリンクを活用する設計が推奨されます。

Suggested change
- 聖書本文を章・節ごとに配置する
- ファイル名規則: `{書名略語}/{章番号3桁}-{節番号3桁}.md`
例: `genesis/001-001.md`
- 聖書本文を章ごとに配置する(節単位のファイル分割はファイル数が膨大になりObsidianのパフォーマンス低下を招くため、章単位を推奨)
- ファイル名規則: `{書名略語}/{章番号3桁}.md`
例: `genesis/001.md`(節への参照はObsidianのヘッダーリンクやブロックリンク `[[001#1節]]` 等を使用する)

Comment thread README.md Outdated
functions to edit, remove or replace these activations as the model runs.
```
raw/ # 未整理・一次資料
scripture/ # 聖書本文(章・節ごとのファイル)

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

schema/ingest-rules.md での聖書本文の管理単位(章単位への変更推奨)に合わせて、フォルダ構造の説明も整合性を保つように修正します。

Suggested change
scripture/ # 聖書本文(章・節ごとのファイル
scripture/ # 聖書本文(章ごとのファイル

Comment thread schema/lint-rules.md Outdated
### C-04 🟡 要確認:ラベルと raw 参照パスの不整合
**条件**: 接続理由のラベルが示す出典と、実際に参照されている raw パスが一致していない。
**検出パターン例**:
- 「本文文脈由来」なのに `raw/swedenborg/` のみを参照している → 警告

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

「本文文脈由来」の不整合チェックにおいて、raw/swedenborg/(解釈者著作)のみを参照しているケースを警告するのも良いですが、他のルール(原語由来、現場経験由来)の対称性を考えると、「raw/scripture/(聖書本文)への参照がない」ことを直接警告するルールにする方が、直感的かつ一貫性があります。

Suggested change
- 「本文文脈由来」なのに `raw/swedenborg/` のみを参照している → 警告
- 「本文文脈由来」なのに `raw/scripture/` への参照がない → 警告

Comment thread templates/provisional-template.md Outdated
created: YYYY-MM-DD
promoted: YYYY-MM-DD
connection-type: []
fact-status: 未検証

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

provisional ステージは「AI外部直接確認を1件以上通過した接続」と定義されているため、フロントマターの fact-status未検証 のままであることは定義と矛盾します。暫定確認済み などの適切なステータスに初期値を変更することを推奨します。

Suggested change
fact-status: 未検証
fact-status: 暫定確認済み

Comment thread templates/candidates-template.md Outdated
Comment on lines +57 to +58
- **区分**: (事実 / 仮説 / 比喩 / 未検証 のいずれか)
- **理由**:

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

フロントマター(YAML)に fact-status メタデータが存在する一方で、本文中にも - **区分**: 欄が存在するため、情報の二重管理による不整合が発生しやすくなります。ObsidianのDataviewプラグイン等でのクエリはフロントマターを参照するため、本文側からは - **区分**: を削除し、- **理由**: のみにしてフロントマターの値を補足する形に整理することを推奨します。

Suggested change
- **区分**: (事実 / 仮説 / 比喩 / 未検証 のいずれか)
- **理由**:
- **理由**: (フロントマターの `fact-status` に指定した区分の選択理由を記述)

Comment thread templates/provisional-template.md Outdated
Comment on lines +52 to +53
- **区分**:
- **理由**:

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

フロントマターの fact-status と本文中の - **区分**: の二重管理を防ぐため、本文側は - **理由**: のみに整理することを推奨します。

Suggested change
- **区分**:
- **理由**:
- **理由**: (フロントマターの `fact-status` に指定した区分の選択理由を記述)

Comment thread templates/confirmed-template.md Outdated
Comment on lines +53 to +54
- **区分**:
- **理由**:

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

フロントマターの fact-status と本文中の - **区分**: の二重管理を防ぐため、本文側は - **理由**: のみに整理することを推奨します。

Suggested change
- **区分**:
- **理由**:
- **理由**: (フロントマターの `fact-status` に指定した区分の選択理由を記述)

claude added 18 commits May 30, 2026 16:58
- raw/scripture/ を節単位→章単位に変更(Obsidianパフォーマンス対策)
- README.md のフォルダ説明を ingest-rules に整合
- lint-rules C-04: 「本文文脈由来」の検出を「raw/scripture/参照なし」に修正
- provisional テンプレの fact-status を「未検証」→「暫定確認済み」に修正
- candidates/provisional/confirmed テンプレの「区分」欄を削除し
  frontmatter fact-status との二重管理を解消(理由欄のみ残す)

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
frontmatter:
- 全テンプレートに claim-type を追加(fact/hypothesis/metaphor/
  interpretation/application/mixed)
- connection-source を frontmatter 配列フィールドとして追加(lint 検査用)
- fact-status を採択ステージ値に統一(candidate/provisional/confirmed)

テンプレート本文:
- 「事実/仮説/比喩/未検証の区分」セクションを「主張の種類(claim-type)」に
  改名し、claim-type の有効値コメントを追加
- 「なぜこの接続を生成したか」にfrontmatter の connection-source との
  同期指示コメントを追加

lint-rules.md:
- C-05: 本文文脈由来と解釈者由来の混在検出
- M-01: claim-type=fact なのに検証不能類型のみ → 要注意
- M-02: claim-type=interpretation なのに解釈根拠なし → 要確認
- M-03: claim-type=application なのに現場根拠なし → 要確認
- R-01: raw/scripture/ の有効参照形式(章ファイル+ヘッダーリンク)定義

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
V-01: connection-source に interpretation/hypothesis 等の
claim-type 値が入った場合を要注意として検出。
典型誤記パターン(connection-source: interpretation)を例示。

V-02: connection-source がスカラー記述の場合を要注意として検出。
配列 [] 形式が必須であることを明記。

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
fact-status(採択段階)/ claim-type(主張型)/ connection-source(発生源)
の分離原則を明文化し、各ステージの代表的frontmatter例を記録。

辞典全体の一貫性を保つための設計上の核心として残す。

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
lint-rules.md:
- M-02(interpretation主張→解釈根拠必須)を削除
- M-03(application主張→現場根拠必須)を削除
- M-01 を疎な禁止リストに差し替え:
  独立検証不能な5発生源(解釈者由来/AI対話由来/複数AI一致/
  比喩類似/語感形状)のみで fact 主張した場合のみ警告。
  他の組み合わせはすべて許可。

adoption-gate.md:
- 典型パターンを直交性が見える4例に更新:
  解釈者由来×hypothesis / 原語由来×hypothesis /
  本文文脈由来×metaphor / 原語由来×fact
- 「発生源は主張型を一意に決定しない」を明文化

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
lint-rules.md:
- M-01 を 🔴禁止 → 🟡要確認 に変更
- 検出条件を「補助資料源のみ」→「補助資料源を含む」に変更
  一次資料と混在していても fact + 補助資料源は人間確認対象になる
- ルール説明を「禁止リスト」から「要確認フラグ」に書き換え

provisional-template.md / confirmed-template.md:
- 確認来歴テーブルに「確認の対象は何か」行を追加
  (内容そのもの / 仮説としての位置づけ / 解釈としての位置づけ /
    適用可能性 / その他)
- claim-type: hypothesis のまま fact-status: confirmed になる場合等に
  「何が確認されたか」を明記できるようにする

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
claim-type が hypothesis / interpretation のまま fact-status: confirmed に
移行する場合に「何が confirmed なのか」の明記を義務付ける Obsidian callout を
provisional / confirmed テンプレートの確認来歴セクションに追加。

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
「何が confirmed なのか」の例示を具体化:
confirmed hypothesis / confirmed interpretation として保存する理由、
適用限界など、確定させた位置づけの具体を明記することを要求。

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
lint_vault.py:
- wiki/candidates・provisional・confirmed を走査する最小 Linter
- 空欄検出を get_history_field_value + is_empty_or_placeholder に分離
  PLACEHOLDERS = {"", "TODO", "TBD", "未記入", "後で", "要記入", "N/A", "-" ...}
- ファイル除外を path.name.lower() で大文字小文字非依存に統一
- connection-source のスカラー検出 (V-02) とプレースホルダー検出を実装
- M-01: 補助資料源を「含む」条件で fact 主張を要確認フラグ
- claim-type=hypothesis/interpretation + confirmed の場合は
  「確認の対象は何か」欄の空欄を要注意に格上げ

schema/lint-rules.md:
- R-02: connection-source はインラインリスト形式限定。
  複数行 YAML リストは lint_vault.py の対象外と明記。

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
1. 複数行YAML connection-source を沈黙スキップ→R-02 Errorに変更
   detect_multiline_connection_source() を新設し check_candidates 先頭で呼び出す

2. get_history_field_value: テーブル形式に加えインデント付きリスト形式を追加
   ^\s*-\s*\*\*field\*\*:\s*(.*)$ にも対応

3. PLACEHOLDERS から "N/A" と "-" を除去
   N/A は「該当なしと判断済み」を意味しうるため未記入扱いしない

4. TODO/TBD を大文字小文字非依存に
   normalized.upper() in {"TODO","TBD"} で判定

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
異常系:
  A: 複数行YAML connection-source → R-02 Error
  B: claim-type=fact + AI対話由来(補助資料源含む)→ M-01 Warning のみ
     (raw 参照を揃えて C-03 が出ない状態で M-01 だけを確認)
  C: claim-type=hypothesis + fact-status=confirmed で確認来歴フィールドが空
     → P-02 Error + "何が confirmed か" 専用メッセージ

正常系(誤検出しないこと):
  D: 適切な candidates(原語由来+本文文脈由来)→ issue なし
  E: 解釈者由来×interpretation → M-01 出ない(claim-type が fact でないため)
  F: 本文文脈由来×metaphor → issue なし

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
raw/strongs/H3045.md:
  BDB 分類に基づく yadaʿ の語義幅(認知→親密→性的→神的認識)を記録

raw/scripture/genesis/004.md:
  創世記4章全節。4:1 / 4:9 / 4:17 / 4:25 での yadaʿ 反復を注記。
  ヘブライ語原文・翻字・語彙ノート付き。

wiki/candidates/H3045-yada-genesis-4-1.md:
  接続: yadaʿ の存在論的関与としての「知る」仮説
  connection-source: [原語由来, 本文文脈由来]
  claim-type: hypothesis
  採択禁止理由自己点検: 「深度感」が根拠化しないよう明記済み
  lint 通過確認済み

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
G: confirmed hypothesis、確認来歴が入れ子リスト形式で正しく記入済み
   → P-02 が出ないこと(get_history_field_value のインデント対応確認)

H: confirmed hypothesis、「確認の対象は何か」が N/A
   → P-02 が出ないこと(N/A は未記入扱いしない)

A/B/C = 鳴るべきもの
D/E/F = 素直な正常系
G/H   = 鳴りそうで鳴ってはいけない境界正常系

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
raw/strongs/H7069.md:
  qanah(קָנָה)の BDB 語義(取得・産出・創造)を記録。
  4:1 での qānîṯî 完了形、カインの民間語源解釈、
  否定観測(所有への一義化は不可)を含む。

wiki/candidates/H3045-H7069-yada-qanah-genesis-4-1.md:
  ユーザー観測をそのまま候補ノートに転記。
  frontmatter の複数行リストをインライン形式に修正(R-02 対応)。
  - 否定・分離観測(ホセア4:1 は daʿath / H1847)を明記
  - 保留点「所有の匂い」の3源泉(本文/経験投影/相応)を未分離として残す
  - 採択禁止理由自己点検: 「層を感じた」は感性由来と明記済み
  lint 通過確認済み

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
wiki/candidates/H3045-H7069-yada-qanah-genesis-4-1.md:
- 保留点を3層に分離:
  源泉1(本文構造由来)= 検証可能、まだやっていないだけ
  源泉3(相応的接続)  = 構造的断層、原理的に埋まらない
  源泉2(経験投影)    = 源泉1確認後に問い直す暫定保留
- qanah の所有/産出二義に関する符合への割り引き注意を明記
- LXX ktaomai/ktizō の分岐、箴言8:22、創14:19 を検証導線に追加
- strongs ID からの推測であり崩れる前提を明記

lint_vault.py:
- S-01 check_strongs_format() を新設
  strongs フィールドの要素を ^[HG]\d+$ で検証
  スカラー形式も警告

schema/lint-rules.md:
- S-01 ルールを追記(「飾り」から「荷重フィールド」への昇格)

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
方法論候補として promotion.embodied_pass: null を設け、
紙上確認(paper_checks)と身体通過(embodied_pass)の条件を分離。
実運用実績がない限り provisional 以上へ昇格しない旨を明記。

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
Knowledge Hygiene Pipeline の自然再出現を観測するための記録票。
名称再出現と動作再出現を分けて記録できる最小構成。

https://claude.ai/code/session_017EuuY79umesrCefPJK7pv2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants