semi implemented and features implemented save checkpoint

This commit is contained in:
master
2026-02-08 18:00:49 +02:00
parent 04360dff63
commit 1bf6bbf395
20895 changed files with 716795 additions and 64 deletions

View File

@@ -0,0 +1,14 @@
# SOLID Review - A
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/AdvisoryAiGuardrailOptions.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/StellaOps.AdvisoryAI.Hosting.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - A
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/AdvisoryAiMetrics.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/StellaOps.AdvisoryAI.Hosting.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - AdvisoryAiServiceOptions
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/AdvisoryAiServiceOptions.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/StellaOps.AdvisoryAI.Hosting.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (AdvisoryAiServiceOptions, AdvisoryAiQueueOptions, AdvisoryAiStorageOptions); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - A
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/AdvisoryAiServiceOptionsValidator.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/StellaOps.AdvisoryAI.Hosting.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
- Dependency inversion: static utility types limit substitution; consider abstraction if behavior must vary.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Consider interface-backed abstraction if alternate implementations are needed.

View File

@@ -0,0 +1,14 @@
# SOLID Review - FileSystemAdvisoryOutputStore
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/FileSystemAdvisoryOutputStore.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/StellaOps.AdvisoryAI.Hosting.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (FileSystemAdvisoryOutputStore, OutputEnvelope, GuardrailEnvelope, ProvenanceEnvelope); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - FileSystemAdvisoryPlanCache
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/FileSystemAdvisoryPlanCache.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/StellaOps.AdvisoryAI.Hosting.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (FileSystemAdvisoryPlanCache, PlanEnvelope, AdvisoryTaskRequestEnvelope, AdvisoryChunkEnvelope, VectorResultEnvelope, VectorMatchEnvelope, SbomContextEnvelope, SbomVersionTimelineEntryEnvelope, SbomDependencyPathEnvelope, SbomDependencyNodeEnvelope, SbomBlastRadiusEnvelope, DependencyAnalysisEnvelope, DependencyNodeSummaryEnvelope); responsibilities may be bundled.
## Maintainability Notes
- File length 470 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - FileSystemAdvisoryTaskQueue
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/FileSystemAdvisoryTaskQueue.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/StellaOps.AdvisoryAI.Hosting.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (FileSystemAdvisoryTaskQueue, FileQueueEnvelope, AdvisoryTaskRequestEnvelope); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - G
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/GuardrailAllowlistLoader.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/StellaOps.AdvisoryAI.Hosting.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
- Dependency inversion: static utility types limit substitution; consider abstraction if behavior must vary.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Consider interface-backed abstraction if alternate implementations are needed.

View File

@@ -0,0 +1,15 @@
# SOLID Review - G
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/GuardrailPhraseLoader.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/StellaOps.AdvisoryAI.Hosting.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
- Dependency inversion: static utility types limit substitution; consider abstraction if behavior must vary.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Consider interface-backed abstraction if alternate implementations are needed.

View File

@@ -0,0 +1,14 @@
# SOLID Review - IGuidProvider
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/IGuidProvider.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/StellaOps.AdvisoryAI.Hosting.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IGuidProvider, SystemGuidProvider); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,14 @@
# SOLID Review - AssemblyInfo
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/Properties/AssemblyInfo.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/StellaOps.AdvisoryAI.Hosting.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file contains assembly-level metadata attributes only.
## Maintainability Notes
- Assembly metadata is centralized and easy to verify.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,16 @@
# SOLID Review - S
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/ServiceCollectionExtensions.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Hosting/StellaOps.AdvisoryAI.Hosting.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
- Dependency inversion: static utility types limit substitution; consider abstraction if behavior must vary.
## Maintainability Notes
- File length 282 lines; consider splitting for readability.
## Recommendations
- Extract helpers to reduce file size and complexity.
- Consider interface-backed abstraction if alternate implementations are needed.

View File

@@ -0,0 +1,14 @@
# SOLID Review - L
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Plugin.Unified/LlmPluginAdapter.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Plugin.Unified/StellaOps.AdvisoryAI.Plugin.Unified.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- File length 219 lines; consider splitting for readability.
## Recommendations
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,16 @@
# SOLID Review - LlmPluginAdapterFactory
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Plugin.Unified/LlmPluginAdapterFactory.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Plugin.Unified/StellaOps.AdvisoryAI.Plugin.Unified.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (LlmPluginAdapterFactory, LlmPluginAdapterExtensions); responsibilities may be bundled.
- Dependency inversion: static utility types limit substitution; consider abstraction if behavior must vary.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.
- Consider interface-backed abstraction if alternate implementations are needed.

View File

@@ -0,0 +1,14 @@
# SOLID Review - S
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Scm.Plugin.Unified/ScmPluginAdapter.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Scm.Plugin.Unified/StellaOps.AdvisoryAI.Scm.Plugin.Unified.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- File length 349 lines; consider splitting for readability.
## Recommendations
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,16 @@
# SOLID Review - ScmPluginAdapterFactory
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Scm.Plugin.Unified/ScmPluginAdapterFactory.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Scm.Plugin.Unified/StellaOps.AdvisoryAI.Scm.Plugin.Unified.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ScmPluginAdapterFactory, ScmPluginAdapterExtensions); responsibilities may be bundled.
- Dependency inversion: static utility types limit substitution; consider abstraction if behavior must vary.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.
- Consider interface-backed abstraction if alternate implementations are needed.

View File

@@ -0,0 +1,14 @@
# SOLID Review - A
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Contracts/AdvisoryExecuteRequest.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - AdvisoryOutputResponse
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Contracts/AdvisoryOutputResponse.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (AdvisoryOutputResponse, AdvisoryOutputCitation, AdvisoryOutputGuardrail, AdvisoryOutputGuardrailViolation, AdvisoryOutputProvenance); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,14 @@
# SOLID Review - A
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Contracts/AdvisoryPlanRequest.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - A
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Contracts/AdvisoryPlanResponse.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - A
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Contracts/AdvisoryQueueRequest.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - A
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Contracts/AdvisoryQueueResponse.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,15 @@
# SOLID Review - CreateConversationRequest
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Contracts/ChatContracts.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (CreateConversationRequest, ConversationContextRequest, AddTurnRequest, ConversationResponse, ConversationTurnResponse, EvidenceLinkResponse, ProposedActionResponse, AssistantTurnResponse, ConversationListResponse, ConversationSummary); responsibilities may be bundled.
## Maintainability Notes
- File length 400 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - AiConsentScope
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Contracts/ConsentContracts.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (AiConsentScope, AiConsentStatusResponse, AiConsentGrantRequest, AiConsentGrantResponse, AiRateLimitInfoResponse); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,14 @@
# SOLID Review - E
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Contracts/ExplainRequest.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - ExplainResponse
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Contracts/ExplainResponse.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ExplainResponse, ExplainSummaryResponse, ExplainCitationResponse); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,14 @@
# SOLID Review - AiJustifyApiRequest
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Contracts/JustifyContracts.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (AiJustifyApiRequest, AiJustifyContextData, AiJustifyApiResponse); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - PolicyParseApiRequest
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Contracts/PolicyStudioContracts.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (PolicyParseApiRequest, PolicyParseApiResponse, PolicyIntentApiResponse, PolicyConditionApiResponse, PolicyActionApiResponse, PolicyGenerateApiRequest, RuleGenerationApiResponse, LatticeRuleApiResponse, PolicyValidateApiRequest, ValidationApiResponse, RuleConflictApiResponse, PolicyTestCaseApiResponse, TestRunApiResponse, PolicyCompileApiRequest, PolicyBundleApiResponse); responsibilities may be bundled.
## Maintainability Notes
- File length 243 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - RemediationPlanApiRequest
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Contracts/RemediationContracts.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (RemediationPlanApiRequest, RemediationPlanApiResponse, RemediationStepResponse, ExpectedDeltaResponse, ApplyRemediationRequest, PullRequestApiResponse, BuildResultResponse, TestResultResponse, DeltaVerdictResponse); responsibilities may be bundled.
## Maintainability Notes
- File length 237 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,17 @@
# SOLID Review - AttestationEndpoints
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Endpoints/AttestationEndpoints.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (AttestationEndpoints, RunAttestationResponse, ClaimsListResponse, RecentAttestationsResponse, VerifyAttestationRequest, AttestationVerificationResponse, AttestationLinks); responsibilities may be bundled.
- Dependency inversion: static utility types limit substitution; consider abstraction if behavior must vary.
## Maintainability Notes
- File length 332 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.
- Consider interface-backed abstraction if alternate implementations are needed.

View File

@@ -0,0 +1,17 @@
# SOLID Review - ChatEndpoints
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Endpoints/ChatEndpoints.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ChatEndpoints, AdvisoryChatQueryRequest, AdvisoryChatQueryResponse, ImpactAssessmentResponse, ReachabilityAssessmentResponse, MitigationOptionResponse, ConfidenceResponse, FollowUpResponse, DiagnosticsResponse, IntentDetectionRequest, IntentDetectionResponse, IntentParametersResponse, EvidencePreviewRequest, EvidenceBundlePreviewResponse, EvidenceSummary, ChatServiceStatusResponse, ChatSettingsUpdateRequest, ChatQuotaSettingsUpdateRequest, ChatToolAccessUpdateRequest, ChatSettingsResponse, ChatQuotaSettingsResponse, ChatToolAccessResponse, ChatToolProviderResponse, ChatDoctorResponse, ChatDoctorAction, ChatQuotaStatusResponse, ChatDenialResponse, ErrorResponse); responsibilities may be bundled.
- Dependency inversion: static utility types limit substitution; consider abstraction if behavior must vary.
## Maintainability Notes
- File length 1226 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.
- Consider interface-backed abstraction if alternate implementations are needed.

View File

@@ -0,0 +1,17 @@
# SOLID Review - EvidencePackEndpoints
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Endpoints/EvidencePackEndpoints.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (EvidencePackEndpoints, CreateEvidencePackRequest, EvidenceSubjectRequest, EvidenceClaimRequest, EvidenceItemRequest, EvidencePackResponse, EvidenceSubjectResponse, EvidenceClaimResponse, EvidenceItemResponse, EvidenceSnapshotResponse, EvidencePackContextResponse, EvidencePackLinks, SignedEvidencePackResponse, DsseEnvelopeResponse, DsseSignatureResponse, EvidencePackVerificationResponse, EvidenceResolutionApiResponse, EvidencePackListResponse, EvidencePackSummary); responsibilities may be bundled.
- Dependency inversion: static utility types limit substitution; consider abstraction if behavior must vary.
## Maintainability Notes
- File length 898 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.
- Consider interface-backed abstraction if alternate implementations are needed.

View File

@@ -0,0 +1,17 @@
# SOLID Review - RunEndpoints
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Endpoints/RunEndpoints.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (RunEndpoints, CreateRunRequestDto, RunContextDto, RunDto, RunEventDto, ApprovalInfoDto, RunQueryResultDto, AddEventRequestDto, AddTurnRequestDto, ProposeActionRequestDto, RequestApprovalDto, ApprovalDecisionDto, AddArtifactRequestDto, CompleteRunRequestDto, CancelRunRequestDto, HandOffRequestDto); responsibilities may be bundled.
- Dependency inversion: static utility types limit substitution; consider abstraction if behavior must vary.
## Maintainability Notes
- File length 909 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.
- Consider interface-backed abstraction if alternate implementations are needed.

View File

@@ -0,0 +1,15 @@
# SOLID Review - PipelinePlanRequest
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Program.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (PipelinePlanRequest, BatchPipelinePlanRequest, Program); responsibilities may be bundled.
## Maintainability Notes
- File length 1318 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - IAuthorizationService
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Services/AuthorizationService.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IAuthorizationService, HeaderBasedAuthorizationService); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,14 @@
# SOLID Review - IAiConsentStore
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Services/IAiConsentStore.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IAiConsentStore, AiConsentRecord, AiConsentGrant, InMemoryAiConsentStore); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - IAiJustificationGenerator
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Services/IAiJustificationGenerator.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IAiJustificationGenerator, AiJustificationRequest, AiJustificationResult, DefaultAiJustificationGenerator); responsibilities may be bundled.
## Maintainability Notes
- File length 222 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - RateLimitsOptions
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/Services/RateLimitsService.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.WebService/StellaOps.AdvisoryAI.WebService.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (RateLimitsOptions, FeatureRateLimitOptions, RateLimitInfo, IRateLimitsService, ConfigDrivenRateLimitsService); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,14 @@
# SOLID Review - Program
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Worker/Program.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Worker/StellaOps.AdvisoryAI.Worker.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: no type declarations; file appears to contain top-level statements or metadata.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - AssemblyInfo
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Worker/Properties/AssemblyInfo.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Worker/StellaOps.AdvisoryAI.Worker.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file contains assembly-level metadata attributes only.
## Maintainability Notes
- Assembly metadata is centralized and easy to verify.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - A
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Worker/Services/AdvisoryTaskWorker.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Worker/StellaOps.AdvisoryAI.Worker.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - IAdvisoryJitterSource
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI.Worker/Services/RetryJitterSource.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI.Worker/StellaOps.AdvisoryAI.Worker.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IAdvisoryJitterSource, DefaultAdvisoryJitterSource); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,14 @@
# SOLID Review - A
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Abstractions/AdvisoryRetrievalRequest.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - A
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Abstractions/AdvisoryRetrievalResult.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - I
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Abstractions/IAdvisoryDocumentProvider.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - I
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Abstractions/IAdvisoryStructuredRetriever.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - IAdvisoryVectorRetriever
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Abstractions/IAdvisoryVectorRetriever.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IAdvisoryVectorRetriever, VectorRetrievalRequest, VectorRetrievalMatch); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,14 @@
# SOLID Review - I
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Abstractions/ISbomContextRetriever.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - S
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Abstractions/SbomContextRequest.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,14 @@
# SOLID Review - ActionAuditLedger
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Actions/ActionAuditLedger.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ActionAuditLedger, AuditLedgerOptions); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,14 @@
# SOLID Review - ActionDefinition
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Actions/ActionDefinition.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ActionDefinition, ActionRiskLevel, ActionParameterDefinition); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - ActionExecutor
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Actions/ActionExecutor.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ActionExecutor, ActionExecutorOptions); responsibilities may be bundled.
## Maintainability Notes
- File length 458 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - ActionPolicyGate
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Actions/ActionPolicyGate.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ActionPolicyGate, ActionPolicyOptions); responsibilities may be bundled.
## Maintainability Notes
- File length 361 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - A
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Actions/ActionRegistry.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- File length 434 lines; consider splitting for readability.
## Recommendations
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - ApprovalWorkflowAdapter
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Actions/ApprovalWorkflowAdapter.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ApprovalWorkflowAdapter, ApprovalRequestState); responsibilities may be bundled.
## Maintainability Notes
- File length 277 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - IActionAuditLedger
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Actions/IActionAuditLedger.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IActionAuditLedger, ActionAuditEntry, ActionAuditOutcome, ActionAuditQuery); responsibilities may be bundled.
## Maintainability Notes
- File length 277 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - IActionExecutor
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Actions/IActionExecutor.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IActionExecutor, ActionExecutionResult, ActionExecutionOutcome, ActionExecutionStatus, ActionError, ActionRollbackResult, ActionTypeInfo, ActionParameterInfo); responsibilities may be bundled.
## Maintainability Notes
- File length 350 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - IActionPolicyGate
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Actions/IActionPolicyGate.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IActionPolicyGate, ActionContext, ActionProposal, ActionPolicyDecision, PolicyDecisionKind, RequiredApprover, ApproverType, PolicyExplanation, PolicyReference, IdempotencyCheckResult); responsibilities may be bundled.
## Maintainability Notes
- File length 359 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - IActionRegistry
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Actions/IActionRegistry.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IActionRegistry, ActionParameterValidationResult); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - IApprovalWorkflowAdapter
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Actions/IApprovalWorkflowAdapter.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IApprovalWorkflowAdapter, ApprovalRequest, ApprovalPayload, ApprovalStatus, ApprovalState, ApprovalEntry, ApprovalResult); responsibilities may be bundled.
## Maintainability Notes
- File length 284 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - IGuidGenerator
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Actions/IGuidGenerator.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IGuidGenerator, DefaultGuidGenerator); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,14 @@
# SOLID Review - IIdempotencyHandler
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Actions/IIdempotencyHandler.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IIdempotencyHandler, IdempotencyResult); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - IdempotencyHandler
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Actions/IdempotencyHandler.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IdempotencyHandler, IdempotencyRecord, IdempotencyOptions); responsibilities may be bundled.
## Maintainability Notes
- File length 215 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - IAdvisoryPlanCache
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Caching/IAdvisoryPlanCache.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IAdvisoryPlanCache, AdvisoryPlanCacheOptions, InMemoryAdvisoryPlanCache, CacheEntry); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - ActionProposalParser
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/ActionProposalParser.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ActionProposalParser, ActionDefinition, ActionParseResult, ParsedActionProposal); responsibilities may be bundled.
## Maintainability Notes
- File length 290 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - IVexDataProvider
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Assembly/DataProviders.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IVexDataProvider, ISbomDataProvider, IReachabilityDataProvider, IBinaryPatchDataProvider, IOpsMemoryDataProvider, IPolicyDataProvider, IProvenanceDataProvider, IFixDataProvider, IContextDataProvider, VexData, VexObservationData, SbomData, FindingData, ReachabilityData, PathWitnessData, ReachabilityGatesData, BinaryPatchData, OpsMemoryData, SimilarDecisionData, PlaybookData, KnownIssueData, PolicyData, PolicyEvaluationData, ProvenanceData, AttestationData, BuildProvenanceData, RekorEntryData, FixData, UpgradeFixData, DistroBackportData, ConfigFixData, ContainmentFixData, ContextData); responsibilities may be bundled.
## Maintainability Notes
- File length 363 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - E
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Assembly/EvidenceBundleAssembler.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- File length 687 lines; consider splitting for readability.
## Recommendations
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - IEvidenceBundleAssembler
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Assembly/IEvidenceBundleAssembler.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IEvidenceBundleAssembler, EvidenceBundleAssemblyRequest, EvidenceBundleAssemblyResult, EvidenceBundleAssemblyDiagnostics); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,14 @@
# SOLID Review - BinaryPatchDataProvider
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Assembly/Providers/BinaryPatchDataProvider.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (BinaryPatchDataProvider, IBinaryPatchClient, BinaryPatchDetectionResult, NullBinaryPatchClient); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,14 @@
# SOLID Review - ContextDataProvider
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Assembly/Providers/ContextDataProvider.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ContextDataProvider, IOrganizationContextClient, OrganizationContextResult, NullOrganizationContextClient); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,14 @@
# SOLID Review - FixDataProvider
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Assembly/Providers/FixDataProvider.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (FixDataProvider, IFixAvailabilityClient, FixOptionsResult, UpgradeFixResult, DistroBackportResult, ConfigFixResult, ContainmentResult, NullFixAvailabilityClient); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - OpsMemoryDataProvider
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Assembly/Providers/OpsMemoryDataProvider.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (OpsMemoryDataProvider, IOpsMemoryClient, SimilarDecisionResult, PlaybookResult, KnownIssueResult, NullOpsMemoryClient); responsibilities may be bundled.
## Maintainability Notes
- File length 208 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - PolicyDataProvider
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Assembly/Providers/PolicyDataProvider.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (PolicyDataProvider, IPolicyEvaluationClient, PolicyEvaluationResult, NullPolicyEvaluationClient); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - ProvenanceDataProvider
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Assembly/Providers/ProvenanceDataProvider.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ProvenanceDataProvider, IProvenanceClient, SbomAttestationResult, BuildProvenanceResult, RekorEntryResult, NullProvenanceClient); responsibilities may be bundled.
## Maintainability Notes
- File length 211 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - ReachabilityDataProvider
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Assembly/Providers/ReachabilityDataProvider.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ReachabilityDataProvider, IReachabilityClient, ReachabilityAnalysisResult, PathWitnessResult, ReachabilityGatesResult, NullReachabilityClient); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - SbomDataProvider
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Assembly/Providers/SbomDataProvider.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (SbomDataProvider, ISbomServiceClient, IScannerFindingsClient, SbomMetadataResult, ScannerFindingResult, NullSbomServiceClient, NullScannerFindingsClient); responsibilities may be bundled.
## Maintainability Notes
- File length 211 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - VexDataProvider
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Assembly/Providers/VexDataProvider.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (VexDataProvider, IVexLensClient, VexConsensusResult, VexObservationResult, NullVexLensClient); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - AttestationIntegration
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/AttestationIntegration.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (AttestationIntegration, IAttestationIntegration, GroundingResult, GroundedClaim); responsibilities may be bundled.
## Maintainability Notes
- File length 350 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,17 @@
# SOLID Review - AdvisoryChatAuditEnvelopeBuilder
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Audit/AdvisoryChatAuditEnvelopeBuilder.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (AdvisoryChatAuditEnvelopeBuilder, GuardrailViolationPayload, GuardrailDecisionPayload, ToolPolicyAuditPayload, ToolProviderPayload, ActionPolicyPayload, EvidenceLinkPayload, ToolInvocationPayload, ToolInputPayload); responsibilities may be bundled.
- Dependency inversion: static utility types limit substitution; consider abstraction if behavior must vary.
## Maintainability Notes
- File length 710 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.
- Consider interface-backed abstraction if alternate implementations are needed.

View File

@@ -0,0 +1,14 @@
# SOLID Review - ChatAuditEnvelope
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Audit/ChatAuditRecords.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ChatAuditEnvelope, ChatAuditSession, ChatAuditMessage, ChatAuditPolicyDecision, ChatAuditToolInvocation, ChatAuditEvidenceLink); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - ChatPromptAssembler
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/ChatPromptAssembler.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ChatPromptAssembler, AssembledPrompt, ChatMessage, ChatMessageRole, ChatPromptOptions); responsibilities may be bundled.
## Maintainability Notes
- File length 272 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - ChatResponseStreamer
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/ChatResponseStreamer.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ChatResponseStreamer, TokenChunk, StreamEventType, StreamEvent, StartEventData, TokenEventData, CitationEvent, ActionEvent, ProgressEventData, DoneEventData, ErrorEventData, ResumeEventData, StreamCheckpoint, StreamingOptions); responsibilities may be bundled.
## Maintainability Notes
- File length 490 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - ConversationContextBuilder
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/ConversationContextBuilder.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ConversationContextBuilder, BuiltContextBuilder, BuiltContext, ConversationContextOptions); responsibilities may be bundled.
## Maintainability Notes
- File length 378 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - ConversationService
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/ConversationService.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ConversationService, IConversationService, IGuidGenerator, DefaultGuidGenerator, Conversation, ConversationContext, PolicyContext, ConversationTurn, TurnRole, EvidenceLink, EvidenceLinkType, ProposedAction, ConversationRequest, TurnRequest, ConversationOptions, ConversationNotFoundException); responsibilities may be bundled.
## Maintainability Notes
- File length 734 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,16 @@
# SOLID Review - A
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/DependencyInjection/AdvisoryChatServiceCollectionExtensions.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
- Dependency inversion: static utility types limit substitution; consider abstraction if behavior must vary.
## Maintainability Notes
- File length 203 lines; consider splitting for readability.
## Recommendations
- Extract helpers to reduce file size and complexity.
- Consider interface-backed abstraction if alternate implementations are needed.

View File

@@ -0,0 +1,15 @@
# SOLID Review - EvidencePackChatIntegration
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/EvidencePackChatIntegration.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (EvidencePackChatIntegration, EvidencePackChatOptions); responsibilities may be bundled.
## Maintainability Notes
- File length 348 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - GroundingValidator
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/GroundingValidator.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (GroundingValidator, IObjectLinkResolver, LinkResolution, GroundingValidationResult, ValidatedLink, ExtractedLink, UngroundedClaim, ClaimType, GroundingIssue, GroundingIssueType, IssueSeverity, RejectionResult, GroundingSuggestion, SuggestionType, GroundingOptions); responsibilities may be bundled.
## Maintainability Notes
- File length 603 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - ClaudeInferenceClient
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Inference/ClaudeInferenceClient.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ClaudeInferenceClient, ClaudeMessageRequest, ClaudeMessage, ClaudeMessageResponse, ClaudeContentBlock, ClaudeUsage, ClaudeStreamEvent, ClaudeStreamDelta); responsibilities may be bundled.
## Maintainability Notes
- File length 344 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - IAdvisoryChatInferenceClient
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Inference/IAdvisoryChatInferenceClient.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IAdvisoryChatInferenceClient, AdvisoryChatResponseChunk, ISystemPromptLoader, AdvisoryChatInferenceException); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,14 @@
# SOLID Review - L
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Inference/LocalInferenceClient.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- File length 320 lines; consider splitting for readability.
## Recommendations
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - OllamaInferenceClient
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Inference/OllamaInferenceClient.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (OllamaInferenceClient, OllamaChatRequest, OllamaMessage, OllamaOptions, OllamaChatResponse, OllamaStreamResponse); responsibilities may be bundled.
## Maintainability Notes
- File length 297 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - OpenAIInferenceClient
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Inference/OpenAIInferenceClient.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (OpenAIInferenceClient, OpenAIChatRequest, OpenAIChatMessage, OpenAIChatResponse, OpenAIChatChoice, OpenAIUsage, OpenAIStreamChunk, OpenAIStreamChoice, OpenAIStreamDelta); responsibilities may be bundled.
## Maintainability Notes
- File length 330 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - S
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Inference/SystemPromptLoader.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: single type definition; cohesive.
## Maintainability Notes
- Minimal surface area; easy to reason about.
## Recommendations
- Keep as-is.

View File

@@ -0,0 +1,15 @@
# SOLID Review - AdvisoryChatEvidenceBundle
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Models/AdvisoryChatModels.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (AdvisoryChatEvidenceBundle, EvidenceArtifact, EvidenceFinding, EvidenceFindingType, EvidenceSeverity, EvidenceVerdicts, VexVerdict, VexStatus, VexJustification, VexConsensusOutcome, VexObservation, PolicyVerdict, PolicyDecision, EvidenceReachability, ReachabilityStatus, PathWitness, ReachabilityGates, BinaryPatchEvidence, BinaryMatchMethod, EvidenceProvenance, AttestationReference, BuildProvenance, RekorEntry, EvidenceFixes, UpgradeFix, DistroBackport, ConfigFix, ContainmentFix, ContainmentType, EvidenceContext, RiskAppetite, EvidenceOpsMemory, SimilarDecision, ApplicablePlaybook, KnownIssue, EvidenceEngineVersion); responsibilities may be bundled.
## Maintainability Notes
- File length 407 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - AdvisoryChatResponse
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Models/AdvisoryChatResponseModels.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (AdvisoryChatResponse, AdvisoryChatIntent, ImpactAssessment, BlastRadiusInfo, ReachabilityAssessment, BinaryBackportInfo, ExploitPressureInfo, ExploitMaturity, MitigationOption, MitigationType, MitigationRisk, CodeSnippet, EvidenceLink, EvidenceLinkType, ConfidenceAssessment, ConfidenceLevel, ConfidenceFactor, ConfidenceImpact, MissingEvidence, ProposedAction, ProposedActionType, ActionRiskLevel, FollowUp, RelatedFinding, ResponseAudit); responsibilities may be bundled.
## Maintainability Notes
- File length 331 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - OpsMemoryIntegration
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/OpsMemoryIntegration.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (OpsMemoryIntegration, IOpsMemoryIntegration, OpsMemoryEnrichmentResult); responsibilities may be bundled.
## Maintainability Notes
- File length 296 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,14 @@
# SOLID Review - OpsMemoryLinkResolver
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/OpsMemoryLinkResolver.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (OpsMemoryLinkResolver, ITypedLinkResolver, CompositeObjectLinkResolver); responsibilities may be bundled.
## Maintainability Notes
- Multiple types in one file can blur ownership boundaries.
## Recommendations
- Split types into separate files grouped by responsibility.

View File

@@ -0,0 +1,15 @@
# SOLID Review - AdvisoryChatOptions
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Options/AdvisoryChatOptions.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (AdvisoryChatOptions, InferenceOptions, DataProviderOptions, GuardrailOptions, QuotaOptions, ToolAccessOptions, AuditOptions, AdvisoryChatOptionsValidator); responsibilities may be bundled.
## Maintainability Notes
- File length 330 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - IAdvisoryChatIntentRouter
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Routing/AdvisoryChatIntentRouter.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (IAdvisoryChatIntentRouter, IntentRoutingResult, IntentParameters, AdvisoryChatIntentRouter); responsibilities may be bundled.
## Maintainability Notes
- File length 464 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

View File

@@ -0,0 +1,15 @@
# SOLID Review - ChatQuotaRequest
## Scope
- File: src/AdvisoryAI/StellaOps.AdvisoryAI/Chat/Services/AdvisoryChatQuotaService.cs
- Project: src/AdvisoryAI/StellaOps.AdvisoryAI/StellaOps.AdvisoryAI.csproj
- Date (UTC): 2026-01-31
## Findings
- Single responsibility: file defines multiple types (ChatQuotaRequest, ChatQuotaDecision, ChatQuotaStatus, ChatQuotaDenial, IAdvisoryChatQuotaService, AdvisoryChatQuotaService, ChatQuotaState); responsibilities may be bundled.
## Maintainability Notes
- File length 308 lines; consider splitting for readability.
## Recommendations
- Split types into separate files grouped by responsibility.
- Extract helpers to reduce file size and complexity.

Some files were not shown because too many files have changed in this diff Show More