---
name: project-step1228-onshoku-jiten-implementation-2026-06-19
description: "STEP 1228 音色辞書 daily auto-curation 実装 + ear-distinguishable granularity rule 確立 (沖縄/津軽三味線=別 entry, Stradivarius/Guarneri=同 entry) + K-complexity 圧縮 mini 実例 (5 KB templates → ~1 MB dictionary)"
metadata: 
  node_type: memory
  type: project
  originSessionId: d59cdca4-bc80-450c-a185-37dbc12c6a0f
---

# STEP 1228 (2026-06-19) — 音色辞書 daily auto-curation 実装

## 概要

世界の楽器音色を **ear-distinguishable criterion** で curate する HTML 単独辞書を rei-aios に統合。 1 日 1 entry ペースで自動追加、 ~3,000 entry plateau 目標。

## ファイル

| Path | 役割 |
|------|------|
| `tools/onshoku-jiten/index.html` | 公開 HTML (Downloads から移植、 既存 8 → 11 entry に増加) |
| `tools/onshoku-jiten/README.md` | 設計原則 + queue 拡張方法 |
| `data/onshoku-jiten/queue.json` | 37 entry 初期 spec (Phase 1: 励起×共鳴 lattice 埋め) |
| `data/onshoku-jiten/state.json` | 進行 pointer + history |
| `data/onshoku-jiten/backup/` | 日次 backup (rollback 可能) |
| `src/aios/onshoku/` 5 file | types + templates + generator + html-appender + index |
| `scripts/generate-daily-onshoku.ts` | 日次 cron entry point |
| `test/step1228-onshoku-generator-test.ts` | 56/56 PASS |
| `scripts/auto-publish.ts` Phase 1.4c | cron 統合 (Buddy と並列) |
| `package.json` | `onshoku:daily` script 登録 |

commit: `0c2bcb2eb`

## ear-distinguishable granularity rule (load-bearing 設計判断)

藤本さん明示判断 (本日対話):

- **ear で違う** → 別 entry (沖縄三味線 vs 津軽三味線 = 別 entry、 schema 4 軸 (ex/partials/env/noise) で表現可能)
- **盲検テストで区別不能** → 同 entry (Stradivarius vs Guarneri = 同 "violin" entry)
- **龍樹の空との整合**: 過剰精度は ear 経験から離れる → 細分の無限退行を避ける

→ 結果: 全 culture 網羅で **~1,800-2,300 entry** が plateau 規模 (initially 「~10,000」 と推定したが granularity rule で再計算)。

## K-complexity 圧縮 mini 実例 (3 重 amortization pattern の 1 例目)

```
kernel: src/aios/onshoku/templates.ts ~5 KB
  (12 CELL_TEMPLATES + 35 VARIANT_MODIFIERS)

generated: tools/onshoku-jiten/index.html DICTIONARY 配列
  完成時 ~3000 entry × ~300 B = ~900 KB
```

償却計算:
- naive 直書き = 3000 × 300 B = ~900 KB
- templates + variant 抽象化 = 5 KB kernel + 3000 × ~150 B (spec のみ) = ~455 KB
- **削減率 ~50%、 break-even 約 17 entry**
- ★ 本日 3 件追加 (viola/cello/erhu) で **既に break-even 越え** = K-complexity 圧縮 mini 実例として live demonstrate

## 進捗目標

| Phase | 規模 | 完成見込み (1 件/日) |
|-------|------|----------------------|
| Phase 1 (cell 埋め) | ~50 entry | ~6 週間 |
| Phase 2 (cultural rep) | ~500 entry | ~1.4 年 |
| Phase 3 plateau | ~2,000-3,000 entry | ~5-8 年 |

queue v0.1 = 37 entry なので **37 日で初回 queue 完走**、 その後 queue 拡張継続。

## 3 件動作確認済 (本日 2026-06-19)

- **viola** (verified): `larger-body-lower` variant で env.d 0.22→0.25 + 高次倍音 -0.15
- **cello** (verified): 同 variant、 さらに低音域寄り
- **erhu (二胡)** (estimated): `erhu-style` variant で vibrato depth 25 + 高音域ノイズ rich (蛇皮鼻音)

## Honest scope

- 数値は **typical 値** であって特定銘柄精密 spectrum ではない (ear-criterion 用)
- 民族楽器は同 family 典型からの類推 = **estimated** 明示
- 「世界初」 等 global claim は audit 範囲外で控える ([[feedback-world-uniqueness-claim-controllable]])
- 自動追加だが confidence tag (verified/estimated/speculative) で品質を honest 明示
- 「Rei が autonomous に作る」 と言いつつ実態は **私 (Claude) が curate した knowledge templates** = transparency 維持

## 関連 memory + 永続原則

- [[feedback-no-rush-publication]] 急がず ゆっくりと
- [[feedback-evaluation-symmetry-principle]] (1,800-2,300 entry に honest reduce、 「10K entry」 inflate せず)
- [[reference-instrument-count-fermi-dictionary-granularity-2026-06-19]] (本 STEP の概念的 background)
