[roll] Roll fuchsia [fxtest][gemini] Add Gemini-powered test failure analysis via flag

This change introduces a new feature to fxtest that provides AI-powered
analysis of test failures. When a test fails, developers can use the
--gemini-analysis flag to get a summary of the failure, a potential root
cause, and a suggested fix.

This flag supports three verbosity levels (1-3) for the analysis.

To enable this feature, the environment variable for the
'GEMINI_API_KEY' must be provided on the command line using the '--env' flag.

You can also provide a model parameter '--gemini-model' to specify which
gemini model is used.

Example:`fx test your_test_name --gemini-analysis --env
GEMINI_API_KEY="your_api_key_here --gemini-model='gemini-2.5-flash' "`

This is intended to help developers debug test failures more quickly.

Test: Added unit tests for the new functionality (execution_test.py, args_test.py, gemini_analysis_test.py)
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1404203
Original-Revision: 5954f89ce9695db20c5a226b63a5ba35ce219297
GitOrigin-RevId: 51cf6c04126fc307bc9f7e884ed42b95e2041366
Change-Id: I2e7d19f64ac99a350e9e3907267d245defb334db
1 file changed
tree: 5d47696ab286bc0073b215d3f865a9b60e457875
  1. ctf/
  2. git-hooks/
  3. infra/
  4. third_party/
  5. flower
  6. jiri.lock
  7. MILESTONE
  8. minimal
  9. prebuilts
  10. README.md
  11. stem
  12. test_durations
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.

Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance in one of the communication channels documented at get involved.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.