Run レポート格納ポリシー

概要

NexusCore は、各 Self-Healing / Orchestrator 実行ごとに Markdown 形式の Run レポートを生成し、docs/run_reports/ ディレクトリに保存します。

  • ファイル名: RUN_{run_id}.md
  • 生成タイミング: Celery タスク nexuscore.run_orchestrator の完了時
  • 生成元モジュール: src/nexuscore/integration/run_report_generator.py

保持方針(MVP)

現時点の SaaS MVP では、以下の方針で運用します。

  • デフォルトでは 全ての Run レポートを保存 する。
  • ローカル開発環境では、必要に応じて手動で古いレポートを削除してもよい。
  • 本番環境では、以下のいずれかの方針を運用で選択する:
    • 直近 N 件(例: 100 件)だけ残し、それ以前は削除する
    • 日次バッチで「30日より古いレポート」をアーカイブ(zip化して S3 等に退避)する

将来の自動クリーンアップ案

将来の拡張として、以下の自動クリーンアップ機能を検討しています。

1. 件数ベースのローテーション

  • docs/run_reports/ 内のファイル数が N 件を超えた場合、最も古いものから削除する。

2. 日付ベースのローテーション

  • finished_at が一定日数(例: 90 日)より古い Run に対応するレポートを削除またはアーカイブする。

3. ストレージ利用量ベース

  • ディレクトリの合計サイズが閾値(例: 1 GB)を超えた場合に古いレポートから削除する。

注意事項

  • Run レポートは「人間向けの説明資料」として位置づけており、DB の ExecutionLog やダッシュボードとは役割が異なります。
  • Git リポジトリで扱う場合、レポート数が増えすぎると clone / pull のコストが増えるため、 本番環境では Git 管理外のディレクトリ(例: var/run_reports/)に切り替えることも検討してください。

This site uses Just the Docs, a documentation theme for Jekyll.