Repository navigation
Add clean-install check script and CI job - #259
Merged
HanjiangWu313 merged 2 commits intoNov 11, 2026
Merged
Conversation
|
MLCommons CLA bot All contributors have signed the MLCommons CLA ✍️ ✅ |
ajbalogh
reviewed
Nov 9, 2026
|
|
||
| - name: Check Clean Install | ||
| run: | | ||
| PYTHON=python scripts/check_clean_install.sh |
Contributor
There was a problem hiding this comment.
A failed run discards all logs.
- Why it matters: The script deletes
${WORK}on exit through thetrap. A CI failure on one Python version leaves only the console replay. There is nodebug.log, linked trace or.etoutput to inspect. - Suggested Fix: Keep the work directory on failure and upload it.
| on: | ||
| pull_request: | ||
| workflow_dispatch: | ||
|
|
Contributor
There was a problem hiding this comment.
The workflow does not restrict the GITHUB_TOKEN.
- Why it matters: The job runs third-party code from a pinned git dependency. Default token scopes can be broader than the job needs. CodeQL flags a missing
permissionsblock.
HanjiangWu313
self-requested a review
November 10, 2026 22:34
HanjiangWu313
approved these changes
Nov 11, 2026
HanjiangWu313
left a comment
Contributor
There was a problem hiding this comment.
Tested locally on both standalone and with current main; all clean-install checks passed—looks good to me.
Contributor
|
This seems to be missing versions 3.14 and 3.15, any particular reason? |
theodorbadea
requested changes
Nov 12, 2026
| strategy: | ||
| fail-fast: false | ||
| matrix: | ||
| python-version: ['3.11', '3.12', '3.13'] |
Contributor
There was a problem hiding this comment.
should add 3.14 and 3.15
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds a script and CI job that prove a fresh install of Chakra works on every supported Python. Addresses #227.
scripts/check_clean_install.sh:python -m build) from a copy of the git-tracked files.et_replayin a fresh venv.--help.chakra.schema.protobuf.et_def_pb2andstorage_pb2in an isolated interpreter and checks that both.protofiles are packaged.chakra_trace_linkandchakra_converteron the fixture. For each tool it checks: exit code 0, the output exists and decodes (linked JSON parses; the.etreads withprotoliband has more than 0 nodes), and no ERROR/CRITICAL line or Traceback in stdout, stderr ordebug.log. It also fails on "Critical path analysis encountered an invalid graph structure". Warning lines are counted and reported, not fatal..et,debug.jsonand the input traces) toFAILURE_ARTIFACTS_DIR, and the workflow uploads them as an artifact (clean-install-<python version>), so a failure on one Python version can be investigated without rerunning it.The script runs standalone (e.g.
PYTHON=python3.12 scripts/check_clean_install.sh) and in CI (.github/workflows/clean_install_tests.yml).Fixture
tests/data/simple_onerank_traces.tar.gzcontainshost.0.jsonanddevice.0.jsongenerated bytrace_collection/post_execution/simple_onerank.pyon a CUDA machine.Python versions
The workflow runs the script on Python 3.11, 3.12 and 3.13 (
requires-python >= 3.11).Test Plan
Run locally in a clean environment, as the workflow does (
PYTHON=python scripts/check_clean_install.sh):.et, 10 WARNING lines).et, 10 WARNING lines).et, 10 WARNING lines)The first real run on
ubuntu-latestis this PR's CI.Additional Notes
chakra_trace_linkfails on it:load_sync_dependenciescalls HTA/traceinsightcritical_path_analysis, which expects GPU kernels and fails on a trace with none.cuda_syncevents (the profiler disables them by default).