From 2071e2beda763137416ac386d4bb953711ec995d Mon Sep 17 00:00:00 2001 From: cirakg Date: Sun, 18 Oct 2026 20:28:09 +0200 Subject: test(tools): add test-log judge, docs and policy checks with tests - ciq_test_report.py: decides pass/fail from Run No Evil output instead of monkeydo's unreliable exit code; writes JUnit XML. - check_docs.py: offline check of relative links and GitHub anchors. - lint_project.py: project rules (headers, no logging outside Diag, no secret-like literals, no network APIs or permissions). - check_budgets.py with budgets.json: perf and memory gates. - make_icon.py: reproducible launcher icon. - 31 pytest tests, including Hypothesis fuzzing of the log parser and integration checks against the real docs and sources; ruff and mypy (strict) clean. Co-Authored-By: Claude Opus 5.5 --- tools/budgets.json | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 tools/budgets.json (limited to 'tools/budgets.json') diff --git a/tools/budgets.json b/tools/budgets.json new file mode 100644 index 0000000..615cd74 --- /dev/null +++ b/tools/budgets.json @@ -0,0 +1,9 @@ +{ + "_about": "Simulator budgets checked by `make perf` and `make memtest` (README section 18). Simulator timings depend on your PC, so perf budgets only catch big regressions; from M4 on they are set to about 2x the measured baseline. Memory is a hard limit: at most 70 % of the watch-app memory of the device.", + "perf": { + "startup_ms": 3000 + }, + "mem": { + "mem_used_fraction": 0.70 + } +} -- cgit v1.2.3