ui progressing
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace StellaOps.Platform.WebService.Contracts;
|
||||
|
||||
public sealed record PlatformContextRegion(
|
||||
string RegionId,
|
||||
string DisplayName,
|
||||
int SortOrder,
|
||||
bool Enabled = true);
|
||||
|
||||
public sealed record PlatformContextEnvironment(
|
||||
string EnvironmentId,
|
||||
string RegionId,
|
||||
string EnvironmentType,
|
||||
string DisplayName,
|
||||
int SortOrder,
|
||||
bool Enabled = true);
|
||||
|
||||
public sealed record PlatformContextPreferences(
|
||||
string TenantId,
|
||||
string ActorId,
|
||||
IReadOnlyList<string> Regions,
|
||||
IReadOnlyList<string> Environments,
|
||||
string TimeWindow,
|
||||
DateTimeOffset UpdatedAt,
|
||||
string UpdatedBy);
|
||||
|
||||
public sealed record PlatformContextPreferencesRequest(
|
||||
IReadOnlyList<string>? Regions,
|
||||
IReadOnlyList<string>? Environments,
|
||||
string? TimeWindow);
|
||||
@@ -0,0 +1,38 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace StellaOps.Platform.WebService.Contracts;
|
||||
|
||||
public sealed record IntegrationFeedProjection(
|
||||
string SourceId,
|
||||
string SourceName,
|
||||
string SourceType,
|
||||
string Provider,
|
||||
string Region,
|
||||
string Environment,
|
||||
string Status,
|
||||
string Freshness,
|
||||
DateTimeOffset? LastSyncAt,
|
||||
int? FreshnessMinutes,
|
||||
int SlaMinutes,
|
||||
DateTimeOffset? LastSuccessAt,
|
||||
string? LastError,
|
||||
IReadOnlyList<string> ConsumerDomains);
|
||||
|
||||
public sealed record IntegrationVexSourceProjection(
|
||||
string SourceId,
|
||||
string SourceName,
|
||||
string SourceType,
|
||||
string Provider,
|
||||
string Region,
|
||||
string Environment,
|
||||
string Status,
|
||||
string Freshness,
|
||||
DateTimeOffset? LastSyncAt,
|
||||
int? FreshnessMinutes,
|
||||
int SlaMinutes,
|
||||
string StatementFormat,
|
||||
int DocumentCount24h,
|
||||
DateTimeOffset? LastSuccessAt,
|
||||
string? LastError,
|
||||
IReadOnlyList<string> ConsumerDomains);
|
||||
@@ -0,0 +1,285 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace StellaOps.Platform.WebService.Contracts;
|
||||
|
||||
public sealed record ReleaseGateSummary(
|
||||
string Status,
|
||||
int BlockingCount,
|
||||
int PendingApprovals,
|
||||
IReadOnlyList<string> BlockingReasons);
|
||||
|
||||
public sealed record ReleaseRiskSummary(
|
||||
int CriticalReachable,
|
||||
int HighReachable,
|
||||
string Trend);
|
||||
|
||||
public sealed record ReleaseProjection(
|
||||
string ReleaseId,
|
||||
string Slug,
|
||||
string Name,
|
||||
string ReleaseType,
|
||||
string Status,
|
||||
string? TargetEnvironment,
|
||||
string? TargetRegion,
|
||||
int TotalVersions,
|
||||
int? LatestVersionNumber,
|
||||
string? LatestVersionDigest,
|
||||
DateTimeOffset CreatedAt,
|
||||
DateTimeOffset UpdatedAt,
|
||||
DateTimeOffset? LatestPublishedAt,
|
||||
ReleaseGateSummary Gate,
|
||||
ReleaseRiskSummary Risk);
|
||||
|
||||
public sealed record ReleaseDetailProjection(
|
||||
ReleaseProjection Summary,
|
||||
IReadOnlyList<ReleaseControlBundleVersionSummary> Versions,
|
||||
IReadOnlyList<ReleaseActivityProjection> RecentActivity,
|
||||
IReadOnlyList<ReleaseApprovalProjection> Approvals);
|
||||
|
||||
public sealed record ReleaseActivityProjection(
|
||||
string ActivityId,
|
||||
string ReleaseId,
|
||||
string ReleaseName,
|
||||
string EventType,
|
||||
string Status,
|
||||
string? TargetEnvironment,
|
||||
string? TargetRegion,
|
||||
string ActorId,
|
||||
DateTimeOffset OccurredAt,
|
||||
string CorrelationKey);
|
||||
|
||||
public sealed record ReleaseApprovalProjection(
|
||||
string ApprovalId,
|
||||
string ReleaseId,
|
||||
string ReleaseName,
|
||||
string Status,
|
||||
string RequestedBy,
|
||||
DateTimeOffset RequestedAt,
|
||||
string? SourceEnvironment,
|
||||
string? TargetEnvironment,
|
||||
string? TargetRegion,
|
||||
int RequiredApprovals,
|
||||
int CurrentApprovals,
|
||||
IReadOnlyList<string> Blockers);
|
||||
|
||||
public sealed record ReleaseRunProjection(
|
||||
string RunId,
|
||||
string ReleaseId,
|
||||
string ReleaseName,
|
||||
string ReleaseType,
|
||||
string ReleaseVersionId,
|
||||
int ReleaseVersionNumber,
|
||||
string ReleaseVersionDigest,
|
||||
string Lane,
|
||||
string Status,
|
||||
string Outcome,
|
||||
bool NeedsApproval,
|
||||
bool BlockedByDataIntegrity,
|
||||
bool ReplayMismatch,
|
||||
string GateStatus,
|
||||
string EvidenceStatus,
|
||||
string? TargetEnvironment,
|
||||
string? TargetRegion,
|
||||
string RequestedBy,
|
||||
DateTimeOffset RequestedAt,
|
||||
DateTimeOffset UpdatedAt,
|
||||
string CorrelationKey);
|
||||
|
||||
public sealed record ReleaseRunStatusRow(
|
||||
string RunStatus,
|
||||
string GateStatus,
|
||||
string ApprovalStatus,
|
||||
string DataTrustStatus);
|
||||
|
||||
public sealed record ReleaseRunProcessStep(
|
||||
string StepId,
|
||||
string Label,
|
||||
string State,
|
||||
DateTimeOffset? StartedAt,
|
||||
DateTimeOffset? CompletedAt);
|
||||
|
||||
public sealed record ReleaseRunDetailProjection(
|
||||
string RunId,
|
||||
string ReleaseId,
|
||||
string ReleaseName,
|
||||
string ReleaseSlug,
|
||||
string ReleaseType,
|
||||
string ReleaseVersionId,
|
||||
int ReleaseVersionNumber,
|
||||
string ReleaseVersionDigest,
|
||||
string Lane,
|
||||
string Status,
|
||||
string Outcome,
|
||||
string? TargetEnvironment,
|
||||
string? TargetRegion,
|
||||
string ScopeSummary,
|
||||
DateTimeOffset RequestedAt,
|
||||
DateTimeOffset UpdatedAt,
|
||||
bool NeedsApproval,
|
||||
bool BlockedByDataIntegrity,
|
||||
string CorrelationKey,
|
||||
ReleaseRunStatusRow StatusRow,
|
||||
IReadOnlyList<ReleaseRunProcessStep> Process);
|
||||
|
||||
public sealed record ReleaseRunTimelineEventProjection(
|
||||
string EventId,
|
||||
string EventClass,
|
||||
string Phase,
|
||||
string Status,
|
||||
DateTimeOffset OccurredAt,
|
||||
string Message,
|
||||
string? SnapshotId,
|
||||
string? JobId,
|
||||
string? CapsuleId);
|
||||
|
||||
public sealed record ReleaseRunCorrelationReference(
|
||||
string Type,
|
||||
string Value,
|
||||
string? Route);
|
||||
|
||||
public sealed record ReleaseRunTimelineProjection(
|
||||
string RunId,
|
||||
IReadOnlyList<ReleaseRunTimelineEventProjection> Events,
|
||||
IReadOnlyList<ReleaseRunCorrelationReference> Correlations);
|
||||
|
||||
public sealed record ReleaseRunGateReasonCode(
|
||||
string Source,
|
||||
string Code,
|
||||
string Description);
|
||||
|
||||
public sealed record ReleaseRunGateBudgetContributor(
|
||||
string Category,
|
||||
decimal Delta,
|
||||
string Note);
|
||||
|
||||
public sealed record ReleaseRunGateDecisionProjection(
|
||||
string RunId,
|
||||
string SnapshotId,
|
||||
string Verdict,
|
||||
string PolicyPackVersion,
|
||||
string TrustWeightsVersion,
|
||||
string StalenessPolicy,
|
||||
int StalenessThresholdMinutes,
|
||||
string StalenessVerdict,
|
||||
decimal RiskBudgetDelta,
|
||||
IReadOnlyList<ReleaseRunGateBudgetContributor> RiskBudgetContributors,
|
||||
IReadOnlyList<ReleaseRunGateReasonCode> MachineReasonCodes,
|
||||
IReadOnlyList<ReleaseRunGateReasonCode> HumanReasonCodes,
|
||||
IReadOnlyList<string> Blockers,
|
||||
DateTimeOffset EvaluatedAt);
|
||||
|
||||
public sealed record ReleaseRunApprovalCheckpointProjection(
|
||||
string CheckpointId,
|
||||
string Name,
|
||||
int Order,
|
||||
string Status,
|
||||
string RequiredRole,
|
||||
string? ApproverId,
|
||||
DateTimeOffset? ApprovedAt,
|
||||
string? Signature,
|
||||
string? Rationale,
|
||||
string? EvidenceProofId);
|
||||
|
||||
public sealed record ReleaseRunApprovalsProjection(
|
||||
string RunId,
|
||||
IReadOnlyList<ReleaseRunApprovalCheckpointProjection> Checkpoints);
|
||||
|
||||
public sealed record ReleaseRunDeploymentTargetProjection(
|
||||
string TargetId,
|
||||
string TargetName,
|
||||
string Environment,
|
||||
string Region,
|
||||
string Strategy,
|
||||
string Phase,
|
||||
string Status,
|
||||
string ArtifactDigest,
|
||||
string LogRef,
|
||||
DateTimeOffset UpdatedAt);
|
||||
|
||||
public sealed record ReleaseRunRollbackTriggerProjection(
|
||||
string TriggerId,
|
||||
string TriggerType,
|
||||
string Threshold,
|
||||
bool Fired,
|
||||
DateTimeOffset? FiredAt,
|
||||
string Outcome);
|
||||
|
||||
public sealed record ReleaseRunDeploymentsProjection(
|
||||
string RunId,
|
||||
IReadOnlyList<ReleaseRunDeploymentTargetProjection> Targets,
|
||||
IReadOnlyList<ReleaseRunRollbackTriggerProjection> RollbackTriggers);
|
||||
|
||||
public sealed record ReleaseRunSecurityDrilldownProjection(
|
||||
string Label,
|
||||
string Route,
|
||||
string Query);
|
||||
|
||||
public sealed record ReleaseRunSecurityInputsProjection(
|
||||
string RunId,
|
||||
string SbomSnapshotId,
|
||||
DateTimeOffset SbomGeneratedAt,
|
||||
int SbomAgeMinutes,
|
||||
string ReachabilitySnapshotId,
|
||||
int ReachabilityCoveragePercent,
|
||||
int ReachabilityEvidenceAgeMinutes,
|
||||
int VexStatementsApplied,
|
||||
int ExceptionsApplied,
|
||||
string FeedFreshnessStatus,
|
||||
int? FeedFreshnessMinutes,
|
||||
string PolicyImpactStatement,
|
||||
IReadOnlyList<ReleaseRunSecurityDrilldownProjection> Drilldowns);
|
||||
|
||||
public sealed record ReleaseRunEvidenceProjection(
|
||||
string RunId,
|
||||
string DecisionCapsuleId,
|
||||
string CapsuleHash,
|
||||
string SignatureStatus,
|
||||
string TransparencyReceipt,
|
||||
string ChainCompleteness,
|
||||
string ReplayDeterminismVerdict,
|
||||
bool ReplayMismatch,
|
||||
IReadOnlyList<string> ExportFormats,
|
||||
string CapsuleRoute,
|
||||
string VerifyRoute);
|
||||
|
||||
public sealed record ReleaseRunKnownGoodReferenceProjection(
|
||||
string ReferenceType,
|
||||
string ReferenceId,
|
||||
string Description);
|
||||
|
||||
public sealed record ReleaseRunRollbackEventProjection(
|
||||
string EventId,
|
||||
string Trigger,
|
||||
string Outcome,
|
||||
DateTimeOffset OccurredAt,
|
||||
string EvidenceId,
|
||||
string AuditId);
|
||||
|
||||
public sealed record ReleaseRunRollbackProjection(
|
||||
string RunId,
|
||||
string Readiness,
|
||||
bool ActionEnabled,
|
||||
IReadOnlyList<ReleaseRunKnownGoodReferenceProjection> KnownGoodReferences,
|
||||
IReadOnlyList<ReleaseRunRollbackEventProjection> History);
|
||||
|
||||
public sealed record ReleaseRunReplayProjection(
|
||||
string RunId,
|
||||
string Verdict,
|
||||
bool Match,
|
||||
string? MismatchReportId,
|
||||
DateTimeOffset EvaluatedAt,
|
||||
string ReplayLogReference);
|
||||
|
||||
public sealed record ReleaseRunAuditEntryProjection(
|
||||
string AuditId,
|
||||
string Category,
|
||||
string Action,
|
||||
string ActorId,
|
||||
DateTimeOffset OccurredAt,
|
||||
string CorrelationKey,
|
||||
string? Notes);
|
||||
|
||||
public sealed record ReleaseRunAuditProjection(
|
||||
string RunId,
|
||||
IReadOnlyList<ReleaseRunAuditEntryProjection> Entries);
|
||||
@@ -0,0 +1,129 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace StellaOps.Platform.WebService.Contracts;
|
||||
|
||||
public sealed record SecurityFindingProjection(
|
||||
string FindingId,
|
||||
string CveId,
|
||||
string Severity,
|
||||
string PackageName,
|
||||
string ComponentName,
|
||||
string ReleaseId,
|
||||
string ReleaseName,
|
||||
string Environment,
|
||||
string Region,
|
||||
bool Reachable,
|
||||
int ReachabilityScore,
|
||||
string EffectiveDisposition,
|
||||
string VexStatus,
|
||||
string ExceptionStatus,
|
||||
DateTimeOffset UpdatedAt);
|
||||
|
||||
public sealed record SecurityPivotBucket(
|
||||
string PivotValue,
|
||||
int FindingCount,
|
||||
int CriticalCount,
|
||||
int ReachableCount);
|
||||
|
||||
public sealed record SecurityFacetBucket(
|
||||
string Facet,
|
||||
string Value,
|
||||
int Count);
|
||||
|
||||
public sealed record SecurityFindingsResponse(
|
||||
string TenantId,
|
||||
string ActorId,
|
||||
DateTimeOffset AsOfUtc,
|
||||
bool Cached,
|
||||
int CacheTtlSeconds,
|
||||
IReadOnlyList<SecurityFindingProjection> Items,
|
||||
int Total,
|
||||
int Limit,
|
||||
int Offset,
|
||||
string Pivot,
|
||||
IReadOnlyList<SecurityPivotBucket> PivotBuckets,
|
||||
IReadOnlyList<SecurityFacetBucket> Facets);
|
||||
|
||||
public sealed record SecurityVexState(
|
||||
string Status,
|
||||
string Justification,
|
||||
string SourceModel,
|
||||
string? StatementId,
|
||||
DateTimeOffset? UpdatedAt);
|
||||
|
||||
public sealed record SecurityExceptionState(
|
||||
string Status,
|
||||
string Reason,
|
||||
string ApprovalState,
|
||||
string SourceModel,
|
||||
string? ExceptionId,
|
||||
DateTimeOffset? ExpiresAt,
|
||||
DateTimeOffset? UpdatedAt);
|
||||
|
||||
public sealed record SecurityDispositionProjection(
|
||||
string FindingId,
|
||||
string CveId,
|
||||
string ReleaseId,
|
||||
string ReleaseName,
|
||||
string PackageName,
|
||||
string ComponentName,
|
||||
string Environment,
|
||||
string Region,
|
||||
SecurityVexState Vex,
|
||||
SecurityExceptionState Exception,
|
||||
string EffectiveDisposition,
|
||||
string PolicyAction,
|
||||
DateTimeOffset UpdatedAt);
|
||||
|
||||
public sealed record SecuritySbomComponentRow(
|
||||
string ComponentId,
|
||||
string ReleaseId,
|
||||
string ReleaseName,
|
||||
string Environment,
|
||||
string Region,
|
||||
string PackageName,
|
||||
string ComponentName,
|
||||
string ComponentVersion,
|
||||
string Supplier,
|
||||
string License,
|
||||
int VulnerabilityCount,
|
||||
int CriticalReachableCount,
|
||||
DateTimeOffset UpdatedAt);
|
||||
|
||||
public sealed record SecuritySbomGraphNode(
|
||||
string NodeId,
|
||||
string NodeType,
|
||||
string Label,
|
||||
string Region,
|
||||
string Environment);
|
||||
|
||||
public sealed record SecuritySbomGraphEdge(
|
||||
string EdgeId,
|
||||
string FromNodeId,
|
||||
string ToNodeId,
|
||||
string RelationType);
|
||||
|
||||
public sealed record SecuritySbomDiffRow(
|
||||
string ComponentName,
|
||||
string PackageName,
|
||||
string ChangeType,
|
||||
string? FromVersion,
|
||||
string? ToVersion,
|
||||
string Region,
|
||||
string Environment);
|
||||
|
||||
public sealed record SecuritySbomExplorerResponse(
|
||||
string TenantId,
|
||||
string ActorId,
|
||||
DateTimeOffset AsOfUtc,
|
||||
bool Cached,
|
||||
int CacheTtlSeconds,
|
||||
string Mode,
|
||||
IReadOnlyList<SecuritySbomComponentRow> Table,
|
||||
IReadOnlyList<SecuritySbomGraphNode> GraphNodes,
|
||||
IReadOnlyList<SecuritySbomGraphEdge> GraphEdges,
|
||||
IReadOnlyList<SecuritySbomDiffRow> Diff,
|
||||
int TotalComponents,
|
||||
int Limit,
|
||||
int Offset);
|
||||
@@ -0,0 +1,97 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace StellaOps.Platform.WebService.Contracts;
|
||||
|
||||
public sealed record TopologyRegionProjection(
|
||||
string RegionId,
|
||||
string DisplayName,
|
||||
int SortOrder,
|
||||
int EnvironmentCount,
|
||||
int TargetCount,
|
||||
int HostCount,
|
||||
int AgentCount,
|
||||
DateTimeOffset? LastSyncAt);
|
||||
|
||||
public sealed record TopologyEnvironmentProjection(
|
||||
string EnvironmentId,
|
||||
string RegionId,
|
||||
string EnvironmentType,
|
||||
string DisplayName,
|
||||
int SortOrder,
|
||||
int TargetCount,
|
||||
int HostCount,
|
||||
int AgentCount,
|
||||
int PromotionPathCount,
|
||||
int WorkflowCount,
|
||||
DateTimeOffset? LastSyncAt);
|
||||
|
||||
public sealed record TopologyTargetProjection(
|
||||
string TargetId,
|
||||
string Name,
|
||||
string RegionId,
|
||||
string EnvironmentId,
|
||||
string HostId,
|
||||
string AgentId,
|
||||
string TargetType,
|
||||
string HealthStatus,
|
||||
string ComponentVersionId,
|
||||
string ImageDigest,
|
||||
string ReleaseId,
|
||||
string ReleaseVersionId,
|
||||
DateTimeOffset? LastSyncAt);
|
||||
|
||||
public sealed record TopologyHostProjection(
|
||||
string HostId,
|
||||
string HostName,
|
||||
string RegionId,
|
||||
string EnvironmentId,
|
||||
string RuntimeType,
|
||||
string Status,
|
||||
string AgentId,
|
||||
int TargetCount,
|
||||
DateTimeOffset? LastSeenAt);
|
||||
|
||||
public sealed record TopologyAgentProjection(
|
||||
string AgentId,
|
||||
string AgentName,
|
||||
string RegionId,
|
||||
string EnvironmentId,
|
||||
string Status,
|
||||
IReadOnlyList<string> Capabilities,
|
||||
int AssignedTargetCount,
|
||||
DateTimeOffset? LastHeartbeatAt);
|
||||
|
||||
public sealed record TopologyPromotionPathProjection(
|
||||
string PathId,
|
||||
string RegionId,
|
||||
string SourceEnvironmentId,
|
||||
string TargetEnvironmentId,
|
||||
string PathMode,
|
||||
string Status,
|
||||
int RequiredApprovals,
|
||||
string WorkflowId,
|
||||
string GateProfileId,
|
||||
DateTimeOffset? LastPromotedAt);
|
||||
|
||||
public sealed record TopologyWorkflowProjection(
|
||||
string WorkflowId,
|
||||
string WorkflowName,
|
||||
string RegionId,
|
||||
string EnvironmentId,
|
||||
string TriggerType,
|
||||
string Status,
|
||||
int StepCount,
|
||||
string GateProfileId,
|
||||
DateTimeOffset UpdatedAt);
|
||||
|
||||
public sealed record TopologyGateProfileProjection(
|
||||
string GateProfileId,
|
||||
string ProfileName,
|
||||
string RegionId,
|
||||
string EnvironmentId,
|
||||
string PolicyProfile,
|
||||
int RequiredApprovals,
|
||||
bool SeparationOfDuties,
|
||||
IReadOnlyList<string> BlockingRules,
|
||||
DateTimeOffset UpdatedAt);
|
||||
Reference in New Issue
Block a user