This repository is a research artifact first. Keep changes small, attributable, and easy to validate.
export CC=gcc
export CXX=g++
export PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1
uv sync --extra devRun from the repository root:
uv run ruff check .
uv run pytest
uv run python -m telemetry_adaptation.cli --helpUse the smoke config for the fastest end-to-end validation:
SMOKE_RUN_DIR="$(uv run python -m telemetry_adaptation.cli run-benchmark --config configs/benchmark/smoke.yaml --print-run-dir)"
uv run python -m telemetry_adaptation.cli summarize-results --input "$SMOKE_RUN_DIR" --output docs/results-smoke.mdThis writes a timestamped run directory under artifacts/results/smoke/. Large raw benchmark outputs remain intentionally untracked, while compact evidence snapshots under docs/results-evidence/ and docs/results-smoke-evidence/ are kept in version control.
If you want to reproduce the accepted full benchmark that includes SMD, prepare the dataset first:
uv run python -m telemetry_adaptation.cli prepare-data --dataset smd --subset machine-1-1If you change benchmark logic, policy behavior, or thesis-facing documentation:
- Read the current
docs/results.md. - Keep a local experiment log or design note outside tracked repository files.
- Preserve evidence for any new public claim before updating committed summaries.
- Prefer one bounded idea per pull request.
- Include the exact validation commands you ran.
- Do not commit large
artifacts/results/directories. - Do not rewrite unrelated user changes in a dirty worktree.