Skip to content

Add a pure RegressionReport service - #307

Merged
aliceinwire merged 4 commits into
kernelci:mainfrom
aliceinwire:improvements
Sep 3, 2026
Merged

Add a pure RegressionReport service#307
aliceinwire merged 4 commits into
kernelci:mainfrom
aliceinwire:improvements

Conversation

@aliceinwire

Copy link
Copy Markdown
Member
  • Classifies regressions, fixes, unstable results, persistent failures, new results, and missing results.
  • Preserves duplicate executions using occurrence indexes rather than collapsing them into dictionary entries.
  • Uses origin, platform, architecture, compiler, configuration, path, and result type as the comparison identity.
  • Incorporates Dashboard tree-report classifications for history-aware regression, fixed, and unstable detection.

Comment thread kcidev/api.py Outdated
Comment thread kcidev/api.py Outdated
Comment thread kcidev/libs/regression.py Outdated
Comment thread kcidev/libs/regression.py Outdated
Comment thread kcidev/libs/regression.py
Comment thread kcidev/libs/regression.py
Comment thread kcidev/subcommands/results/__init__.py Outdated
Comment thread kcidev/subcommands/results/__init__.py
Comment thread kcidev/subcommands/results/__init__.py
Comment thread kcidev/api.py
Comment thread tests/test_regression.py
@aliceinwire
aliceinwire force-pushed the improvements branch 10 times, most recently from e3604c2 to 5021f47 Compare September 2, 2026 11:30
- Classifies regressions, fixes, unstable results, persistent failures, new results, and missing results.
- Preserves duplicate executions using occurrence indexes rather than collapsing them into dictionary entries.
- Uses origin, platform, architecture, compiler, configuration, path, and result type as the comparison identity.
- Incorporates Dashboard tree-report classifications for history-aware regression, fixed, and unstable detection.

Signed-off-by: Arisu Tachibana <arisu.tachibana@miraclelinux.com>
Signed-off-by: Arisu Tachibana <arisu.tachibana@miraclelinux.com>
Signed-off-by: Arisu Tachibana <arisu.tachibana@miraclelinux.com>
…stallation

This prevent concurrent pip operations from racing
Useful for shared Python environment like GitHub workflow

Signed-off-by: Arisu Tachibana <arisu.tachibana@miraclelinux.com>
@aliceinwire

Copy link
Copy Markdown
Member Author

tested with the following script locally

KCI=(poetry run kci-dev)
GITURL=https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
BRANCH=master

mapfile -t commits < <(
  "${KCI[@]}" results summary \
    --giturl "$GITURL" \
    --branch "$BRANCH" \
    --history \
    --json |
    jq -r '(if type == "array" then . else .commits end)[0:2][].git_commit_hash'
)

HEAD=${commits[0]}
BASE=${commits[1]}

printf 'BASE=%s\nHEAD=%s\n' "$BASE" "$HEAD"

echo "#### compare"

"${KCI[@]}" results compare \
  --giturl "$GITURL" \
  --branch "$BRANCH" \
  --format json \
  "$BASE" "$HEAD" |
  jq .

echo "#### include-issues"

"${KCI[@]}" results compare \
  --giturl "$GITURL" \
  --branch "$BRANCH" \
  --include-issues \
  --format json \
  "$BASE" "$HEAD" |
  jq .

echo "#### gate"

"${KCI[@]}" results gate \
  --giturl "$GITURL" \
  --branch "$BRANCH" \
  --base "$BASE" \
  --head "$HEAD" \
  --fail-on regression \
  --format json |
  jq .

echo "#### gate latest"

"${KCI[@]}" results gate \
  --giturl "$GITURL" \
  --branch "$BRANCH" \
  --format json

@aliceinwire
aliceinwire merged commit 0f2b4a4 into kernelci:main Sep 3, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants