One-line install, user approval, environment setup workflow, and Python improvements
New features
- One-line install scripts. Install Diffblue Agents with a single command on macOS, Linux, and Windows. The script downloads the latest release, extracts it, and adds it to your
PATH. See installation for details. - Approval prompt before test generation. After resource estimates are calculated, the CLI displays the expected cost and asks for confirmation before proceeding. Use
--auto-approveto skip the prompt in CI or automated workflows. regression-unit-tests-prepare-projectworkflow. Environment validation and setup now runs as its own workflow, separate from test generation. Runregression-unit-tests-prepare-projectto verify your project environment without starting test generation. See prepare project for details.
Improvements
- Automatic Python test dependency detection. During environment setup, the agent scans existing test files for patterns (e.g.
@pytest.mark.asyncio) and automatically installs missing test dependencies before test generation starts. - Actionable error messages. Common failures (out of tokens, timeouts, license errors) now show specific remediation steps instead of generic error messages.
- Environment setup changes visible in CLI. Installed packages and configuration changes made during environment setup are now displayed in the CLI output.
- Improved JDK detection. Java version resolution now checks
PATHand the originalJAVA_HOMEin addition to standard locations, reducing failures on machines with complex Java setups. - Faster coverage checks. Redundant coverage verification is now skipped when building projects, reducing test generation time.
- Generated Python files copied to source. Dynamically generated files (e.g.
_version.py) are now copied from the virtual environment back to the source tree, fixing issues with Python packages that generate version files during build.
Fixes
- Windows command line length limit for git operations. Resolved “command too long” errors on Windows when committing or reverting large changesets.
- Duplicate license activation prompt. The license activation prompt no longer appears twice during the automatic installation flow.
- CLI error after install completes. Resolved a UI error that could appear after installation finishes.
- Long workflow names no longer break CLI layout. The “Executing” label now wraps correctly for workflows with long names.
- Python venv symlinks on macOS. Python virtual environment setup no longer fails on macOS due to broken symlinks after worktree copy.
- Paths with spaces on Windows. The server launcher now correctly handles installation paths that contain spaces on Windows.
- Special characters in filenames. Git file tracking now handles repositories with special characters in filenames.
Module filtering, proxy support, and Python reliability
New features
--moduleflag for filtering test generation. Limit test generation to specific modules in multi-module projects with--module apps/server,apps/cli.
Improvements
- Corporate proxy support. Configure a corporate proxy (
diffblue.agents.proxy.host,diffblue.agents.proxy.port) for environments that route traffic through a proxy. Proxy support extends to both license validation and telemetry. - Automatic server restart on license change. The server now detects when the license file has changed and automatically restarts with the new configuration.
- Lines covered column in summary. The test generation summary now includes a “Lines Covered” column showing coverage counts (e.g. “160/200”).
Fixes
- JVM memory exhaustion with parallel agents. Fixed out-of-memory errors when running multiple agents in parallel by automatically calculating appropriate JVM heap limits based on available system memory.
- Python virtual environment reliability. Fixed multiple issues with Python virtual environment path repair when copying between worktrees, including stale
.pthfiles,direct_url.jsonpaths, and Windows-specific path handling. - Non-source files excluded from callable discovery. Files that are not valid source code (e.g. font files, text files in source directories) are now filtered out during callable discovery, preventing lexer crashes.
- Undefined work unit count in planning summary. Fixed a display issue when work unit counts were undefined in the planning summary view.
- Raw mode errors in non-interactive environments. The CLI no longer errors when run in non-interactive environments such as CI/CD pipelines.