事象
Glossary データ生成時の root.relativize(path) が、パスの前提が崩れると IllegalArgumentException を投げうる。
該当箇所
main (a3ad929) 時点: jig-core/src/main/java/org/dddjava/jig/adapter/datajs/GlossaryDataAdapter.java:79-82
typeSourcePaths.typeMap().forEach((typeId, path) ->
map.put(typeId.fqn(), root.relativize(path).toString().replace('\\', '/')));
失敗シナリオ
- Windows でソースと git リポジトリが別ドライブにある場合や、相対/絶対パスが混在した場合に例外が飛び、Glossary データ生成全体が失敗する
- リポジトリ外のソースでは
../.. を含むパスが出力され、blob URL の連結が壊れる
修正案
relativize 可能か(同一ルート・リポジトリ配下か)を事前判定し、対象外はマップから除外する。
🤖 この issue は Claude Code のコードレビューにより作成されました。
事象
Glossary データ生成時の
root.relativize(path)が、パスの前提が崩れるとIllegalArgumentExceptionを投げうる。該当箇所
main (a3ad929) 時点:
jig-core/src/main/java/org/dddjava/jig/adapter/datajs/GlossaryDataAdapter.java:79-82失敗シナリオ
../..を含むパスが出力され、blob URL の連結が壊れる修正案
relativize 可能か(同一ルート・リポジトリ配下か)を事前判定し、対象外はマップから除外する。
🤖 この issue は Claude Code のコードレビューにより作成されました。