Files
git.stella-ops.org/src/Cli/StellaOps.Cli/Services/IOrchestratorClient.cs
master d1cbb905f8
Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
AOC Guard CI / aoc-guard (push) Has been cancelled
AOC Guard CI / aoc-verify (push) Has been cancelled
Concelier Attestation Tests / attestation-tests (push) Has been cancelled
Policy Lint & Smoke / policy-lint (push) Has been cancelled
up
2025-11-28 18:21:46 +02:00

103 lines
2.8 KiB
C#

using System.Threading;
using System.Threading.Tasks;
using StellaOps.Cli.Services.Models;
namespace StellaOps.Cli.Services;
/// <summary>
/// Client for orchestrator API operations.
/// Per CLI-ORCH-32-001.
/// </summary>
internal interface IOrchestratorClient
{
/// <summary>
/// Lists sources matching the query.
/// </summary>
Task<SourceListResponse> ListSourcesAsync(
SourceListRequest request,
CancellationToken cancellationToken);
/// <summary>
/// Gets a source by ID.
/// </summary>
Task<OrchestratorSource?> GetSourceAsync(
string sourceId,
string? tenant,
CancellationToken cancellationToken);
/// <summary>
/// Pauses a source.
/// </summary>
Task<SourceOperationResult> PauseSourceAsync(
SourcePauseRequest request,
CancellationToken cancellationToken);
/// <summary>
/// Resumes a paused source.
/// </summary>
Task<SourceOperationResult> ResumeSourceAsync(
SourceResumeRequest request,
CancellationToken cancellationToken);
/// <summary>
/// Tests a source connection.
/// </summary>
Task<SourceTestResult> TestSourceAsync(
SourceTestRequest request,
CancellationToken cancellationToken);
// CLI-ORCH-34-001: Backfill operations
/// <summary>
/// Starts a backfill operation for a source.
/// </summary>
Task<BackfillResult> StartBackfillAsync(
BackfillRequest request,
CancellationToken cancellationToken);
/// <summary>
/// Gets the status of a backfill operation.
/// </summary>
Task<BackfillResult?> GetBackfillAsync(
string backfillId,
string? tenant,
CancellationToken cancellationToken);
/// <summary>
/// Lists backfill operations.
/// </summary>
Task<BackfillListResponse> ListBackfillsAsync(
BackfillListRequest request,
CancellationToken cancellationToken);
/// <summary>
/// Cancels a running backfill operation.
/// </summary>
Task<SourceOperationResult> CancelBackfillAsync(
BackfillCancelRequest request,
CancellationToken cancellationToken);
// CLI-ORCH-34-001: Quota management
/// <summary>
/// Gets quotas for a tenant/source.
/// </summary>
Task<QuotaGetResponse> GetQuotasAsync(
QuotaGetRequest request,
CancellationToken cancellationToken);
/// <summary>
/// Sets a quota limit.
/// </summary>
Task<QuotaOperationResult> SetQuotaAsync(
QuotaSetRequest request,
CancellationToken cancellationToken);
/// <summary>
/// Resets a quota's usage counter.
/// </summary>
Task<QuotaOperationResult> ResetQuotaAsync(
QuotaResetRequest request,
CancellationToken cancellationToken);
}