// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.

/**
 * Auto-generated by 'os i18n extract' for locale 'ja-JP'.
 * Edit translations in place; re-run extract (with --merge) to fill new gaps.
 * Do not hand-edit the structure — only the leaf string values.
 */

import type { TranslationData } from '@objectstack/spec/system';

export const jaJPObjects: NonNullable<TranslationData['objects']> = {
  sys_user: {
    label: "ユーザー",
    pluralLabel: "ユーザー",
    description: "認証用ユーザーアカウント",
    fields: {
      name: {
        label: "名前"
      },
      email: {
        label: "メールアドレス"
      },
      email_verified: {
        label: "メール確認済み"
      },
      two_factor_enabled: {
        label: "二要素認証 有効",
        help: "このユーザーの二要素認証が有効かどうか。better-auth の `twoFactor` プラグインが管理します。"
      },
      role: {
        label: "プラットフォームロール",
        help: "プラットフォームレベルのロール（admin、user など）。「プラットフォームロールを設定」アクションから設定します。"
      },
      banned: {
        label: "利用停止",
        help: "true の場合、ユーザーはサインインできません。「利用停止」/「利用停止を解除」アクションで切り替えます。"
      },
      ban_reason: {
        label: "利用停止理由"
      },
      ban_expires: {
        label: "利用停止期限",
        help: "設定されている場合、この日時に利用停止が自動解除されます。"
      },
      image: {
        label: "プロフィール画像"
      },
      id: {
        label: "ユーザー ID"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    },
    _views: {
      me: {
        label: "My Profile"
      },
      all_users: {
        label: "すべてのユーザー"
      },
      unverified: {
        label: "未確認"
      },
      two_factor: {
        label: "2FA 有効"
      },
      banned: {
        label: "利用停止"
      }
    },
    _actions: {
      invite_user: {
        label: "ユーザーを招待",
        successMessage: "招待を送信しました"
      },
      ban_user: {
        label: "利用停止",
        confirmText: "このユーザーを利用停止にしますか？利用停止になるとサインアウトされ、解除されるまでサインインできなくなります。",
        successMessage: "ユーザーを利用停止にしました"
      },
      unban_user: {
        label: "利用停止を解除",
        successMessage: "ユーザーの利用停止を解除しました"
      },
      set_user_password: {
        label: "パスワードを設定",
        successMessage: "パスワードを更新しました"
      },
      set_user_role: {
        label: "プラットフォームロールを設定",
        successMessage: "ロールを更新しました"
      },
      impersonate_user: {
        label: "代理ログイン",
        confirmText: "このユーザーとして代理ログインを開始しますか？正当なサポート対応時のみ使用してください。操作は監査ログに記録されます。",
        successMessage: "代理ログイン中"
      },
      update_my_profile: {
        label: "プロフィール更新",
        successMessage: "プロフィールを更新しました"
      },
      change_my_password: {
        label: "パスワード変更",
        successMessage: "パスワードを変更しました"
      },
      change_my_email: {
        label: "メールアドレス変更",
        successMessage: "確認メールを送信しました。新しいメールアドレスで確認してください。"
      },
      resend_verification_email: {
        label: "Resend Verification Email",
        successMessage: "Verification email sent — check your inbox."
      },
      delete_my_account: {
        label: "アカウント削除",
        confirmText: "アカウントを完全に削除しますか？この操作は元に戻せません。すべてのセッションが終了され、設定された保持ポリシーに従って所有するすべてのデータが削除されます。",
        successMessage: "アカウントを削除しました"
      },
      enable_two_factor: {
        label: "Enable Two-Factor Auth",
        successMessage: "Two-factor authentication enabled. Scan the QR code or paste the otpauth URI into your authenticator app, then verify a code to complete setup."
      },
      disable_two_factor: {
        label: "Disable Two-Factor Auth",
        confirmText: "Turn off two-factor authentication? Your account will be less secure.",
        successMessage: "Two-factor authentication disabled."
      },
      generate_backup_codes: {
        label: "Regenerate Backup Codes",
        confirmText: "Generate a new set of backup codes? Any previously generated codes will stop working.",
        successMessage: "New backup codes generated — save them somewhere safe."
      }
    }
  },
  sys_session: {
    label: "セッション",
    pluralLabel: "セッション",
    description: "アクティブなユーザーセッション",
    fields: {
      user_id: {
        label: "ユーザー"
      },
      expires_at: {
        label: "有効期限"
      },
      active_organization_id: {
        label: "アクティブ組織"
      },
      active_team_id: {
        label: "アクティブチーム"
      },
      ip_address: {
        label: "IP アドレス"
      },
      user_agent: {
        label: "ユーザーエージェント"
      },
      impersonated_by: {
        label: "代理ログイン開始者",
        help: "この代理ログインセッションを開始した管理者のユーザー ID（該当する場合）。"
      },
      token: {
        label: "セッショントークン",
        help: "不透明なセッショントークン — UI には表示されません"
      },
      id: {
        label: "セッション ID"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    },
    _views: {
      mine: {
        label: "自分のセッション"
      },
      all_sessions: {
        label: "すべて"
      }
    },
    _actions: {
      revoke_my_other_sessions: {
        label: "他のデバイスをサインアウト",
        confirmText: "現在ログイン中の他のすべてのデバイスをサインアウトしますか？現在のセッションは維持されます。",
        successMessage: "他のすべてのセッションを失効しました"
      },
      revoke_session: {
        label: "セッションを失効",
        confirmText: "このセッションを失効しますか？そのデバイスからサインアウトされます。",
        successMessage: "セッションを失効しました"
      }
    }
  },
  sys_account: {
    label: "認証アカウント",
    pluralLabel: "認証アカウント",
    description: "OAuth および認証プロバイダーアカウント",
    fields: {
      id: {
        label: "アカウント ID"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      },
      provider_id: {
        label: "プロバイダー ID",
        help: "OAuth プロバイダー識別子（google、github など）"
      },
      account_id: {
        label: "プロバイダーアカウント ID",
        help: "プロバイダーシステム内のユーザー ID"
      },
      user_id: {
        label: "ユーザー",
        help: "ユーザーテーブルへのリンク"
      },
      access_token: {
        label: "アクセストークン"
      },
      refresh_token: {
        label: "リフレッシュトークン"
      },
      id_token: {
        label: "ID トークン"
      },
      access_token_expires_at: {
        label: "アクセストークン有効期限"
      },
      refresh_token_expires_at: {
        label: "リフレッシュトークン有効期限"
      },
      scope: {
        label: "OAuth スコープ"
      },
      password: {
        label: "パスワードハッシュ",
        help: "メール/パスワードプロバイダー用のハッシュ化パスワード"
      }
    },
    _views: {
      mine: {
        label: "自分の連携"
      },
      by_provider: {
        label: "プロバイダー別"
      },
      all_links: {
        label: "すべて"
      }
    },
    _actions: {
      link_social: {
        label: "ソーシャルアカウント連携"
      },
      unlink_account: {
        label: "連携解除",
        confirmText: "このID連携を解除しますか？ユーザーがアカウント設定から再度連携するまで、このプロバイダーでサインインできなくなります。",
        successMessage: "アイデンティティ連携を解除しました"
      }
    }
  },
  sys_verification: {
    label: "検証",
    pluralLabel: "検証",
    description: "メールおよび電話番号の確認トークン",
    fields: {
      id: {
        label: "検証 ID"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      },
      value: {
        label: "確認トークン",
        help: "確認用のトークンまたはコード"
      },
      expires_at: {
        label: "有効期限"
      },
      identifier: {
        label: "識別子",
        help: "メールアドレスまたは電話番号"
      }
    }
  },
  sys_organization: {
    label: "組織",
    pluralLabel: "組織",
    description: "マルチテナントグループ化のための組織",
    fields: {
      name: {
        label: "名前"
      },
      slug: {
        label: "スラッグ",
        help: "URL フレンドリーな識別子"
      },
      logo: {
        label: "ロゴ"
      },
      metadata: {
        label: "メタデータ",
        help: "JSON シリアライズされた組織メタデータ"
      },
      id: {
        label: "組織 ID"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    },
    _views: {
      all_orgs: {
        label: "すべて"
      }
    },
    _actions: {
      create_organization: {
        label: "組織を作成",
        successMessage: "組織を作成しました"
      },
      update_organization: {
        label: "組織を編集",
        successMessage: "組織を更新しました"
      },
      delete_organization: {
        label: "組織を削除",
        confirmText: "この組織を削除しますか？すべてのメンバーはすぐにアクセスを失います。この操作は取り消せません。",
        successMessage: "組織を削除しました"
      },
      set_active_organization: {
        label: "アクティブに設定",
        successMessage: "アクティブ組織を切り替えました"
      },
      leave_organization: {
        label: "組織から退出",
        confirmText: "この組織から退出しますか？すべてのリソースへのアクセスを失います。",
        successMessage: "組織から退出しました"
      },
      change_slug: {
        label: "Change Slug",
        confirmText: "Renaming the slug rewrites every platform subdomain for this org and parks the old slug for 90 days. Continue?",
        successMessage: "Organization slug changed"
      }
    }
  },
  sys_member: {
    label: "メンバー",
    pluralLabel: "メンバー",
    description: "組織メンバーシップレコード",
    fields: {
      id: {
        label: "メンバー ID"
      },
      created_at: {
        label: "作成日時"
      },
      organization_id: {
        label: "組織"
      },
      user_id: {
        label: "ユーザー"
      },
      role: {
        label: "ロール",
        help: "組織内のメンバーロール",
        options: {
          owner: "所有者",
          admin: "管理者",
          member: "メンバー"
        }
      }
    },
    _views: {
      mine: {
        label: "My Memberships"
      }
    },
    _actions: {
      add_member: {
        label: "メンバーを追加",
        successMessage: "メンバーを追加しました"
      },
      update_member_role: {
        label: "ロールを変更",
        successMessage: "メンバーロールを更新しました"
      },
      remove_member: {
        label: "メンバーを削除",
        confirmText: "このメンバーを組織から削除しますか？組織のすべてのリソースへのアクセスを失います。",
        successMessage: "メンバーを削除しました"
      },
      transfer_ownership: {
        label: "所有権の移譲",
        confirmText: "この組織の所有権を選択したメンバーに移譲しますか？あなたは管理者に降格され、所有者のみの権限を失います。",
        successMessage: "所有権を移譲しました"
      }
    }
  },
  sys_invitation: {
    label: "招待",
    pluralLabel: "招待",
    description: "ユーザーオンボーディングのための組織招待",
    fields: {
      id: {
        label: "招待 ID"
      },
      created_at: {
        label: "作成日時"
      },
      organization_id: {
        label: "組織"
      },
      email: {
        label: "メールアドレス",
        help: "招待ユーザーのメールアドレス"
      },
      role: {
        label: "ロール",
        help: "承認時に割り当てるロール",
        options: {
          owner: "所有者",
          admin: "管理者",
          member: "メンバー"
        }
      },
      status: {
        label: "ステータス",
        options: {
          pending: "保留中",
          accepted: "承認済み",
          rejected: "拒否済み",
          expired: "期限切れ",
          canceled: "キャンセル済み"
        }
      },
      inviter_id: {
        label: "招待者",
        help: "招待を送信したユーザー"
      },
      expires_at: {
        label: "有効期限"
      },
      team_id: {
        label: "チーム",
        help: "承認時に割り当てるオプションのチーム"
      }
    },
    _views: {
      pending: {
        label: "保留中"
      },
      accepted: {
        label: "承認済み"
      },
      expired: {
        label: "期限切れ / キャンセル済み"
      },
      all_invitations: {
        label: "すべて"
      }
    },
    _actions: {
      invite_user: {
        label: "ユーザーを招待",
        successMessage: "招待を送信しました"
      },
      cancel_invitation: {
        label: "招待をキャンセル",
        confirmText: "この招待をキャンセルしますか？受信者は承認できなくなります。",
        successMessage: "招待をキャンセルしました"
      },
      resend_invitation: {
        label: "招待を再送",
        successMessage: "招待を再送しました"
      },
      accept_invitation: {
        label: "招待を受諾",
        successMessage: "招待を受諾しました"
      },
      reject_invitation: {
        label: "招待を辞退",
        confirmText: "この招待を辞退しますか？招待者に通知され、参加するには新しい招待が必要になります。",
        successMessage: "招待を辞退しました"
      }
    }
  },
  sys_team: {
    label: "チーム",
    pluralLabel: "チーム",
    description: "細かいグループ化のための組織内チーム",
    fields: {
      name: {
        label: "名前"
      },
      organization_id: {
        label: "組織",
        help: "このチームの親組織"
      },
      id: {
        label: "チーム ID"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    },
    _views: {
      by_org: {
        label: "組織別"
      },
      all_teams: {
        label: "すべて"
      }
    },
    _actions: {
      create_team: {
        label: "チームを作成",
        successMessage: "チームを作成しました"
      },
      update_team: {
        label: "チームを編集",
        successMessage: "チームを更新しました"
      },
      remove_team: {
        label: "チームを削除",
        confirmText: "このチームを削除しますか？メンバーはチームスコープのアクセスを失います。この操作は取り消せません。",
        successMessage: "チームを削除しました"
      }
    }
  },
  sys_team_member: {
    label: "チームメンバー",
    pluralLabel: "チームメンバー",
    description: "ユーザーをチームに関連付けるチームメンバーシップレコード",
    fields: {
      id: {
        label: "チームメンバー ID"
      },
      created_at: {
        label: "作成日時"
      },
      team_id: {
        label: "チーム"
      },
      user_id: {
        label: "ユーザー"
      }
    },
    _actions: {
      add_team_member: {
        label: "メンバーを追加",
        successMessage: "チームメンバーを追加しました"
      },
      remove_team_member: {
        label: "チームから削除",
        confirmText: "このユーザーをチームから削除しますか？チームスコープのアクセスを失います。",
        successMessage: "チームメンバーを削除しました"
      }
    }
  },
  sys_department: {
    label: "部門",
    pluralLabel: "部門",
    description: "階層的な組織ツリーノード（部門 / 事業部 / ビジネスユニット / オフィス）。",
    fields: {
      name: {
        label: "名前"
      },
      code: {
        label: "コード",
        help: "短い安定したコード（例: EMEA-SALES）。テナント内で一意。"
      },
      kind: {
        label: "種別",
        help: "分類ヒント — グラフのセマンティクスを変更しません。",
        options: {
          company: "会社",
          division: "事業部",
          department: "部門",
          team: "チーム",
          office: "オフィス",
          cost_center: "コストセンター"
        }
      },
      parent_department_id: {
        label: "親部門",
        help: "組織ツリーの自己参照。null = テナントのルート。"
      },
      organization_id: {
        label: "組織",
        help: "テナントスコープ。"
      },
      manager_user_id: {
        label: "部門長",
        help: "この組織単位の責任者（部門長 / リード）。"
      },
      active: {
        label: "有効",
        help: "false の場合、メンバーはグラフクエリで展開されません。"
      },
      effective_from: {
        label: "有効開始日",
        help: "この部門が設立された日時（HRIS 同期）。"
      },
      effective_to: {
        label: "有効終了日",
        help: "この部門が廃止された日時（HRIS 同期）。"
      },
      external_ref: {
        label: "外部参照",
        help: "上流 HRIS（Workday / SAP HR / 北森）の ID。"
      },
      id: {
        label: "部門 ID"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    },
    _views: {
      active: {
        label: "有効"
      },
      inactive: {
        label: "無効"
      },
      by_kind: {
        label: "種別別"
      },
      all_departments: {
        label: "すべて"
      }
    }
  },
  sys_department_member: {
    label: "部門メンバー",
    pluralLabel: "部門メンバー",
    description: "部門へのユーザー割り当て（マトリクス組織対応、有効期限付き）。",
    fields: {
      id: {
        label: "メンバー ID"
      },
      department_id: {
        label: "部門"
      },
      user_id: {
        label: "ユーザー"
      },
      role_in_department: {
        label: "部門内ロール",
        help: "`lead` は日常の責任者、`deputy` は承認ルーティングでリードの代理を務める場合があります。",
        options: {
          member: "メンバー",
          lead: "リード",
          deputy: "代理担当"
        }
      },
      is_primary: {
        label: "主要割り当て",
        help: "ユーザーが複数の部門に所属する場合、レポーティングの正規部門をマークします。"
      },
      effective_from: {
        label: "有効開始日"
      },
      effective_to: {
        label: "有効終了日"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    }
  },
  sys_api_key: {
    label: "API キー",
    pluralLabel: "API キー",
    description: "プログラムアクセス用の API キー",
    fields: {
      name: {
        label: "名前",
        help: "API キーの表示名"
      },
      prefix: {
        label: "プレフィックス",
        help: "キーを識別するための表示プレフィックス（例: \"osk_\"）"
      },
      user_id: {
        label: "所有者",
        help: "この API キーを所有するユーザー"
      },
      scopes: {
        label: "スコープ",
        help: "権限スコープの JSON 配列"
      },
      expires_at: {
        label: "有効期限"
      },
      last_used_at: {
        label: "最終使用日時",
        help: "API 呼び出しのたびに自動更新されます"
      },
      revoked: {
        label: "失効済み"
      },
      key: {
        label: "ハッシュ済みキー",
        help: "ハッシュ済み API キー値 — クライアントには公開されません"
      },
      id: {
        label: "API キー ID"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    },
    _views: {
      mine: {
        label: "自分のキー"
      },
      active: {
        label: "有効"
      },
      revoked: {
        label: "失効済み"
      },
      all_keys: {
        label: "すべて"
      }
    },
    _actions: {
      revoke_api_key: {
        label: "API キーを失効",
        confirmText: "この API キーを失効しますか？使用中のクライアントはすぐにアクセスを失います。",
        successMessage: "API キーを失効しました"
      },
      restore_api_key: {
        label: "API キーを復元",
        confirmText: "この失効済み API キーを復元しますか？キーを保持する既存のクライアントはアクセスを回復します。",
        successMessage: "API キーを復元しました"
      }
    }
  },
  sys_two_factor: {
    label: "二要素認証",
    pluralLabel: "二要素認証資格情報",
    description: "二要素認証の資格情報",
    fields: {
      id: {
        label: "二要素認証 ID"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      },
      user_id: {
        label: "ユーザー"
      },
      secret: {
        label: "シークレット",
        help: "TOTP シークレットキー"
      },
      backup_codes: {
        label: "バックアップコード",
        help: "JSON シリアライズされたバックアップ回復コード"
      },
      verified: {
        label: "Verified",
        help: "Whether the enrollment was confirmed with a valid TOTP code (managed by better-auth)"
      }
    },
    _views: {
      mine: {
        label: "自分の登録"
      },
      all_enrollments: {
        label: "すべて"
      }
    },
    _actions: {
      enable_two_factor: {
        label: "2FA を有効化"
      },
      disable_two_factor: {
        label: "2FA を無効化",
        confirmText: "アカウントの二要素認証を無効化しますか？",
        successMessage: "2FA を無効化しました"
      },
      regenerate_backup_codes: {
        label: "バックアップコード再生成",
        confirmText: "バックアップコードを再生成しますか？以前のバックアップコードはすべて直ちに使用できなくなります。"
      }
    }
  },
  sys_device_code: {
    label: "デバイスコード",
    pluralLabel: "デバイスコード",
    description: "OAuth 2.0 デバイス認証グラント（RFC 8628）の保留中リクエスト",
    fields: {
      id: {
        label: "デバイスコード ID"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      },
      device_code: {
        label: "デバイスコード",
        help: "ポーリングデバイスに返されるエントロピーの高いトークン"
      },
      user_code: {
        label: "ユーザーコード",
        help: "短いユーザー向けコード（例: ABCD-EFGH）"
      },
      user_id: {
        label: "ユーザー",
        help: "デバイス認証を承認したユーザー"
      },
      expires_at: {
        label: "有効期限",
        help: "デバイスコードとユーザーコードが無効になる日時"
      },
      status: {
        label: "ステータス",
        help: "現在のステータス: 'pending' | 'approved' | 'denied'"
      },
      last_polled_at: {
        label: "最終ポーリング日時",
        help: "直近の /device/token ポーリングのタイムスタンプ"
      },
      polling_interval: {
        label: "ポーリング間隔（ミリ秒）",
        help: "サーバー推奨の最小ポーリング間隔（ミリ秒）"
      },
      client_id: {
        label: "クライアント ID",
        help: "リクエストデバイスの OAuth クライアント識別子"
      },
      scope: {
        label: "スコープ",
        help: "デバイスがリクエストするスペース区切りの OAuth スコープ"
      }
    }
  },
  sys_user_preference: {
    label: "ユーザー設定",
    pluralLabel: "ユーザー設定",
    description: "ユーザーごとのキー/バリュー設定（テーマ、ロケールなど）",
    fields: {
      id: {
        label: "設定 ID"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      },
      user_id: {
        label: "ユーザー",
        help: "この設定の所有者ユーザー"
      },
      key: {
        label: "キー",
        help: "設定キー（例: theme、locale、plugin.ai.auto_save）"
      },
      value: {
        label: "値",
        help: "設定値（JSON シリアライズ可能な任意の型）"
      }
    },
    _views: {
      mine: {
        label: "自分の設定"
      },
      by_user: {
        label: "ユーザー別"
      },
      all_preferences: {
        label: "すべて"
      }
    }
  },
  sys_oauth_application: {
    label: "OAuth アプリケーション",
    pluralLabel: "OAuth アプリケーション",
    description: "登録済み OAuth/OIDC クライアントアプリケーション",
    fields: {
      id: {
        label: "ID"
      },
      name: {
        label: "名前"
      },
      icon: {
        label: "アイコン",
        help: "同意画面に表示されるロゴ URL"
      },
      uri: {
        label: "ホーム URI",
        help: "登録済みクライアントの公開ホームページ"
      },
      contacts: {
        label: "連絡先",
        help: "連絡先メールアドレスの JSON シリアライズリスト"
      },
      tos: {
        label: "利用規約"
      },
      policy: {
        label: "プライバシーポリシー"
      },
      metadata: {
        label: "メタデータ",
        help: "JSON シリアライズされたアプリケーションメタデータ"
      },
      client_id: {
        label: "クライアント ID",
        help: "公開 OAuth クライアント識別子"
      },
      client_secret: {
        label: "クライアントシークレット",
        help: "OAuth クライアントシークレット（保存時にハッシュ/暗号化済み）"
      },
      redirect_uris: {
        label: "リダイレクト URI",
        help: "許可されたリダイレクト URI の JSON シリアライズリスト"
      },
      post_logout_redirect_uris: {
        label: "ログアウト後リダイレクト URI",
        help: "許可されたログアウト後リダイレクト URI の JSON シリアライズリスト"
      },
      type: {
        label: "クライアントタイプ",
        options: {
          web: "Web",
          native: "ネイティブ",
          useragentbased: "ユーザーエージェントベース",
          public: "公開"
        }
      },
      public: {
        label: "パブリッククライアント",
        help: "クライアントをパブリック（非機密）OAuth クライアントとしてマークします"
      },
      require_pkce: {
        label: "PKCE 必須"
      },
      token_endpoint_auth_method: {
        label: "トークンエンドポイント認証方式",
        help: "例: client_secret_basic、client_secret_post、none"
      },
      grant_types: {
        label: "グラントタイプ",
        help: "許可されたグラントタイプの JSON シリアライズリスト"
      },
      response_types: {
        label: "レスポンスタイプ",
        help: "許可されたレスポンスタイプの JSON シリアライズリスト"
      },
      scopes: {
        label: "許可スコープ",
        help: "クライアントがリクエスト可能なスコープの JSON シリアライズリスト"
      },
      subject_type: {
        label: "サブジェクトタイプ",
        help: "OIDC サブジェクトタイプ（例: public、pairwise）"
      },
      disabled: {
        label: "無効"
      },
      skip_consent: {
        label: "同意画面をスキップ",
        help: "信頼済みクライアントとして扱い、同意画面をバイパスします"
      },
      enable_end_session: {
        label: "エンドセッションを有効化",
        help: "クライアントが OIDC エンドセッションエンドポイントを呼び出せるようにします"
      },
      software_id: {
        label: "ソフトウェア ID"
      },
      software_version: {
        label: "ソフトウェアバージョン"
      },
      software_statement: {
        label: "ソフトウェアステートメント",
        help: "クライアントメタデータをアサートする署名済み JWT（RFC 7591 §2.3）"
      },
      user_id: {
        label: "所有者ユーザー",
        help: "このアプリケーションを登録したユーザー"
      },
      reference_id: {
        label: "参照 ID",
        help: "呼び出し元が指定した相関識別子"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    },
    _views: {
      mine: {
        label: "My Applications"
      },
      active: {
        label: "有効"
      },
      disabled_apps: {
        label: "無効"
      },
      all_apps: {
        label: "すべて"
      }
    },
    _actions: {
      disable_oauth_application: {
        label: "OAuthアプリケーションを無効化",
        confirmText: "このOAuthアプリケーションを無効化しますか？発行済みの有効なアクセストークン／リフレッシュトークンは、token、authorize、introspect の各エンドポイントで引き続き拒否されます。既存の連携は直ちに動作しなくなります。",
        successMessage: "OAuthアプリケーションを無効化しました"
      },
      enable_oauth_application: {
        label: "OAuthアプリケーションを有効化",
        confirmText: "このOAuthアプリケーションを再度有効化しますか？トークンの発行、認可、イントロスペクションが直ちに再開されます。",
        successMessage: "OAuthアプリケーションを有効化しました"
      },
      create_oauth_application: {
        label: "OAuthアプリケーションを登録"
      },
      rotate_client_secret: {
        label: "クライアントシークレット更新",
        confirmText: "このOAuthクライアントのシークレットをローテーションしますか？以前のシークレットは直ちに使用できなくなり、それを使用している連携は新しいシークレットに更新されるまで動作しなくなります。新しいシークレットは一度しか表示されません。"
      },
      delete_oauth_application: {
        label: "OAuthアプリケーションを削除",
        confirmText: "このOAuthアプリケーションを完全に削除しますか？発行済みのすべてのトークンと同意が無効化され、この client_id を使用している連携は直ちに動作しなくなります。この操作は元に戻せません。",
        successMessage: "OAuthアプリケーションを削除しました"
      }
    }
  },
  sys_oauth_access_token: {
    label: "OAuth アクセストークン",
    pluralLabel: "OAuth アクセストークン",
    description: "クライアントアプリケーションに発行された不透明な OAuth アクセストークン",
    fields: {
      id: {
        label: "ID"
      },
      token: {
        label: "トークン",
        help: "不透明なアクセストークン値"
      },
      client_id: {
        label: "クライアント ID",
        help: "sys_oauth_application.client_id への外部キー"
      },
      session_id: {
        label: "セッション",
        help: "sys_session.id への外部キー"
      },
      user_id: {
        label: "ユーザー",
        help: "sys_user.id への外部キー"
      },
      refresh_id: {
        label: "リフレッシュトークン",
        help: "sys_oauth_refresh_token.id への外部キー"
      },
      reference_id: {
        label: "参照 ID",
        help: "呼び出し元が指定した相関識別子"
      },
      scopes: {
        label: "スコープ",
        help: "このトークンに付与されたスコープの JSON シリアライズリスト"
      },
      expires_at: {
        label: "有効期限"
      },
      created_at: {
        label: "作成日時"
      }
    }
  },
  sys_oauth_refresh_token: {
    label: "OAuth リフレッシュトークン",
    pluralLabel: "OAuth リフレッシュトークン",
    description: "不透明な OAuth リフレッシュトークン（セッションにリンク）",
    fields: {
      id: {
        label: "ID"
      },
      token: {
        label: "トークン",
        help: "不透明なリフレッシュトークン値"
      },
      client_id: {
        label: "クライアント ID",
        help: "sys_oauth_application.client_id への外部キー"
      },
      session_id: {
        label: "セッション",
        help: "sys_session.id への外部キー"
      },
      user_id: {
        label: "ユーザー",
        help: "sys_user.id への外部キー"
      },
      reference_id: {
        label: "参照 ID",
        help: "呼び出し元が指定した相関識別子"
      },
      scopes: {
        label: "スコープ",
        help: "このトークンに付与されたスコープの JSON シリアライズリスト"
      },
      expires_at: {
        label: "有効期限"
      },
      created_at: {
        label: "作成日時"
      },
      revoked: {
        label: "失効日時",
        help: "このリフレッシュトークンが失効したタイムスタンプ"
      },
      auth_time: {
        label: "認証日時",
        help: "このトークンチェーンのためにユーザーが最初に認証した日時"
      }
    }
  },
  sys_oauth_consent: {
    label: "OAuth 同意",
    pluralLabel: "OAuth 同意",
    description: "OAuth クライアントアプリケーションに対するユーザー同意レコード",
    fields: {
      id: {
        label: "ID"
      },
      client_id: {
        label: "クライアント ID",
        help: "sys_oauth_application.client_id への外部キー"
      },
      user_id: {
        label: "ユーザー",
        help: "sys_user.id への外部キー"
      },
      reference_id: {
        label: "参照 ID",
        help: "呼び出し元が指定した相関識別子"
      },
      scopes: {
        label: "スコープ",
        help: "ユーザーが同意したスコープの JSON シリアライズリスト"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    }
  },
  sys_jwks: {
    label: "署名キー (JWKS)",
    pluralLabel: "署名キー (JWKS)",
    description: "発行済み JWT の署名および検証に使用する非対称鍵ペア",
    fields: {
      id: {
        label: "キー ID",
        help: "JWK `kid` 値"
      },
      public_key: {
        label: "公開鍵",
        help: "JSON シリアライズされた JWK 公開鍵"
      },
      private_key: {
        label: "秘密鍵",
        help: "JSON シリアライズされた JWK 秘密鍵（保存時に暗号化済み）"
      },
      created_at: {
        label: "作成日時"
      },
      expires_at: {
        label: "有効期限",
        help: "このキーがトークン検証に使用できなくなる日時"
      }
    }
  },
  sys_audit_log: {
    label: "監査ログ",
    pluralLabel: "監査ログ",
    description: "プラットフォームイベントの不変の監査証跡",
    fields: {
      created_at: {
        label: "タイムスタンプ"
      },
      action: {
        label: "アクション",
        help: "アクションタイプ（snake_case）",
        options: {
          create: "作成",
          update: "更新",
          delete: "削除",
          restore: "復元",
          login: "ログイン",
          logout: "ログアウト",
          permission_change: "権限変更",
          config_change: "構成変更",
          export: "エクスポート",
          import: "インポート"
        }
      },
      user_id: {
        label: "操作者",
        help: "アクションを実行したユーザー（システム操作の場合は null）"
      },
      object_name: {
        label: "オブジェクト",
        help: "対象オブジェクト（例: sys_user、project_task）"
      },
      record_id: {
        label: "レコード ID",
        help: "影響を受けたレコードの ID"
      },
      old_value: {
        label: "変更前の値",
        help: "JSON シリアライズされた以前の状態"
      },
      new_value: {
        label: "変更後の値",
        help: "JSON シリアライズされた新しい状態"
      },
      ip_address: {
        label: "IP アドレス"
      },
      user_agent: {
        label: "ユーザーエージェント"
      },
      tenant_id: {
        label: "テナント",
        help: "マルチテナント分離のためのテナントコンテキスト"
      },
      metadata: {
        label: "メタデータ",
        help: "JSON シリアライズされた追加コンテキスト"
      },
      id: {
        label: "監査ログ ID"
      }
    },
    _views: {
      recent: {
        label: "最近"
      },
      writes_only: {
        label: "書き込み"
      },
      auth_events: {
        label: "認証"
      },
      config_changes: {
        label: "構成変更"
      },
      all_events: {
        label: "すべて"
      }
    }
  },
  sys_presence: {
    label: "在席状況",
    pluralLabel: "在席状況",
    description: "リアルタイムのユーザー在席状況とアクティビティ追跡",
    fields: {
      id: {
        label: "在席 ID"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      },
      user_id: {
        label: "ユーザー"
      },
      session_id: {
        label: "セッション"
      },
      status: {
        label: "ステータス",
        options: {
          online: "オンライン",
          away: "離席中",
          busy: "取り込み中",
          offline: "オフライン"
        }
      },
      last_seen: {
        label: "最終確認日時"
      },
      current_location: {
        label: "現在地"
      },
      device: {
        label: "デバイス",
        options: {
          desktop: "デスクトップ",
          mobile: "モバイル",
          tablet: "タブレット",
          other: "その他"
        }
      },
      custom_status: {
        label: "カスタムステータス"
      },
      metadata: {
        label: "メタデータ",
        help: "在席状態に関連付けられた任意の JSON メタデータ（PresenceStateSchema.metadata に対応）。"
      }
    }
  },
  sys_activity: {
    label: "アクティビティ",
    pluralLabel: "アクティビティ",
    description: "最近のアクティビティストリームエントリ（軽量、非正規化）",
    fields: {
      id: {
        label: "アクティビティ ID"
      },
      timestamp: {
        label: "タイムスタンプ"
      },
      type: {
        label: "タイプ",
        options: {
          created: "作成",
          updated: "更新",
          deleted: "削除",
          commented: "コメント",
          mentioned: "メンション",
          shared: "共有",
          assigned: "割り当て",
          completed: "完了",
          login: "ログイン",
          logout: "ログアウト",
          system: "システム"
        }
      },
      summary: {
        label: "サマリー",
        help: "判別しやすい 1 行サマリー"
      },
      actor_id: {
        label: "操作者"
      },
      actor_name: {
        label: "操作者名"
      },
      actor_avatar_url: {
        label: "操作者アバター"
      },
      object_name: {
        label: "オブジェクト",
        help: "対象オブジェクトの短い名前（例: account、sys_user）"
      },
      record_id: {
        label: "レコード ID"
      },
      record_label: {
        label: "レコード表示名",
        help: "書き込み時点の対象レコードの表示名"
      },
      url: {
        label: "URL",
        help: "アクティビティターゲットへのオプションのディープリンク"
      },
      environment_id: {
        label: "プロジェクト",
        help: "プロジェクトコンテキスト（マルチプロジェクトデプロイメント）"
      },
      metadata: {
        label: "メタデータ",
        help: "JSON シリアライズされた追加コンテキスト"
      }
    }
  },
  sys_comment: {
    label: "コメント",
    pluralLabel: "コメント",
    description: "thread_id を介してレコードに添付されたスレッドコメント",
    fields: {
      id: {
        label: "コメント ID"
      },
      thread_id: {
        label: "スレッド",
        help: "スレッド識別子 — 通常は `{object}:{record_id}`（例: `sys_user:abc123`）"
      },
      parent_id: {
        label: "親コメント",
        help: "ネストした返信用のオプションの親コメント"
      },
      reply_count: {
        label: "返信数"
      },
      author_id: {
        label: "投稿者"
      },
      author_name: {
        label: "投稿者名"
      },
      author_avatar_url: {
        label: "投稿者アバター"
      },
      body: {
        label: "本文",
        help: "コメントテキスト（Markdown 対応）"
      },
      mentions: {
        label: "メンション",
        help: "@メンションオブジェクトの JSON 配列"
      },
      reactions: {
        label: "リアクション",
        help: "絵文字リアクションオブジェクトの JSON 配列"
      },
      is_edited: {
        label: "編集済み"
      },
      edited_at: {
        label: "編集日時"
      },
      visibility: {
        label: "公開範囲",
        options: {
          public: "公開",
          internal: "内部",
          private: "非公開"
        }
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    }
  },
  sys_attachment: {
    label: "添付ファイル",
    pluralLabel: "添付ファイル",
    description: "sys_file と他のレコードを結ぶポリモーフィックリンク",
    fields: {
      id: {
        label: "添付ファイル ID"
      },
      parent_object: {
        label: "親オブジェクト",
        help: "添付先レコードの短いオブジェクト名（例: account、lead）"
      },
      parent_id: {
        label: "親レコード",
        help: "添付先レコードの主キー"
      },
      file_id: {
        label: "ファイル",
        help: "添付する sys_file ストレージエントリ"
      },
      file_name: {
        label: "ファイル名",
        help: "リスト表示の高速化のための sys_file.name の非正規化コピー"
      },
      mime_type: {
        label: "MIME タイプ"
      },
      size: {
        label: "サイズ（バイト）"
      },
      share_type: {
        label: "共有タイプ",
        help: "viewer | collaborator | inferred（親レコードから継承）",
        options: {
          viewer: "閲覧者",
          collaborator: "共同編集者",
          inferred: "推定"
        }
      },
      visibility: {
        label: "公開範囲",
        options: {
          internal: "内部",
          all_users: "すべてのユーザー",
          shared_users: "共有ユーザー"
        }
      },
      uploaded_by: {
        label: "アップロード者"
      },
      description: {
        label: "説明"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    }
  },
  sys_notification: {
    label: "通知",
    pluralLabel: "通知",
    description: "ユーザーごとの通知受信ボックスエントリ",
    fields: {
      id: {
        label: "通知 ID"
      },
      topic: {
        label: "Topic",
        help: "Notification topic, e.g. task.assigned, collab.mention"
      },
      payload: {
        label: "Payload",
        help: "Template inputs carried to channels (title/body/url/actor/source/…)"
      },
      severity: {
        label: "Severity",
        help: "Severity hint for rendering / filtering",
        options: {
          info: "info",
          warning: "warning",
          critical: "critical"
        }
      },
      dedup_key: {
        label: "Dedup Key",
        help: "Idempotency key within a topic window; a repeat emit is a no-op"
      },
      source_object: {
        label: "ソースオブジェクト",
        help: "関連レコードのオブジェクト名（例: lead、opportunity）"
      },
      source_id: {
        label: "ソースレコード",
        help: "source_object 内のレコード ID"
      },
      actor_id: {
        label: "操作者",
        help: "通知を引き起こしたユーザー（メンション者、担当者）"
      },
      created_at: {
        label: "作成日時"
      }
    },
    _views: {
      recent: {
        label: "Recent"
      },
      by_topic: {
        label: "By Topic"
      }
    }
  },
  sys_email: {
    label: "メール",
    pluralLabel: "メール",
    description: "送信メール配信ログ",
    fields: {
      id: {
        label: "メール ID"
      },
      message_id: {
        label: "Message-ID",
        help: "トランスポートが割り当てる RFC-5322 Message-ID"
      },
      from_address: {
        label: "送信元"
      },
      to_addresses: {
        label: "宛先",
        help: "カンマ区切りの受信者アドレス"
      },
      cc_addresses: {
        label: "Cc"
      },
      bcc_addresses: {
        label: "Bcc"
      },
      reply_to: {
        label: "Reply-To"
      },
      subject: {
        label: "件名"
      },
      body_text: {
        label: "本文（テキスト）"
      },
      body_html: {
        label: "本文（HTML）"
      },
      status: {
        label: "ステータス",
        help: "ライフサイクル状態 — トランスポート呼び出し前に IEmailService.send がキューに入れます",
        options: {
          queued: "キュー済み",
          sent: "送信済み",
          failed: "失敗"
        }
      },
      error: {
        label: "エラー",
        help: "status=failed 時のトランスポートエラーメッセージ"
      },
      attempt_count: {
        label: "試行回数",
        help: "サービスが実行した配信試行回数"
      },
      sent_at: {
        label: "送信日時",
        help: "ステータスが \"sent\" に遷移したときに設定されます"
      },
      related_object: {
        label: "関連オブジェクト",
        help: "関連レコードのオブジェクト名（例: lead、opportunity）"
      },
      related_id: {
        label: "関連レコード",
        help: "related_object 内のレコード ID"
      },
      sent_by: {
        label: "送信者"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    }
  },
  sys_email_template: {
    label: "メールテンプレート",
    pluralLabel: "メールテンプレート",
    description: "送信メールテンプレート（件名 + 本文 + 変数）を名前+ロケールで解決",
    fields: {
      id: {
        label: "ID"
      },
      name: {
        label: "名前",
        help: "ドット区切り snake_case 識別子（例: auth.password_reset）"
      },
      label: {
        label: "表示名",
        help: "Studio に表示される表示名"
      },
      category: {
        label: "カテゴリー",
        options: {
          auth: "認証",
          notification: "通知",
          workflow: "ワークフロー",
          marketing: "マーケティング",
          custom: "カスタム"
        }
      },
      locale: {
        label: "ロケール",
        help: "BCP-47 ロケールタグ（en-US、zh-CN など）"
      },
      description: {
        label: "説明"
      },
      subject: {
        label: "件名",
        help: "件名テンプレート。{{var.path}} プレースホルダーに対応"
      },
      body_html: {
        label: "HTML 本文",
        help: "HTML 本文テンプレート。{{var.path}} プレースホルダーに対応"
      },
      body_text: {
        label: "プレーンテキスト本文",
        help: "オプションのプレーンテキスト代替（空白の場合は HTML から自動生成）"
      },
      from_name: {
        label: "送信者名"
      },
      from_address: {
        label: "送信者アドレス"
      },
      reply_to: {
        label: "Reply-To"
      },
      active: {
        label: "有効"
      },
      is_system: {
        label: "システムテンプレート",
        help: "プラグイン/プラットフォームが提供。テナントは編集可能ですが削除は推奨しません"
      },
      variables_json: {
        label: "変数（JSON）",
        help: "{name,type,required,description} の JSON 配列"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    }
  },
  sys_saved_report: {
    label: "保存済みレポート",
    pluralLabel: "保存済みレポート",
    description: "永続化された ObjectQL レポート定義 — 再実行およびスケジュール可能",
    fields: {
      id: {
        label: "レポート ID"
      },
      name: {
        label: "名前"
      },
      description: {
        label: "説明"
      },
      object_name: {
        label: "オブジェクト",
        help: "レポートがクエリするオブジェクトの短い名前"
      },
      query_json: {
        label: "クエリ",
        help: "ObjectQL クエリエンベロープ — { filter, fields, orderBy, limit, groupBy }"
      },
      format: {
        label: "フォーマット",
        help: "IReportService.run() とメールダイジェストで使用するレンダリング",
        options: {
          csv: "CSV",
          json: "JSON",
          html_table: "HTML テーブル"
        }
      },
      owner_id: {
        label: "所有者",
        help: "レポート定義を所有するユーザー（共有を促進）"
      },
      last_run_at: {
        label: "最終実行",
        help: "正常実行時に IReportService.run() がスタンプします"
      },
      last_row_count: {
        label: "最終行数"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    }
  },
  sys_report_schedule: {
    label: "レポートスケジュール",
    pluralLabel: "レポートスケジュール",
    description: "sys_saved_report のメールによる定期配信",
    fields: {
      id: {
        label: "スケジュール ID"
      },
      report_id: {
        label: "レポート"
      },
      name: {
        label: "名前",
        help: "ダイジェストの任意の表示名 — メール件名で使用"
      },
      interval_minutes: {
        label: "間隔（分）",
        help: "送信頻度（1440 = 毎日、10080 = 毎週）"
      },
      cron_expression: {
        label: "Cron 式",
        help: "オプションの 5/6 フィールド Cron — 存在する場合 interval_minutes を上書き"
      },
      timezone: {
        label: "タイムゾーン"
      },
      active: {
        label: "有効"
      },
      recipients: {
        label: "受信者",
        help: "カンマ区切りのメールアドレス"
      },
      format: {
        label: "フォーマット",
        help: "レンダリング形式 — CSV は添付、HTML テーブルはインライン",
        options: {
          csv: "CSV",
          html_table: "HTML テーブル"
        }
      },
      subject_template: {
        label: "件名テンプレート",
        help: "メール件名。{{name}} / {{date}} / {{rows}} が置換されます"
      },
      owner_id: {
        label: "所有者"
      },
      next_run_at: {
        label: "次回実行",
        help: "next_run_at <= 現在時刻のスケジュールをディスパッチャーが読み込みます"
      },
      last_sent_at: {
        label: "最終送信日時"
      },
      last_status: {
        label: "最終ステータス",
        options: {
          ok: "正常",
          failed: "失敗",
          skipped: "スキップ"
        }
      },
      last_error: {
        label: "最終エラー"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    }
  },
  sys_job: {
    label: "ジョブ",
    pluralLabel: "ジョブ",
    description: "登録済みバックグラウンドジョブのカタログ",
    fields: {
      id: {
        label: "ジョブ ID"
      },
      name: {
        label: "ジョブ名",
        help: "一意のジョブ識別子（snake_case）"
      },
      schedule_type: {
        label: "スケジュールタイプ",
        options: {
          cron: "Cron",
          interval: "間隔",
          once: "1回"
        }
      },
      schedule_expression: {
        label: "式",
        help: "Cron 式 / 間隔ミリ秒 / ISO 日時"
      },
      timezone: {
        label: "タイムゾーン"
      },
      active: {
        label: "有効",
        help: "スケジューラが現在このジョブを実行中かどうか"
      },
      last_run_at: {
        label: "最終実行日時"
      },
      last_status: {
        label: "最終ステータス",
        options: {
          success: "成功",
          failed: "失敗",
          timeout: "タイムアウト",
          running: "実行中"
        }
      },
      last_error: {
        label: "最終エラー"
      },
      run_count: {
        label: "実行回数"
      },
      failure_count: {
        label: "失敗回数"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    }
  },
  sys_job_run: {
    label: "ジョブ実行",
    pluralLabel: "ジョブ実行",
    description: "バックグラウンドジョブ実行の監査証跡",
    fields: {
      id: {
        label: "実行 ID"
      },
      job_name: {
        label: "ジョブ"
      },
      status: {
        label: "ステータス",
        options: {
          running: "実行中",
          success: "成功",
          failed: "失敗",
          timeout: "タイムアウト"
        }
      },
      started_at: {
        label: "開始日時"
      },
      completed_at: {
        label: "完了日時"
      },
      duration_ms: {
        label: "所要時間（ミリ秒）"
      },
      attempt: {
        label: "試行回数",
        help: "初回実行は 1、再試行/再実行は 1 超"
      },
      trigger: {
        label: "トリガー",
        options: {
          schedule: "スケジュール",
          manual: "手動",
          replay: "再実行"
        }
      },
      error: {
        label: "エラー"
      },
      created_at: {
        label: "作成日時"
      }
    }
  },
  sys_job_queue: {
    label: "ジョブキュー",
    pluralLabel: "ジョブキュー",
    description: "デッドレター含む耐久性のあるジョブ/メッセージキュー",
    fields: {
      id: {
        label: "メッセージ ID"
      },
      queue: {
        label: "キュー",
        help: "論理キュー名（snake_case）"
      },
      idempotency_key: {
        label: "冪等キー",
        help: "（キュー、ウィンドウ）内の重複排除キー"
      },
      payload_json: {
        label: "ペイロード（JSON）",
        help: "シリアライズされたメッセージ本体"
      },
      metadata_json: {
        label: "メタデータ（JSON）",
        help: "シリアライズされたメタデータバッグ（tenant_id、source_record など）"
      },
      status: {
        label: "ステータス",
        help: "ライフサイクル状態",
        options: {
          pending: "保留中",
          running: "実行中",
          completed: "完了",
          failed: "失敗",
          dlq: "デッドレター"
        }
      },
      priority: {
        label: "優先度",
        help: "値が小さいほど優先度が高い"
      },
      attempts: {
        label: "試行回数"
      },
      max_attempts: {
        label: "最大試行回数"
      },
      backoff_type: {
        label: "バックオフ",
        options: {
          fixed: "固定",
          exponential: "指数"
        }
      },
      backoff_delay_ms: {
        label: "バックオフ基本値（ミリ秒）"
      },
      backoff_max_delay_ms: {
        label: "バックオフ上限（ミリ秒）"
      },
      scheduled_for: {
        label: "スケジュール日時",
        help: "ワーカーがこのメッセージをリースできる最早時刻"
      },
      locked_by: {
        label: "ロック者",
        help: "リースを保持しているワーカー ID"
      },
      locked_until: {
        label: "ロック期限",
        help: "リース有効期限。過去の場合、別ワーカーがクレーム可能"
      },
      last_error: {
        label: "最終エラー"
      },
      completed_at: {
        label: "完了日時"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      }
    }
  },
  sys_metadata: {
    label: "システムメタデータ",
    pluralLabel: "システムメタデータ",
    description: "オブジェクト・ビュー・フローなどのプラットフォームおよびユーザースコープのメタデータレコードを保存",
    fields: {
      id: {
        label: "ID"
      },
      name: {
        label: "名前"
      },
      type: {
        label: "メタデータタイプ"
      },
      namespace: {
        label: "名前空間"
      },
      package_id: {
        label: "パッケージ ID",
        help: "レガシーパッケージマニフェスト ID 文字列。新規レコードには package_version_id を使用してください。"
      },
      package_version_id: {
        label: "パッケージバージョン",
        help: "sys_package_version への外部キー（UUID）。null = プラットフォーム組み込みまたは環境レベルの上書き。"
      },
      managed_by: {
        label: "管理者",
        options: {
          package: "パッケージ",
          platform: "プラットフォーム",
          user: "ユーザー"
        }
      },
      scope: {
        label: "スコープ",
        options: {
          system: "システム",
          platform: "プラットフォーム",
          user: "ユーザー"
        }
      },
      metadata: {
        label: "メタデータ",
        help: "JSON シリアライズされたメタデータペイロード"
      },
      extends: {
        label: "継承元"
      },
      strategy: {
        label: "マージ戦略",
        options: {
          merge: "マージ",
          replace: "置換"
        }
      },
      owner: {
        label: "所有者"
      },
      state: {
        label: "状態",
        options: {
          draft: "下書き",
          active: "有効",
          archived: "アーカイブ済み",
          deprecated: "非推奨"
        }
      },
      organization_id: {
        label: "組織",
        help: "マルチテナント分離のための組織。"
      },
      environment_id: {
        label: "プロジェクト（非推奨）",
        help: "非推奨。テナント分離には organization_id を使用してください。"
      },
      version: {
        label: "バージョン"
      },
      checksum: {
        label: "チェックサム"
      },
      source: {
        label: "ソース",
        options: {
          filesystem: "ファイルシステム",
          database: "データベース",
          api: "API",
          migration: "マイグレーション"
        }
      },
      tags: {
        label: "タグ",
        help: "分類タグの JSON シリアライズ配列"
      },
      created_by: {
        label: "作成者"
      },
      created_at: {
        label: "作成日時"
      },
      updated_by: {
        label: "更新者"
      },
      updated_at: {
        label: "更新日時"
      }
    },
    _views: {
      only_objects: {
        label: "オブジェクト"
      },
      only_fields: {
        label: "フィールド"
      },
      all_metadata: {
        label: "すべて"
      }
    }
  },
  sys_metadata_history: {
    label: "メタデータ履歴",
    pluralLabel: "メタデータ履歴",
    description: "メタデータ変更のバージョン履歴および監査証跡",
    fields: {
      id: {
        label: "ID"
      },
      event_seq: {
        label: "イベントシーケンス",
        help: "組織ごとの単調増加するイベントログカーソル。"
      },
      name: {
        label: "名前"
      },
      type: {
        label: "メタデータタイプ"
      },
      version: {
        label: "バージョン"
      },
      operation_type: {
        label: "操作タイプ",
        options: {
          create: "作成",
          update: "更新",
          publish: "公開",
          revert: "ロールバック",
          delete: "削除"
        }
      },
      metadata: {
        label: "メタデータ",
        help: "このバージョン時点の JSON シリアライズされたメタデータスナップショット"
      },
      checksum: {
        label: "チェックサム"
      },
      previous_checksum: {
        label: "直前のチェックサム"
      },
      change_note: {
        label: "変更メモ",
        help: "このバージョンで変更された内容の説明"
      },
      source: {
        label: "ソース"
      },
      organization_id: {
        label: "組織",
        help: "マルチテナント分離のための組織。"
      },
      recorded_by: {
        label: "記録者"
      },
      recorded_at: {
        label: "記録日時"
      }
    }
  },
  sys_view_definition: {
    label: "ビュー定義",
    pluralLabel: "ビュー定義",
    description: "実行時に作成されたビュー定義（共有／個人レイヤー）。パッケージレイヤーはソースから提供されます。",
    fields: {
      id: {
        label: "ID"
      },
      name: {
        label: "名前"
      },
      object: {
        label: "オブジェクト"
      },
      view_kind: {
        label: "ビュー種別",
        options: {
          list: "リスト",
          form: "フォーム"
        }
      },
      label: {
        label: "ラベル"
      },
      is_default: {
        label: "デフォルト"
      },
      view_order: {
        label: "並び順"
      },
      scope: {
        label: "スコープ",
        options: {
          shared: "共有",
          personal: "個人"
        }
      },
      owner: {
        label: "所有者"
      },
      hidden: {
        label: "非表示"
      },
      config: {
        label: "構成",
        help: "ListView または FormView の構成（仕様の ViewItem.config に対応）。"
      },
      organization_id: {
        label: "組織",
        help: "マルチテナント分離のための組織。"
      },
      state: {
        label: "状態",
        options: {
          draft: "下書き",
          active: "有効",
          archived: "アーカイブ済み"
        }
      },
      created_by: {
        label: "作成者"
      },
      created_at: {
        label: "作成日時"
      },
      updated_by: {
        label: "更新者"
      },
      updated_at: {
        label: "更新日時"
      }
    }
  },
  sys_metadata_audit: {
    label: "メタデータ監査",
    pluralLabel: "メタデータ監査",
    description: "メタデータ書き込み決定の追記専用監査証跡（ADR-0010）。",
    fields: {
      id: {
        label: "ID"
      },
      occurred_at: {
        label: "発生日時"
      },
      actor: {
        label: "実行主体",
        help: "操作を行った主体——ユーザー ID、システム ID、または \"system\"。"
      },
      source: {
        label: "ソース"
      },
      type: {
        label: "メタデータ種別"
      },
      name: {
        label: "名前"
      },
      organization_id: {
        label: "組織"
      },
      operation: {
        label: "操作",
        options: {
          save: "保存",
          publish: "公開",
          rollback: "ロールバック",
          delete: "削除",
          reset: "リセット"
        }
      },
      outcome: {
        label: "結果",
        options: {
          allowed: "許可",
          denied: "拒否",
          forced: "強制"
        }
      },
      code: {
        label: "コード"
      },
      lock_state: {
        label: "ロック状態",
        options: {
          none: "なし",
          nooverlay: "no-overlay",
          nodelete: "no-delete",
          full: "完全ロック"
        }
      },
      lock_overridden: {
        label: "ロックの上書き"
      },
      request_id: {
        label: "リクエスト ID"
      },
      note: {
        label: "メモ"
      }
    }
  },
  sys_setting: {
    label: "設定",
    pluralLabel: "設定",
    description: "SettingsManifest コントラクトを支える汎用 K/V ストア。",
    fields: {
      id: {
        label: "設定 ID"
      },
      created_at: {
        label: "作成日時"
      },
      updated_at: {
        label: "更新日時"
      },
      namespace: {
        label: "名前空間",
        help: "マニフェスト名前空間（例: mail、branding、feature_flags）。"
      },
      key: {
        label: "キー",
        help: "名前空間内の識別キー（snake_case）。"
      },
      scope: {
        label: "スコープ",
        help: "この行が属する設定解決階層のレイヤー。",
        options: {
          global: "グローバル",
          tenant: "テナント",
          user: "ユーザー",
          runtime: "ランタイム"
        }
      },
      user_id: {
        label: "ユーザー",
        help: "scope=user の場合のオーナーユーザー。それ以外は null。"
      },
      value: {
        label: "値",
        help: "JSON エンコードされた値。encrypted=true の場合は null（value_enc 参照）。"
      },
      encrypted: {
        label: "暗号化",
        help: "true の場合、値は value_enc に保存時暗号化されており、value カラムは null。"
      },
      locked: {
        label: "ロック済み",
        help: "true の場合、下位スコープの行はこの値を上書きできず、下位スコープへの書き込みは 409 を返します。プラットフォーム管理者がすべてのテナントにグローバル値を固定するために使用します（フェーズ 2 カスケード）。"
      },
      locked_reason: {
        label: "ロック理由",
        help: "locked=true の場合に UI ツールチップに表示される人間向けの説明。"
      },
      value_enc: {
        label: "暗号化済み値",
        help: "暗号文ペイロード（KMS ラップ済み）。encrypted=true の場合のみ設定。"
      },
      updated_by: {
        label: "更新者",
        help: "SettingsService.set() 経由でこの行を最後に書き込んだ操作者。"
      }
    },
    _views: {
      by_namespace: {
        label: "名前空間別"
      },
      tenant_only: {
        label: "テナント"
      },
      user_only: {
        label: "ユーザー"
      },
      all_settings: {
        label: "すべて"
      }
    }
  },
  sys_secret: {
    label: "シークレット",
    pluralLabel: "シークレット",
    description: "sys_setting ハンドルが参照する暗号ストア。平文は保持しません。",
    fields: {
      id: {
        label: "ID",
        help: "`sys_setting.value_enc` が参照する不透明なハンドル。"
      },
      created_at: {
        label: "作成日時",
        help: "暗号が最初に書き込まれた日時。"
      },
      rotated_at: {
        label: "ローテーション日時",
        help: "暗号が新しい KMS キーで最後に再ラップされた日時。"
      },
      namespace: {
        label: "名前空間",
        help: "このシークレットが属する設定名前空間。"
      },
      key: {
        label: "キー",
        help: "名前空間内の識別キー。"
      },
      kms_key_id: {
        label: "KMS キー ID",
        help: "外部 KMS ハンドル（ARN、GCP リソース ID、または `local`）。"
      },
      alg: {
        label: "アルゴリズム",
        help: "暗号 / AEAD アルゴリズムタグ。"
      },
      version: {
        label: "バージョン",
        help: "rotateKey() でこの行が再ラップされるたびに増加。"
      },
      ciphertext: {
        label: "暗号文",
        help: "プロバイダーエンコードされた暗号文 blob（base64 / JSON）。実装定義のため、対応する ICryptoProvider のみが読み取り可能。"
      }
    }
  },
  sys_setting_audit: {
    label: "設定監査エントリ",
    pluralLabel: "設定監査",
    description: "SettingsService の変更に関する追記専用監査証跡。",
    fields: {
      id: {
        label: "ID"
      },
      created_at: {
        label: "作成日時",
        help: "変更が記録された日時。"
      },
      namespace: {
        label: "名前空間"
      },
      key: {
        label: "キー"
      },
      scope: {
        label: "スコープ",
        help: "行が書き込まれたカスケードレイヤー。",
        options: {
          global: "グローバル",
          tenant: "テナント",
          user: "ユーザー"
        }
      },
      action: {
        label: "アクション",
        help: "変更の種別。",
        options: {
          set: "設定",
          reset: "リセット",
          lock: "ロック",
          unlock: "ロック解除",
          rotate: "ローテーション"
        }
      },
      actor_id: {
        label: "操作者",
        help: "変更を行ったユーザー。システムジョブの場合は null。"
      },
      source: {
        label: "ソース",
        help: "変更のエントリポイント。",
        options: {
          ui: "UI",
          api: "API",
          migration: "マイグレーション",
          import: "インポート",
          system: "システム"
        }
      },
      reason: {
        label: "理由",
        help: "操作者が提供した自由記述の理由（任意）。"
      },
      old_hash: {
        label: "変更前ハッシュ",
        help: "変更前の値の SHA-256（正規化済み）。未設定の場合は null。"
      },
      new_hash: {
        label: "変更後ハッシュ",
        help: "新しい値の SHA-256（正規化済み）。リセット時は null。"
      },
      encrypted: {
        label: "暗号化",
        help: "フィールドが機密情報を含む場合は true（ローテーションが重要）。"
      },
      request_id: {
        label: "リクエスト ID",
        help: "sys_audit_log / トレーシングとの相関用。"
      }
    }
  }
};
