// SPDX-FileCopyrightText: 2026 FocusFlow contributors
// SPDX-License-Identifier: AGPL-3.0-only

part of '../../persistence_contract.dart';

/// Stable repository query identifiers for index coverage tests.
abstract final class RepositoryQueryNames {
  /// Shared constant value for `taskById`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const taskById = 'TaskRepository.findById';

  /// Shared constant value for `taskByOwner`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const taskByOwner = 'TaskRepository.findByOwner';

  /// Shared constant value for `taskByStatus`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const taskByStatus = 'TaskRepository.findByStatus';

  /// Shared constant value for `taskByProject`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const taskByProject = 'TaskRepository.findByProjectId';

  /// Shared constant value for `taskByParent`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const taskByParent = 'TaskRepository.findByParentTaskId';

  /// Shared constant value for `taskBacklogCandidates`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const taskBacklogCandidates = 'TaskRepository.findBacklogCandidates';

  /// Shared constant value for `taskScheduledWindow`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const taskScheduledWindow =
      'TaskRepository.findScheduledInWindowForOwner';

  /// Shared constant value for `taskLocalDay`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const taskLocalDay = 'TaskRepository.findForLocalDay';

  /// Shared constant value for `projectByOwner`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const projectByOwner = 'ProjectRepository.findByOwner';

  /// Shared constant value for `projectById`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const projectById = 'ProjectRepository.findById';

  /// Shared constant value for `lockedBlockByOwner`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const lockedBlockByOwner = 'LockedBlockRepository.findBlocksByOwner';

  /// Shared constant value for `lockedBlockById`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const lockedBlockById = 'LockedBlockRepository.findBlockById';

  /// Shared constant value for `lockedOverrideByDate`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const lockedOverrideByDate =
      'LockedBlockRepository.findOverridesForDate';

  /// Shared constant value for `taskActivityByOwner`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const taskActivityByOwner = 'TaskActivityRepository.findByOwner';

  /// Shared constant value for `taskActivityByOperation`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const taskActivityByOperation =
      'TaskActivityRepository.findByOperationId';

  /// Shared constant value for `taskActivityByTask`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const taskActivityByTask = 'TaskActivityRepository.findByTaskId';

  /// Shared constant value for `taskActivityByProject`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const taskActivityByProject = 'TaskActivityRepository.findByProjectId';

  /// Shared constant value for `projectStatisticsByProject`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const projectStatisticsByProject =
      'ProjectStatisticsRepository.findByProjectId';

  /// Shared constant value for `ownerSettingsByOwner`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const ownerSettingsByOwner = 'OwnerSettingsRepository.findByOwnerId';

  /// Shared constant value for `noticeAcknowledgementByOwner`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const noticeAcknowledgementByOwner =
      'NoticeAcknowledgementRepository.findByOwner';

  /// Shared constant value for `noticeAcknowledgementById`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const noticeAcknowledgementById =
      'NoticeAcknowledgementRepository.findById';

  /// Shared constant value for `operationByIdempotencyKey`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const operationByIdempotencyKey =
      'ApplicationOperationRepository.findByIdempotencyKey';

  /// Shared constant value for `schedulingSnapshotById`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const schedulingSnapshotById = 'SchedulingSnapshotRepository.findById';

  /// Shared constant value for `schedulingSnapshotWindow`.
  /// The constant gives this repeated scheduler or UI value one documented source of truth instead of scattering literals across call sites.
  static const schedulingSnapshotWindow =
      'SchedulingSnapshotRepository.findInWindow';
}
