Skip to content

[2.x] fix: Prefer direct key selection over aggregate-only fallback#8775

Merged
eed3si9n merged 1 commit intosbt:developfrom
it-education-md:fix/8772-testfull-root-selection
Feb 21, 2026
Merged

[2.x] fix: Prefer direct key selection over aggregate-only fallback#8775
eed3si9n merged 1 commit intosbt:developfrom
it-education-md:fix/8772-testfull-root-selection

Conversation

@it-education-md
Copy link
Copy Markdown
Contributor

Problem

In 2.0.0-RC9, testFull can resolve to an aggregate-only candidate before a directly defined key.
For a root project, this can run only aggregated child tests and skip root tests, so failing root tests may pass unexpectedly.

Solution

Update Act.select to prefer directly defined keys in settings data and only use aggregate-only candidates as a fallback.
Add a scripted regression test at tests/i8772-root-project-testfull, while preserving aggregate fallback behavior covered by project/extra-projects-key-aggregate.

Verification

I manually reviewed all changes and verified behavior locally.

Closes #8772

**Problem**
`testFull` can select an aggregate-only key before a directly defined root key.
In issue sbt#8772 this causes root project tests to be skipped, so a failing root test can pass unexpectedly.

**Solution**
Prefer directly defined keys in `Act.select`, and only fall back to aggregate-only candidates when no direct key exists.
Add scripted regression test `tests/i8772-root-project-testfull` and keep `project/extra-projects-key-aggregate` behavior intact.
@it-education-md
Copy link
Copy Markdown
Contributor Author

@eed3si9n @xuwei-k please review my pr.

Copy link
Copy Markdown
Member

@eed3si9n eed3si9n left a comment

Choose a reason for hiding this comment

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

Thanks!

@eed3si9n eed3si9n merged commit ae1066e into sbt:develop Feb 21, 2026
15 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.x] ignore root project tests

2 participants