layout: documentation title: Build Event Protocol Glossary

Build Event Protocol Glossary

Each BEP event type has its own semantics, minimally documented in build_event_stream.proto. The following glossary describes each event type.

Aborted

Unlike other events, Aborted does not have a corresponding ID type, because the Aborted event replaces events of other types. This event indicates that the build terminated early and the event ID it appears under was not produced normally. Aborted contains an enum and human-friendly description to explain why the build did not complete.

For example, if a build is evaluating a target when the user interrupts Bazel, BEP contains an event like the following:

OptionsParsed

A single OptionsParsed event lists all options applied to the command, separating startup options from command options. It also includes the InvocationPolicy, if any.

TargetSummary

For each (target, configuration) pair that is executed, a TargetSummary event is included with an aggregate success result encompassing the configured target's execution and all aspects applied to that configured target.

TestResult

If testing is requested, a TestResult event is sent for each test attempt, shard, and run per test. This allows BEP consumers to identify precisely which test actions failed their tests and identify the test outputs (e.g. logs, test.xml files) for each test action.

TestSummary

If testing is requested, a TestSummary event is sent for each test (target, configuration), containing information necessary to interpret the test's results. The number of attempts, shards and runs per test are included to enable BEP consumers to differentiate artifacts across these dimensions. The attempts and runs per test are considered while producing the aggregate TestStatus to differentiate FLAKY tests from FAILED tests.

UnstructuredCommandLine

Unlike CommandLine, this event carries the unparsed commandline flags in string form as encountered by the build tool after expanding all .bazelrc files and considering the --config flag.

The UnstructuredCommandLine event may be relied upon to precisely reproduce a given command execution.

WorkspaceConfig

A single WorkspaceConfig event contains configuration information regarding the workspace, such as the execution root.

WorkspaceStatus

A single WorkspaceStatus event contains the result of the workspace status command.