架空企業「みらい業務サービス」の例。すべて教材用の演習データ上の話であり、実在の障害ではない。 演習の実行記録は evidence/sample-c/run_log.md。

時系列の時刻は教材のために架空に引き延ばしている。実際の演習では全手順を同じ分内に連続実行した(実行記録の時刻参照)。 「事実」と記した行は、演習で該当する操作を実行し記録が残っていることを指す。

1. 概要

項目内容
障害IDINC-2026-001(架空)
発生日時2026-09-18 22:22 頃(掃除スクリプト v1.1 の実行時刻)
検知日時同日 22:25(架空)
検知のきっかけ承認者から「承認した依頼の履歴が空になっている」と申告(架空)
影響を受けた業務・利用者承認済み依頼3件(REQ-C01, C02, C04)の履歴が消失。依頼者・承認者が経緯を確認できない
対応責任者運用管理者(架空)
現在の状態復元済み(自動照合一致)・再開保留(業務確認が未実施)

2. 時系列

時刻出来事・行動実施者事実か推測か
22:22掃除スクリプト v1.1 を実行運用管理者事実(実行記録あり)
22:25承認者から履歴が見えない旨の申告承認者事実(架空の申告)
22:26初報:「承認記録の表示に不具合。調査中。承認操作は控えてほしい」を全利用者に送信運用管理者事実(架空の連絡)
22:26掃除スクリプトの実行を停止。以後の実行を禁止運用管理者事実
22:27壊れた状態のファイルを別名で保全(freeze)運用管理者事実
22:28v1.1 の削除条件に日付条件が抜けていることを確認運用管理者事実(コードを読んで確認)
22:29スクリプトを既知版 v1.0(削除処理なし)に戻して実行。履歴は戻らないことを確認運用管理者事実
22:30世代 gen-001 のバックアップを別の場所へ復元し、基準時点と全行照合(終了コード0)運用管理者事実
22:35途中経過:復元完了と、再操作が必要な2件を個別連絡。再開は業務確認後と周知運用管理者事実(架空の連絡)

3. 影響の把握

確認項目結果
影響を受けたデータの範囲履歴 6件が削除(承認済み3件分の提出・承認履歴)。依頼データ自体は6件とも残存
影響を受けていないと確認できた範囲下書き・提出済み・差戻しの依頼とその履歴
利用者から見た症状承認済み依頼を開いても「誰がいつ承認したか」が表示されない

4. 追加被害の防止

行動実施時刻実施者解除の条件
掃除スクリプトの実行停止22:26運用管理者修正版の検証完了と責任者承認
承認・差戻し操作の一時停止(架空)22:26運用管理者復旧確認表の完了

5. 状態の保全

保全したもの保存場所指紋や件数実施者
障害時のデータベースファイルwork/incident/practice_broken_<時刻>.db依頼6件/履歴3件。sha256は実行記録参照運用管理者
バックアップの控え(manifest)work/backup/manifest.json依頼5件/履歴7件(バックアップ時に作成済み)

6. 原因

項目内容
直接の原因v1.1 の履歴削除の条件に日付条件がなく、承認済み依頼の履歴を全部削除した
背景の原因削除を伴うスクリプトを、演習データでの事前確認なしに実行した(架空の設定)
確認方法v1.1 のSQLを読み、削除件数(6件)が承認済み依頼の履歴数と一致することを確認

7. 復旧の方法と結果

項目内容
コードの切戻し行った。v1.1 → v1.0(既知版、削除処理なし)。ただし消えたデータは戻らない(実行記録で確認)
データの復元行った。復元元 世代 gen-001(work/backup/gen-001/)、復元先 work/restore/gen-001/practice_restored.db(別の場所)。基準時点 22:22 のバックアップ。復元前に復元元の指紋、復元後に復元先の指紋を照合
復旧確認表の結果自動照合(指紋・可読性・件数・内容・関係)はすべて一致、終了コード0。バックアップ後の変更2件(REQ-C06 の提出、REQ-C02 の承認)は復元に含まれない。業務確認は未実施のため判定は「再開保留」 → 別紙参照

8. 関係者への連絡

時刻相手種類内容手段
22:26承認者・依頼者全員(架空)初報不具合の発生、調査中、承認操作の一時停止社内チャット(架空)
22:35田中(REQ-C06 依頼者)、鈴木(REQ-C02 承認者)途中経過復元完了、再提出・再承認が必要社内チャット(架空)
22:36承認者・依頼者全員(架空)途中経過復元完了、業務確認が済むまで承認操作は停止中社内チャット(架空)
(未定)全員再開連絡業務確認の完了後に送る—

9. 再発防止

対策担当期限状態
削除を伴うスクリプトは演習データで件数を確認してから実行する手順を追加運用管理者未定未着手
削除を伴う処理を実行できる権限を限定する運用管理者・設計担当未定未着手
履歴テーブルは削除ではなく保管(アーカイブ)に変える案の検討設計担当未定未着手
バックアップの取得頻度と、復元演習の定期実施を決める運用管理者未定未着手