Skip to content

BenchX target provider request

urn:benchx:schema:target-provider-request:0.1.0 · version 0.1.0 · schema.json · source

What the workbench writes to a target provider's stdin (docs/design/system-decomposition.md §3.4). One request is one target; a comparison is two independent requests. The provider answers with a target description on stdout, or exits nonzero with its message on stderr.

Implementer note

prepare may build, incrementally and repeatably, and must finish before any work order exists. describe never builds or changes anything: it reports a target that already exists, and exits nonzero when there is none. configuration is a project-defined name that benchx treats as opaque.

Properties

Property Required Type Description
schema_version yes constant "benchx/target-provider-request/0.1.0"
operation yes one of "describe", "prepare"
source_ref yes string (min length 1) What to provide a target for: a revision, the token WORKSPACE for the current checkout, or a path. Interpreted by the provider.
configuration string or null Project-defined configuration name, such as hardened or plain. Opaque to benchx; absent or null means the provider's default.

No other properties are allowed.

Examples

{
  "schema_version": "benchx/target-provider-request/0.1.0",
  "operation": "describe",
  "source_ref": "HEAD~1"
}
{
  "schema_version": "benchx/target-provider-request/0.1.0",
  "operation": "prepare",
  "source_ref": "WORKSPACE",
  "configuration": "hardened"
}