Interface ISecurityScanSteps

Namespace
Kuestenlogik.Bowire.Security
Assembly
Kuestenlogik.Bowire.dll

The step primitives the orchestrator chains — supplied by the caller so the control flow stays deterministic + testable while the real work (AI threat-model / probe execution / AI triage / AI report) is pluggable.

public interface ISecurityScanSteps

Methods

ProbeAsync(RankedEndpoint, CancellationToken)

#60/#62 + execution — suggest and run probes against one endpoint, returning raw findings.

Task<IReadOnlyList<OrchestratedFinding>> ProbeAsync(RankedEndpoint endpoint, CancellationToken ct)

Parameters

endpoint RankedEndpoint
ct CancellationToken

Returns

Task<IReadOnlyList<OrchestratedFinding>>

ReportAsync(OrchestratedScanResult, CancellationToken)

#107 — write the final report markdown from the kept findings. May return null.

Task<string?> ReportAsync(OrchestratedScanResult interim, CancellationToken ct)

Parameters

interim OrchestratedScanResult
ct CancellationToken

Returns

Task<string>

ThreatModelAsync(IReadOnlyList<OrchestratorEndpoint>, CancellationToken)

#59 — rank the endpoints by attack-surface risk.

Task<IReadOnlyList<RankedEndpoint>> ThreatModelAsync(IReadOnlyList<OrchestratorEndpoint> endpoints, CancellationToken ct)

Parameters

endpoints IReadOnlyList<OrchestratorEndpoint>
ct CancellationToken

Returns

Task<IReadOnlyList<RankedEndpoint>>

TriageAsync(OrchestratedFinding, CancellationToken)

#61 — score a finding real-vs-false-positive (0–100) with a one-line reason.

Task<(int RealScore, string? Reasoning)> TriageAsync(OrchestratedFinding finding, CancellationToken ct)

Parameters

finding OrchestratedFinding
ct CancellationToken

Returns

Task<(int RealScore, string Reasoning)>