env: dev

log:
  level: info

# aws:
#   region: us-west-2
#   secret_name: dev-aiops-secret

clients:
  devops:
    ui_url: https://ops.tidbcloud.com
    base_url: https://dev.devops.pingcap.com
    apikey: ""
  clinic:
    base_url: https://clinic.pingcap.com
    apikey: ""
  lark:
    bot_name: OpsBot-Dev
    app_id: ""
    app_secret: ""
    event_subs_encrypt_key: ""
    event_subs_verification_token: ""
  jira:
    base_url: https://tidb.atlassian.net
    username: ""
    password: ""
    webhook_secret: ""
    lark_group_plugin_query_url: ""
    jsm_base_url: https://api.atlassian.com
  investibook:
    base_url: ""      # Investibook API base URL, e.g. https://investibook.example.com
    api_token: ""      # Investibook API token

database:
  host: ""
  port: 4000
  user: ""
  password: ""
  db: ""
  aes_key: ""

asset:
  bucket: tidbcloud-aiops-assets-dev

apps:
  server:
    host: 0.0.0.0
    port: 8090

services:
  analysis_storage_dir: ./analysis-storage
  long_running:
    sync_interval_seconds: 10
  copilot:
    openai_api_key: ""
  guardian:
    baseline_cron_enabled: false
    baseline_cron_hour: 22
    whitelisted_org_ids: []
    investibook_base_url: ""       # Investibook host URL, e.g. https://investibook.example.com
    investibook_callback_url: ""     # Callback URL for Investibook, e.g. https://your-guardian-host/guardian/investibook/callback
    nested_insight:
      enabled: false
      scan_interval_seconds: 60
      lookback_minutes: 30  # Time window to scan for new analyses
      window_minutes: 15     # Duration of each analysis window
      analysis_timeout_minutes: 10  # Timeout for stuck window detection (increased for long Claude SDK runs)
      max_concurrent_analyses: 2    # Maximum concurrent Claude SDK analysis tasks (reduced for resource safety)
      max_retry_attempts: 3         # Maximum retry attempts for failed analyses
      lark_webhook_url: ""
