name: audit-architecture
description: アーキテクチャの全件監査。モジュールと境界を棚卸しし、コード修正なしで Issue 直貼り可能なレポートを作成する
max_steps: 12
initial_step: plan

loop_monitors:
  - cycle:
      - supervise
      - review
    threshold: 3
    judge:
      persona: supervisor
      instruction: |
        architecture audit の supervise → review サイクルが {cycle_count} 回繰り返されました。
        監査レポートと計画レポートを比較し、以下を判断してください:
        - 監査スコープが前回サイクルから拡大しているか（新しいモジュールが監査されたか）
        - 残りの未監査モジュールは合理的なサイクル数で完了可能か
      rules:
        - condition: 監査品質・スコープが十分
          next: COMPLETE
        - condition: スコープが拡大しており改善が続いている
          next: review
        - condition: スコープが停滞し改善の見込みがない
          next: ABORT

steps:
  - name: plan
    tags:
      - plan
    persona: planner
    policy:
      - contract-change
      - architecture
    knowledge: architecture
    instruction: architecture-audit-plan
    edit: false
    output_contracts:
      report:
        - name: 01-architecture-audit-plan.md
          format: architecture-audit-plan
    rules:
      - condition: モジュール棚卸しと監査スコープ整理が完了
        next: audit
      - condition: 要件が不明確、情報不足
        next: ABORT

  - name: audit
    tags:
      - review
    persona: architecture-reviewer
    policy:
      - contract-change
      - review
      - architecture
    knowledge: architecture
    instruction: architecture-audit-team-leader
    edit: false
    team_leader:
      max_parts: 3
      part_persona: architecture-reviewer
      part_edit: false
    output_contracts:
      report:
        - name: 02-architecture-audit.md
          format: architecture-audit
    rules:
      - condition: 監査完了
        next: supervise

  - name: supervise
    tags:
      - review
      - supervise
    persona: supervisor
    policy:
      - contract-change
      - review
      - architecture
    knowledge: architecture
    instruction: architecture-audit-supervise
    edit: false
    pass_previous_response: false
    rules:
      - condition: 監査が完全で Issue 化できる品質に達している
        next: COMPLETE
      - condition: アーキテクチャ監査が不完全、または根拠が不足している
        next: review

  - name: review
    tags:
      - review
    persona: architecture-reviewer
    policy:
      - contract-change
      - review
      - architecture
    knowledge: architecture
    instruction: architecture-audit-review
    edit: false
    output_contracts:
      report:
        - name: 02-architecture-audit.md
          format: architecture-audit
    rules:
      - condition: 再監査完了
        next: supervise
