満杯の記憶

午前一時、セーブ担当の灰庭布由は、報告書の一文で目を覚ました。

〈本体の空き容量がない状態で保存すると、百時間分の記録が消える〉

 明朝の製造版確定まで、あと五時間。試験機の容量を埋め、最後の空き領域へセーブした。警告が出て、保存は失敗した。再起動すると、記録は最初からになっていた。

 ゲームは新しいセーブスロットを書き終えてから古いものを消す設計だった。だが容量不足のときだけ、新しい箱を作る前に古い箱へ上書きしている。途中で止まり、両方が壊れていた。

「容量不足なら、保存ボタンを押せなくしましょう」

 責任者が言った。布由は首を振った。自動保存は戦闘後にも走る。利用者が空きを確認できない場面で押せなくしても、危険は残る。

 彼女は古い記録を残したまま、一時領域へ新しい記録を書く手順に変えた。書き終えたらチェックサムで欠けがないか確かめ、正しいときだけ古い記録と入れ替える。空きが足りなければ、古い記録には一文字も触れない。

 修正版で、空き容量を少しずつ変えながら保存した。十分ある、ぎりぎりある、一バイト足りない。最後の条件では警告が出たが、再起動すると百時間の記録は残っていた。

 布由はそこで終わらせず、入れ替えの瞬間に電源を切った。責任者が息をのむ。再起動すると、古い記録と新しい記録の両方が候補として残り、時間の新しいほうが選ばれた。

「そこまで壊しますか」

「利用者の停電は、締切を待ってくれません」

 布由は最後に、容量不足で失敗した直後に別の場所で保存した。警告の状態が残り、空きができても保存できなくなる可能性を潰すためだ。二度目は正常に完了した。

 午前四時半、フェイルセーフの確認が終わった。報告者が使っていた百時間の記録も、修正版で読み込めるよう復旧手順を添えた。

 製造版が確定し、室内に小さな拍手が起きる。布由は試験機から容量を埋めた動画を消した。

 空いた画面に、次の報告が届く。

〈時計を二十年進めると、セーブ日時が空欄になる〉

 百時間を守った夜のあとに、二十年分の確認が始まった。