複数レコードを同一エンティティに束ねる際の編集 silently lost を防ぐ設計
フロントエンド
バックエンド
設計
複数の入力(連続スキャン等)を同じキーで1つの新規エンティティに束ねる UX では、編集が無言で失われる罠がある。(1)フロントが後続伝播用の参照データを最初の値のまま保持し編集を上書きしない、(2)同じキーの他カードに編集を反映しない、(3)バックエンドがループ内で最初に作成した ID を使い回し後続の param を捨てる、の3層で累積する。対策はフロントで束ね単位の単一 source of truth を持ち編集を全カードに反映、加えてバックエンドで同一キーの param が不一致なら 400 エラーにする防御的検証を追加(JSON 正規化して比較)。フロント主導 + バックエンド検証の二段が安全。