# SHIMA EXPRESSION ATLAS v6.1.1 CHANGELOG

## v6.1.1 一列レイアウト修正

- `builder_main..html` の共通規則 `.section-content details[open] > div` が、展開した表情棚本文へ `auto-fill` グリッドを再適用していた原因を修正。
- `01 すぐ決める` の説明文と `表情調律室` が左右2列になる状態を、上から順に流れる一列へ固定。
- 表情棚本文、表情調律室本文、感情／濃度選択、A／B／C候補、診断、適用ボタンへ、表情アカシック専用の高優先度一列規則を適用。
- PC幅でも2列へ戻さず、全画面幅で同じ一列構造を維持。
- checkbox、prompt、安定ID、選択状態、候補生成、適用処理には変更なし。
- 専用回帰へ、展開後の全主要コンテナが一列であることと、780px以上で2列へ戻す規則が存在しないことを追加。

## 表情棚の再編

- v1〜v5の増築順で散らばっていた表情を、用途と深度による7段階へ再配置。
- 表示順を `完成 → 基本感情 → 顔パーツ → 顔面演出 → 場面 → 深層演技 → 成人` に統一。
- 既存checkboxは複製せずDOMごと移動。prompt、checked、イベント、保存互換を維持。
- 全親棚と子棚を初期closed、Androidを含む完全一列・横書きへ統一。

## 入口

- `今日はどんな顔にする？` を表情棚の先頭へ追加。
- 通常4入口、R-18解放時5入口。
- 入口は棚を開いて移動するだけで、チェックを変更しない。

## 表情調律室

- 通常12用途：喜び、好意、照れ、悲しみ、怒り、恐怖、驚き、落ち着き、悪役、闘志、疲労、食。
- 成人4用途：誘い、我慢、主導、とろけ。
- ほのか／標準／高水準の3濃度。
- A軽量完成束、B場面完成顔、C部品調律を既存表情項目だけで生成。
- 候補閲覧は非選択。置換／相性調整追加の明示操作だけがcheckboxへ反映。
- 目の色、目の形、瞳孔・ハイライトを人物同一性として置換対象外へ保護。
- 同役割、意味対比、積みすぎを診断。対比は警告だけで自動削除しない。

## 修復

- 旧v1の `IS_UNLOCKED` 未定義と旧v2の `FACE_EFFECTS_GROUPS` 未定義による初期化例外を、アカシック有効時だけ停止。
- 長いmanifestの途中でCoreが早期mountしてもguardが間に合うよう、アカシックデータを表情bundleより先に読んで有効印を立てる。
- 早期mountで表情sectionが先にアコーディオン化されても、旧群の実parentを挿入先に使う。
- 空のatlasを先にDOMへ接続してから既存checkboxを移し、挿入失敗時に入力群だけが切り離される状態を防止。
- v3が旧v2内容を包含していることを確認し、欠落していた基本感情14件だけを元promptで回収。
- 既存v3／v4／v5と新version 610のmountを維持。

## 重複整理

- 同一scope・完全同promptだけを検出。
- 重複inputを削除せず、実labelとinputを初期closedの互換保管庫へ移動。
- 成人解放DOMでは17件を互換保管庫へ移動。通常DOMの対象は0件。

## 成人境界

- 未解放時は成人棚、入口、レシピ、候補を生成しない。
- 公開APIによる未解放時の成人候補取得も空配列。
- 解放後だけ成人303項目と成人4レシピを利用可能。

## 変更ファイル

- `builder_ui.section.expression.bundle.js`
- `builder_data.expression_atlas.v1.js`
- `ext_expression_atlas.v1.js`
- `ext_manifest.v1.js`
- `ext_manifest.v2.js`
- `manifest.json`
- `tests/expression_atlas.test.mjs`
- 配布資料、README、引き継ぎテンプレート
