Structured Sidecars
Homeboy core owns the structured sidecar registry used by extension runners.
Extension manifests declare support with structured_sidecars. Boolean declarations use the core default path, producer, and schema version. Detailed declarations may override the path or producer for extension-specific packaging needs.
Canonical sidecar keys:
lint.findingswrites normalized lint finding arrays tolint-findings.json.test.resultswrites normalized test result objects totest-results.json.test.failureswrites parsed test failure arrays totest-failures.json.bench.resultswrites benchmark result objects tobench-results.json.trace.resultswrites trace result objects totrace.json.trace.artifactswrites trace artifact metadata arrays underartifacts.annotationswrites inline-review annotation arrays underannotations.
Core validation is intentionally shape-focused: it rejects unknown sidecar keys, wrong top-level JSON containers, non-object array items, and missing minimum required fields. Extension-specific parsers can still enforce richer producer semantics after the generic contract passes.
bench.results and trace.results additionally validate known product-neutral browser/profile/trace evidence fields against the core browser evidence schemas. See Browser Evidence Schemas.
Runtime helper distribution is also core-owned. Normal Homeboy extension execution injects HOMEBOY_RUNTIME_* helper paths, and direct invocations can resolve a helper with:
homeboy runtime helper path runner-prelude.sh
homeboy runtime helper path HOMEBOY_RUNTIME_COMMAND_CAPTURE