Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions docs/benchmarks/multi_family_admissibility_benchmark.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,17 @@ python scripts/generate_multi_family_admissibility_artifact.py
npm run generate:multi-family-admissibility
```

## Deterministic SVG rendering

The benchmark also includes a deterministic SVG rendering step:

- Input: `artifacts/multi_family_admissibility_results.json`
- Output: `artifacts/multi_family_admissibility_curves.svg`
- Script: `scripts/render_multi_family_admissibility_svg.py`
- npm command: `npm run generate:multi-family-svg`
Comment on lines +70 to +75
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

For consistency with the 'Regeneration commands' section (lines 56-66), consider using code blocks for the SVG regeneration commands and including the Python script execution command explicitly. This makes the documentation easier to follow and the commands easier to copy-paste.

Suggested structure:

The benchmark also includes a deterministic SVG rendering step:

- Input: `artifacts/multi_family_admissibility_results.json`
- Output: `artifacts/multi_family_admissibility_curves.svg`

Use either command to regenerate the SVG:

```bash
python scripts/render_multi_family_admissibility_svg.py
npm run generate:multi-family-svg


The SVG output is deterministic by design with fixed dimensions, fixed axes, fixed degradation level order, lexicographic family order, a hardcoded palette, no timestamps, no generated IDs, and no embedded JavaScript.

## Validation commands

Run the targeted protections plus the repository-wide check entrypoint:
Expand All @@ -73,6 +84,7 @@ Run the targeted protections plus the repository-wide check entrypoint:
pytest tests/test_multi_family_admissibility_artifact.py -q
pytest tests/test_artifact_reproducibility.py -q
pytest tests/test_manifest_fixture_families.py -q
pytest tests/test_multi_family_svg_renderer.py -q
npm run check
```

Expand Down
Loading