Skip to content

Commit dcb4a4a

Browse files
Juan C. Guerreroclaude
authored andcommitted
feat: add Gemini CI analysis, PR comments, and CI orchestrator (Phase 3)
Completes the CI pipeline for automated visual regression on PRs: - analyze-gemini.ts: Batch multimodal analysis using Google GenAI SDK, processes 20-30 screenshot pairs per API call with structured JSON output - comment.ts: Generates markdown PR comments with regression tables, collapsible sections for intentional changes and noise, and pre-filter breakdowns. Posts via gh CLI. - ci.ts: Single entrypoint orchestrating capture → prefilter → Gemini analysis → PR comment. Exits code 1 on high-severity regressions. All three phases of the PRD are now implemented: Phase 1: Capture engine + baselines + plugin skeleton Phase 2: pixelmatch pre-filter with tiered classification Phase 3: Gemini CI + PR comments + orchestrator Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 217d3c5 commit dcb4a4a

File tree

8 files changed

+1152
-9
lines changed

8 files changed

+1152
-9
lines changed

.claude-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "dojowatch",
3-
"version": "0.2.0",
3+
"version": "0.3.0",
44
"description": "AI-native visual regression testing — capture, diff, and analyze UI changes with LLM vision",
55
"author": {
66
"name": "Dojo Coding LLC",

CHANGELOG.md

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,20 @@
11
# Changelog
22

3-
## [0.2.0] — Unreleased
3+
## [0.3.0] — Unreleased
4+
5+
### Added
6+
- **Gemini analysis module** (`scripts/analyze-gemini.ts`): Batch multimodal analysis using Google GenAI SDK
7+
- Batches 20-30 pairs per API call for efficient token usage
8+
- Structured JSON output via `responseMimeType: "application/json"`
9+
- Configurable model and API key environment variable
10+
- **PR comment generator** (`scripts/comment.ts`): Markdown summary with regression table, collapsible sections for intentional changes and noise, pre-filter breakdown
11+
- **CI orchestrator** (`scripts/ci.ts`): Single entrypoint for GitHub Actions
12+
- Pipeline: capture → prefilter → Gemini analysis → PR comment
13+
- Exits with code 1 on high-severity regressions
14+
- Saves full check run to `.dojowatch/last-check.json`
15+
- Comment generation tests
16+
17+
## [0.2.0]
418

519
### Added
620
- **Pre-filter engine** (`scripts/prefilter.ts`): pixelmatch-based tiered classification

0 commit comments

Comments
 (0)