# Portability: UNIVERSAL
# Last validated: 2026-05-17
# Next review: 2027-05-17

シャットダウン - セッションの終了
--------------------------

説明
シャットダウン プロトコルは BACH セッションを終了し、保存します。
セッション レポートとディレクトリ状態の更新。

コマンド
-------
bach --shutdown              完全なシャットダウン (デフォルト)
bach --shutdown "Summary"    セッション サマリー付き
bach --shutdown quick        ディレクトリ スキャンなしで高速
bach --shutdown emergency    緊急 - 状態の保存のみ
bach --shutdown --partner=NAME  パートナー固有のシャットダウン (v1.1.71)

シャットダウン タイプ
--------------
完全 (デフォルト):
- ディレクトリスキャンの更新
- 3 つ以上の変更があった場合の自動スナップショット
- セッションをDBに保存
- カウントタスク統計

クイック:
- ディレクトリスキャンの更新はありません
- 短いメモを保存します
- セッションがすぐに続く場合の休憩

緊急:
- 緊急メモのみを保存します (優先度 10)
- キャンセル/タイムアウトの場合に使用します
- 状態の最小バックアップ

フル プロセス (v1.1.17)
-------------------------
1。 [ディレクトリスキャン]
   - TARGETステータスの更新
   - 文書の変更

2. [自動スナップショット] ***新しい v1.1.17***
   - 3 つ以上の変更がある場合: 自動スナップショット
   - 名前: auto_YYYYMMDD_HHMMSS
   - 続行: バッチ スナップショットのロード

3。 [セッションを保存]
   - セッションをmemory_sessionsで完了する
   - 概要が保存されます
   - 自動メモリ フォールバック (v1.1.15):
     概要が指定されていない場合 -> 自動ログから生成

4。 ［メモリーステータス］
   - 作業/事実/セッションカウンターを表示します

5。 [タスク統計] *** v1.1.14 ***
   - 作成/完了したタスクの数をカウントします
   - メモリセッションに保存します

出力例
---------------
-------------------------------------------------------
          完全なシャットダウン
-------------------------------------------------------
時間: 2026-01-22 13:15
-------------------------------------------------------

[ディレクトリ スキャン]
 TARGET 状態が更新されました (5 件の変更)

[自動スナップショット]
 [OK] 自動スナップショットが作成されました (5 つの変更)

[セッションを保存]
 [OK] セッション session_20260122_1300 が完了しました

[メモリ ステータス]
 稼働中: 3 |事実: 5 |セッション: 12

[タスク統計]
 +2 作成、1 完了 (このセッション)

-------------------------------------------------------
セッションが終了しました
-------------------------------------------------------

SAVE SESSION REPORT
-------------------------
シャットダウン前にセッション レポートを保存します:

  bach --memory session "THEMA: Was gemacht. NAECHSTE: Was kommt."

または、シャットダウン中に直接概要を指定します:

  bach --shutdown "Help-Dateien aktualisiert. NEXT: memory.txt pruefen"

重要: セッション レポートは、memory_sessions (DB) に属します。
         メモリ/アーカイブ/*.md ファイルにはありません!

自動メモリ フォールバック (v1.1.15)
------------------------------
クロードが概要を指定しない場合は、自動的に概要が作成されます
自動ログから生成されます。形式:

  [自動フォールバック] コマンド: 15 (8 つは固有) ||タスク リスト、メモリ読み取り、...

これはセーフティ ネットです - 手動による要約の方が優れています!

いつシャットダウンするか
---------------------
|状況 |コマンド |理由 |
|----------|----------|----------|
|タスクが完了しました | --シャットダウン |完全なドキュメント |
|短い休憩 | --クイックシャットダウン |急いで、すぐに先に進んでください |
|タイムアウト/中止 | --緊急シャットダウン |最小バックアップ

|データ ソース
-------------
-memory_sessions: セッション レポート、タスク カウンター
-memory_working: 緊急メモ
- session_snapshots: 自動スナップショット

HANDLER
-------
hub/shutdown.py シャットダウン ハンドラー (DB ベース)

PARTNER SHUTDOWN (v1.1.71)
--------------------------
パートナー セッションの場合、パートナーは自動的にクロックアウトされます:

  bach --shutdown --partner=claude   クロード クロック アウト
  bach --shutdown --partner=gemini   ジェミニ クロック アウト

スタンプ カード (partner_presence テーブル) が更新されます。
  - ステータス: オンライン -> オフライン
  - Clocked_out: タイムスタンプ セット

 --partner を使用しないと、「user」がパートナーとみなされます。

PROSYNC (終了時)
------------------
ProSync がアクティブ化されている場合 (bach setup prosync --multi-system)、
セッションの終了時に、DB バックアップがトランジット ハブに書き込まれます。
  - プッシュ: ローカル DB を .bachdb バックアップとしてエクスポート
  - ターゲット: OneDrive/.SYNC/bach_db_transit/
ProSync は、シャットダウン ハンドラーではなく、bach.py の atexit フックを介して実行されます。
詳細: bach --help db_sync

バージョン履歴
----------------
v1.1.0 dir スキャンによる基本的なシャットダウン
v1.1.14 + タスク統計
v1.1.15 + 自動ログからの自動メモリ フォールバック
v1.1.17 + 3 つ以上の変更時の自動スナップショット
v1.1.71 + パートナー クロックアウト (スタンプ カード)

関連項目
----------
bach --help startup        セッションの開始
bach --help memory         メモリ システム (セッション、ファクト)
bach --help snapshot       スナップショットの管理
bach --help tasks          タスク管理
bach --help db_sync        ProSync: マルチシステム DB 同期
