willie-yao/prow-ai-dashboard

Reusable engine for AI-powered Prow/TestGrid dashboards

★ 0Forks 0GoGitHub ↗Compare

README

Important

This repository is archived. Development has moved to Aster. Use Aster for current source, documentation, releases, and issue tracking. The existing prow-ai-dashboard history, tags, and releases remain here for reference.

Prow AI Dashboard logo

prow-ai-dashboard

Reusable engine for AI-powered Prow and TestGrid dashboards. It discovers Prow jobs, analyzes failures, renders a React dashboard, and can notify maintainers or open guarded GitHub actions without requiring each project to fork the engine.

Active development. Pin consumers to @main, a commit SHA, or an exact prerelease until a stable release and moving v1 alias are published.

Start here

Run the guided onboarding wizard from the source repository you want to monitor:

go run github.com/willie-yao/prow-ai-dashboard/backend/cmd/fetcher@latest onboard

The wizard detects the current GitHub repository where possible and walks you through Prow discovery, deployment, AI, and output choices. It validates the result before writing a small consumer repository.

Continue with Onboarding a project. Flagged, dry-run, pull-request, and non-interactive usage is in the onboarding reference.

An LLM CLI can run the same engine-owned workflow with $setup-prow-ai-consumer. See the agent-driven setup guide.

Choose a deployment

Need Use
Fast evaluation or a public read-only dashboard GitHub Actions and Pages
A private in-cluster model endpoint or persistent shared data Kubernetes with Helm
Authenticated chat, File Issue, or Mark Resolved Kubernetes with Helm
No cluster to operate GitHub Actions and Pages

Both deployment paths use the dashboard-owned in-process analyzer. It is the supported and recommended runtime. Pages publishes static JSON and assets. Kubernetes adds a server for authentication, chat, and guarded actions.

Experimental external runtimes and Fix PR generation are not part of standard onboarding. Maintainers evaluating them can start from the complete documentation map.

What a project owns

A consumer normally contains only:

project.yaml
prompts/system.md
.github/workflows/deploy.yml   # GitHub Pages
# or
deploy/values.yaml             # Kubernetes
  • project.yaml identifies jobs, storage, branding, analysis policy, and optional features. Start with guided onboarding or the configuration reference.
  • prompts/system.md supplies project-specific architecture, artifact, and failure knowledge. It is required when AI analysis is enabled.
  • Deployment configuration supplies infrastructure details such as runner selection, model credentials, persistence, and authenticated server settings.

The files under configs/example are references, not a ready-to-deploy consumer. Replace every placeholder and validate the result with onboard doctor.

How data flows

Prow job configuration and artifact storage
                  |
            fetcher or worker
                  |
       in-process analysis
                  |
 dashboard.json, jobs/*.json, flakiness.json
                  |
       Pages or the Kubernetes server
                  |
             React dashboard

The Kubernetes server serves the same /data/*.json contract as Pages and adds /api/capabilities for server-only features.

Documentation

License

Apache License 2.0

Contributors

willie-yaoCopilot

Issues