Skip to content

test: エッジケース131件の評価データを追加#9

Merged
tk1024 merged 8 commits intomainfrom
test/edge-cases
Mar 22, 2026
Merged

test: エッジケース131件の評価データを追加#9
tk1024 merged 8 commits intomainfrom
test/edge-cases

Conversation

@tk1024
Copy link
Owner

@tk1024 tk1024 commented Mar 22, 2026

Summary

  • 10カテゴリ131件のエッジケース評価データ(internal/eval/gold/edge-cases.tsv)を追加
  • npm run eval で MVP + edge-cases の両方を評価するように更新

現時点の結果

データセット 正解 誤分割 unsplit
MVP (208件) 94.7% 0% 5.3%
edge-cases (129件) 76.0% 0% 24.0%

unsplit の内訳(31件)

カテゴリ 失敗数 原因
かな姓+漢字名 13 かな→漢字の境界スコアリング未対応
漢字姓+カタカナ名 3 辞書未収録(滝沢カレン等)
かな混在名 3 辞書に名がない
1文字姓 1 辞書未収録(要潤)
3文字以上の姓 3 辞書未収録(五十嵐、東海林、上白石)
異体字 2 フォールディング未対応(濵田、柳樂)
特殊文字 2 ノ・ヶの扱い
全かな 2 reading データ未ロード

誤分割は 0 件で、全て安全側(unsplit)に倒れている。

Ref #8

Test plan

  • npm run eval で両データセットの評価が実行される
  • npm run test (ユニットテスト) に影響なし

🤖 Generated with Claude Code

tk1024 and others added 5 commits March 22, 2026 21:16
10カテゴリのエッジケース評価データ(edge-cases.tsv)を追加。
現時点の結果: 98/129正解(76.0%), 誤分割0%, unsplit 31件(24.0%)

カテゴリ:
- 漢字姓+ひらがな名 / 漢字姓+カタカナ名
- かな姓+漢字名(未対応)
- 名前内部にかな混在
- 1文字姓 / 3文字以上の姓
- 異体字・旧字体
- ノ・ヶ・々を含む姓
- 全ひらがな/全カタカナ
- 分割が曖昧な名前

Ref #8

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- internal/eval/ を廃止し、全テストを test/ に統合
- カテゴリ別ディレクトリ(12種)にテストファイルとデータを配置
- 共通ヘルパー(test/helper.ts)でTSVデータドリブンテストを実行
- VTuberテストデータ(30件)を追加
- 実辞書未生成時はスキップする安全機構付き
- npm run eval → vitest でカテゴリ別テストを実行

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
npm test で全テストが実行されるため不要。
eval は JS の予約語と紛らわしいアンチパターン。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- test/helper.ts: ローカル生成データがなければ npm パッケージ
  (seimei-split) から辞書を取得するフォールバックを追加
- .github/workflows/test.yml: push/PR時にテスト実行
  - npm install seimei-split で公開済み辞書を取得(2.8GBダウンロード不要)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- vitest の verbose 出力からカテゴリ別正答率を抽出
- sticky-pull-request-comment で PR に毎回上書きコメント
- push/PR 両方で実行、コメントは PR 時のみ

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@github-actions
Copy link

github-actions bot commented Mar 22, 2026

Test Results

Category Correct Wrong Unsplit Accuracy
名前内部にかな混在 7/10 0 3 70.0%
全ひらがな/全カタカナ 13/15 0 2 86.7%
ノ・ヶ・々を含む姓 9/11 0 2 81.8%
漢字姓+ひらがな名 15/15 0 0 100.0%
漢字姓+カタカナ名 9/12 0 3 75.0%
分割が曖昧な名前 8/10 0 2 80.0%
異体字・旧字体 13/15 0 2 86.7%
かな姓+漢字名 3/16 0 13 18.8%
3文字以上の姓 9/12 0 3 75.0%
MVP (208件) 196/207 0 11 94.7%
1文字姓 12/13 0 1 92.3%
VTuber名 1/30 0 29 3.3%

Unit Tests: 13 passed files, 50 passed tests

tk1024 and others added 3 commits March 22, 2026 21:32
vitest はソースを直接読むためビルド不要。
生成データがなければ npm パッケージから辞書を取得する。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
import("seimei-split") だと自パッケージと衝突するため、
node_modules/seimei-split/dist/index.js から直接 import する。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
vitest の色付き出力がレポートに混入していたため、
sed でエスケープコードを除去してからパースする。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@tk1024 tk1024 merged commit 25cbc37 into main Mar 22, 2026
1 check passed
@tk1024 tk1024 deleted the test/edge-cases branch March 22, 2026 12:37
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.

1 participant