feat: Add JSON schema definitions for coverage and trace artifacts in reachability benchmark
This commit is contained in:
@@ -3,8 +3,11 @@
|
||||
- `case.schema.yaml` — case descriptor (language, sinks, deterministic build/test, environment, optional inline ground truth summary).
|
||||
- `entrypoints.schema.yaml` — declared entrypoints grouped by type (`http`, `cli`, `scheduled`, etc.).
|
||||
- `truth.schema.json` — ground-truth labels + evidence per sink (`reachable`/`unreachable`/`unknown`).
|
||||
- `coverage.schema.json` — coverage artifact emitted by oracle tests (lines covered or function-level coverage).
|
||||
- `trace.schema.json` — dynamic trace artifact (structured path or event log) proving reachability/unreachability.
|
||||
- `submission.schema.json` — submission format (tool/run metadata, per-sink predictions, explanations).
|
||||
- `examples/` — minimal valid examples for each schema.
|
||||
- `benchmark/schemas/benchmark-manifest.schema.json` — kit manifest with hashed artifacts, resource limits, and optional DSSE signatures.
|
||||
|
||||
## Validate quickly
|
||||
```bash
|
||||
@@ -15,6 +18,8 @@ python -m pip install -r ../tools/requirements.txt
|
||||
python ../tools/validate.py case examples/case.sample.yaml
|
||||
python ../tools/validate.py entrypoints examples/entrypoints.sample.yaml
|
||||
python ../tools/validate.py truth examples/truth.sample.json
|
||||
python ../tools/validate.py coverage ../cases/js/unsafe-eval/outputs/coverage.json
|
||||
python ../tools/validate.py trace ../cases/js/unsafe-eval/outputs/traces/traces.json
|
||||
python ../tools/validate.py submission examples/submission.sample.json
|
||||
|
||||
# or validate everything in one shot
|
||||
|
||||
Reference in New Issue
Block a user