Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Java: Automodel Application Mode: Add Candidates for Regression Testing #13954

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

kaeluka
Copy link
Contributor

@kaeluka kaeluka commented Aug 14, 2023

This adds additional candidates that are useful for regression testing.

For regression testing, we want to also look at candidates that we used to extract and then modeled using automodel.

To achieve that, we add the candidates to the extraction query, but also add metadata so that we can skip them during non-testing uses.

@kaeluka kaeluka requested a review from a team as a code owner August 14, 2023 10:58
@github-actions github-actions bot added the Java label Aug 14, 2023
@kaeluka kaeluka requested a review from tausbn August 14, 2023 10:59
@kaeluka kaeluka added the no-change-note-required This PR does not need a change note label Aug 14, 2023
Copy link
Contributor

@tausbn tausbn left a comment

Choose a reason for hiding this comment

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

Short and sweet! 👍

I have a small suggestion for how to make this more flexible (in case we need it), but otherwise this looks good to me.

@jhelie
Copy link
Contributor

jhelie commented Aug 15, 2023

⚠️ This is based on another PR (#13886) that is currently under review and should be merged first. It is sufficient to review starting with commit 551b34e

drive-by comment: I do that quite often too and I find that selecting the previous PR's branch as the merge target for the second PR is quite handy to keep things clear.

@jhelie
Copy link
Contributor

jhelie commented Aug 15, 2023

Thanks @kaeluka! Just to double check my understanding: this design does mean that during normal operation (i.e. not regression testing) we need to implement a filter in the script that will skip the candidates with an ai-{foo} provenance, correct?

In practice I imagine that the majority of candidates will not have an AI-provenance and so that skipping will be the exception (and so won't impact performance) but ooi have we also considered a 2 queries design whereby we would add a AutomodelApplicationModeExtractCandidatesRegression.ql query?

@kaeluka
Copy link
Contributor Author

kaeluka commented Aug 16, 2023

Just to double check my understanding: this design does mean that during normal operation (i.e. not regression testing) we need to implement a filter in the automodel.py script that will skip the candidates with an ai-{foo} provenance, correct?

Yes! 👍

In practice I imagine that the majority of candidates will not have an AI-provenance and so that skipping will be the exception (and so won't impact performance) but ooi have we also considered a 2 queries design whereby we would add a AutomodelApplicationModeExtractCandidatesRegression.ql query?

I have, and have discussed that in our standup on Monday, remember? Two queries will mean increased maintenance load, even though the two queries would be almost exactly the same.

@kaeluka
Copy link
Contributor Author

kaeluka commented Aug 16, 2023

drive-by comment: I do that quite often too and I find that selecting the previous PR's branch as the merge target for the second PR is quite handy to keep things clear.

Thanks! I considered that but have never done it before because I wasn't sure how the UI would present that! Will do that next time ;)

Edit: now that the 'base' branch was merged, I could update this PR and it only shows the new commits as intended.

@jhelie
Copy link
Contributor

jhelie commented Aug 16, 2023

Shall we have similar changes for framework mode in the same PR?

@jhelie
Copy link
Contributor

jhelie commented Aug 16, 2023

Two queries will mean increased maintenance load, even though the two queries would be almost exactly the same.

It feels a little weird to always extract all candidates instead of just the ones we need (seems like the wrong away around) but we can easily modify that later if need be.

In the meantime we should probably avoiding merging this until we have the filter implemented in the script.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Java no-change-note-required This PR does not need a change note
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants