Validates Chromium generated builder configurations (gn-args.json) for code coverage correctness based on language context.
56
63%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./agents/skills/experimental-code-coverage-config-validator/SKILL.mdUse this skill to verify if a Chromium builder is correctly configured in its
generated GN arguments (gn-args.json) to produce code coverage data.
When invoking this skill, the caller MUST pass the following inputs in the prompt:
builders_of_concern: Target builder names to validate (e.g.,
["linux-rel"]). To locate the Starlark .star definition file for each
builder, reference:
builder_star_map.json.language_context: The programming language context ("cpp", "objc",
"rust", "java", "js", or "ts"). Consult
language_coverage_map.json for authoritative mappings.Consult language_coverage_map.json for the required settings mapped
to language_context. Verify that the builder's configuration (gclient_config
and generated gn-args.json) satisfies both:
builder_spec.gclient_config to confirm
any required_gclient_vars (e.g., checkout_clang_coverage_tools set via
apply_configs = ["use_clang_coverage"]).gn_args): Inspect generated gn-args.json to confirm all
required_gn_args are present.builder_name inside
infra/config/generated/builders/gn_args_locations.json to resolve its
relative path (e.g., "try/linux-rel/gn-args.json"). Read the JSON file at
infra/config/generated/builders/<relative_path>."gn_args" dictionary in the JSON.language_context.lucicfg generate infra/config/main.star.language_context is "cpp", "objc", or
"rust", append a reminder that local Clang code coverage generation
requires "checkout_clang_coverage_tools": True in the developer's
~/.gclient file under custom_vars.Builder linux-rel validation successful for language context cpp. All required GN arguments (
use_clang_coverage = true,is_clang = true, andis_debug = false) are present ingn-args.json.
Builder linux-rel for language context cpp requires updates:
LACKING:
"is_debug": falseis missing ingn-args.json.SUGGESTED CHANGE: Update the Starlark builder definition to set
is_debug = Falseand runlucicfg generate infra/config/main.star.REMINDER: For local C++ coverage generation, ensure your
~/.gclientfile contains:custom_vars = { "checkout_clang_coverage_tools": True, }
Builder android-x86-rel for language context java requires updates:
- LACKING:
"use_jacoco_coverage": trueis missing ingn-args.json.- SUGGESTED CHANGE: Update the Starlark builder definition to set
use_jacoco_coverage = Trueand regenerate configs vialucicfg.
b0c5c68
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.