All Classes and Interfaces
Class
Description
Represents any way AI analysis can fail to produce a usable result.
Bounded shared execution for manual and notification analysis requests.
A controller-local reservation survives action deserialization, but never a controller restart.
Provider-agnostic analysis request: a system prompt, the evidence rendered as the user
message, and the sampling temperature.
Provider-agnostic analysis result: the raw assistant text (not yet parsed as the
evidence-assessment JSON - see
AiResponseParser), plus which provider and model
actually produced it, for display alongside the assessment.Orchestrates one AI analysis: builds the prompt, calls the configured provider, parses the
result.
The AI's interpretation of a
BuildInvestigationEvidence
bundle.One outbound call to one AI provider's chat/completion API.
One selectable AI provider in the "AI Provider" dropdown (rendered via
f:dropdownDescriptorSelector), holding exactly the non-secret, provider-specific
configuration that provider needs (endpoint, deployment, region, model, credential ID, ...).Parses the model's chat-completion message content into an
AiAssessment.Anthropic Claude, via the native Messages API - see
AnthropicProvider for the wire
contract.Azure OpenAI, using the classic dated-
api-version REST surface.AWS Bedrock, via the Runtime
Converse API - see BedrockProvider for the wire
contract.The complete, deterministic evidence bundle collected from Jenkins for one investigation.
Mutable builder used only during evidence collection.
A single SCM change entry (commit / revision) observed between the last successful
build and the failed build under investigation.
Administrator-controlled, instance-wide settings for AI-assisted regression analysis.
Permissions specific to this plugin.
Conservative recovery evidence from actual Maven compiler execution, not the build result alone.
Constructed only by positive execution checks; callers cannot manufacture a green proof.
Confidence level the AI assessment reports for its regression hypothesis.
Bounded display text and a verified route from a non-posting connection check.
Delivery certainty, rather than a promise of exactly-once delivery.
Deterministic transitions.
A bounded per-job outbox.
Collects
BuildInvestigationEvidence for a build using only generic, SCM-agnostic
Jenkins core APIs (Run, ChangeLogSet).Structured, bounded observations from a redacted console excerpt.
Google Gemini, via the native
generateContent REST API - see GeminiProvider for the wire contract.Bounded signature-based history proof.
The "Build Change Investigation" action attached to failed/unstable/aborted builds.
One immutable rendering snapshot; no instance is stored with the build.
Immutable view and copy model shared by automatic and explicitly selected comparisons.
Attaches a
InvestigationAction to builds that finished worse than SUCCESS,
collecting only the deterministic (non-AI) evidence at that point.Reduces a (potentially huge) console log down to a small, bounded set of lines that are
likely relevant to diagnosing a build failure, without ever sending the entire log
anywhere.
Small build-time manifest observations; no workspace or SCM access occurs while rendering a page.
Bounded administrator-requested refresh of stored exact member mappings.
Private verification metadata for an explicitly selected member; the ID remains authoritative.
Generated localization support class.
A local (or self-hosted) Ollama instance, via its OpenAI-compatibility layer
(
{baseUrl}/chat/completions).Any endpoint that speaks the OpenAI "chat completions" HTTP shape - OpenRouter, LiteLLM,
vLLM, LM Studio, and similar gateways/proxies not otherwise listed as a first-class provider.
OpenAI itself.
Builds the prompt sent to the configured OpenAI-compatible endpoint.
Explainable relationships; a matching file is never a claim that its failing line changed.
An administrator-maintained exact identity mapping with optional workspace verification.
Public diagnostics contain only category guidance, never provider payloads or exception messages.
Best-effort redaction of common secret patterns from log text before it is ever
included in an evidence bundle or sent to an AI provider.
Global Slack settings.
Explicit per-job opt-in, scoped to builds scheduled after enabling notifications.
Slack-only presentation: untrusted evidence is always plain text, never mrkdwn.
Native administrator management of explicit SCM identity mappings.
Resolved workspace and conversation identity, never a token or configurable URL.
Small bounded worker pool.
The configured execution identity is frozen before the build, never reconstructed from a changed job.
Bounded notification projection of existing BCI evidence, independent of AI interpretation.
Read-only delivery summary; viewing it never schedules work or contacts Slack.
Fixed-origin Slack Web API transport.