メインコンテンツへスキップ
nefs — portfolio

【EvenG2】アプリのデータはなぜ消えるのか?直した話

Lenskiで、アプリを閉じてから開き直すとデータが消えてしまう不具合があった。原因は、公式が用意している保存の仕組みを使わず、独自の方式でデータを保持していたことだった。

今回は、その原因と修正の経緯、修正後の安定性、開発初期のプロダクトと付き合う心構えを振り返る。

この記事でわかること

  • Lenskiでアプリを閉じて開き直すとデータが消えていた実情(2026年9月時点の検証)
  • 独自方式でのデータ保存が原因だったという技術的な経緯
  • 公式の保存方式に置き換えて修正した対応
  • 開発初期のプロダクトと長く付き合う心構え

独自方式でのデータ保存が原因だった

原因を突き止めると、保存の仕組みそのものに行き着いた。 本来と違う、一時的な仕組みに頼る作りになっていた。次の章で、その原因をもう少し詳しく振り返る。

データが消える原因の構造を示す図解

閉じて開き直すとデッキがリセットされていた

症状はシンプルで、再起動のたびに内容が消えてしまうというものだった。

掘り下げてみると、保存先そのものが公式のやり方と違っていた。 アプリ本体は、公式が用意している保存の仕組み(再起動をまたいでも残る方式)を使わず、ブラウザの一時的な保存領域をそのまま使っていた。これでは、アプリを閉じて開き直すたびに内容が初期化されてしまう。

公式の保存方式に置き換えて修正した

対応の方向性は、最初からある程度絞られていた。公式が用意している保存の仕組みに置き換えることで、この症状は解消した。

あわせて、データが表示されるまでの間の挙動にも手を加えた。読み込みが完了する前に画面を操作できてしまうと、データが上書きされる不具合につながる。そのため、読み込みが終わるまで待つように調整した。

対応自体はAIエージェントに依頼して進めてもらった。

修正後も安定して動いている

しばらく経った今も、特に不具合は出ていない。再起動を挟んでもデータが消えることはなく、安定した状態が続いている。

開発初期のプロダクトと付き合う心構え

早い段階のプロダクトには、それなりの向き合い方がある。

息の長い付き合い方を、最初から前提にしておいたほうがいい。 一定の不具合は起きるものとして受け止め、長く付き合っていく姿勢が実用的だという考えだ。

初期段階のプロダクトとは長く付き合う前提で使う

不具合が起きても、そこで使うのをやめない。 立ち上がったばかりのツール・サービスには不具合が付き物だと割り切り、気づいた時点で対応しながら使い続ける。

不具合が起きても対応しながら使い続ける姿勢は、日々の仕事にも活かせる。MOCO Worksのサービスでも同じ心構えを持って向き合っている。

参考・出典情報

(本記事は一次情報(インタビュー・社内技術ドキュメントによる裏取り)起点のため、外部出典なし)