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

Include common review comments in the PR template #351

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

Conversation

BrieucF
Copy link
Contributor

@BrieucF BrieucF commented Jul 5, 2024

I open this PR to discuss the content of .github/PULL_REQUEST_TEMPLATE

BEGINRELEASENOTES

  • Include common review comments in the PR template

ENDRELEASENOTES

@jmcarcell
Copy link
Member

Another question would be if we want the same templates for all of the Key4hep repositories or not; at least the questions in the template in this PR are quite generic and don't need to refer to the exact file in the current repository.

@BrieucF
Copy link
Contributor Author

BrieucF commented Jul 5, 2024

Another question would be if we want the same templates for all of the Key4hep repositories or not; at least the questions in the template in this PR are quite generic and don't need to refer to the exact file in the current repository.

That is a good point, what is written there is indeed very generic. The only thing is that I wanted to link the README(s) and the tests here because people might not know where they are... But ok, this is not a super strong argument, I let you guys decide

@tmadlener
Copy link
Contributor

I think (most of) the other Key4hep ones already pull theirs from the central templates. k4geo is likely a special case due to its history and the fact that it was originally in the iLCSoft organisation.

I have no strong opinion either, but as Brieuc has already pointed out two things that are somewhat k4geo specific, I would lean slightly towards keeping the dedicated template here.

@atolosadelgado
Copy link
Collaborator

There is a battery of tests I do for geometries, can we add these as check boxes, at least it would be useful for ourselves as Andre suggested :)

  • overlap check (maybe increasing the number of points up to 100k or more). I think this one is already in the list
  • simulation with geantinos, 300k or more. If error is print out during navigation, one has to go back to previous point. Verbosity can be increased to catch inconsistencies
  • material scan. This one is more handmade, because one has to spot the error by oneself (that is, if you expect aluminum and the geantinos do not see aluminum, there is a problem)
  • simulation with physical particles (particle gun), which can trigger errors during navigation (as it was the case of the twisted tube)

Even with default verbosity, the amount of text printed out is too much, so I usually redirect the output to a file and then look for some keywords such as error and G4-Exception.

The tests of the simulation with physical particles and geantinos are also useful to get an idea of the speed.

@BrieucF
Copy link
Contributor Author

BrieucF commented Nov 28, 2024

Sorry for the long silence, here is a new version.

@atolosadelgado
Copy link
Collaborator

atolosadelgado commented Jan 27, 2025

Hi,

The transition from k4simgeant4 to DDSim has revealed that many subsystems lack defined regions and limits, which may compromise accuracy. I recommend attaching a region to each subsystem, specifying the production cut and optionally associating it with appropriate limits.

Some information about the Region [link, link] and the associated user limits [link] can be found in Geant4 documentation.

Copy link
Contributor

@tmadlener tmadlener left a comment

Choose a reason for hiding this comment

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

Should we consider splitting this list into more than one? E.g. one that definitely almost always applies (e.g. test coverage, README updates, etc..) and one (or more) other ones that apply for entirely new developments or significant changes.

How long does an overlap check take? Can we run that in CI automatically? Everything that doesn't have to be done manually is less work for everyone involved.

@atolosadelgado
Copy link
Collaborator

Should we consider splitting this list into more than one? E.g. one that definitely almost always applies (e.g. test coverage, README updates, etc..) and one (or more) other ones that apply for entirely new developments or significant changes.

How long does an overlap check take? Can we run that in CI automatically? Everything that doesn't have to be done manually is less work for everyone involved.

The overlap check can take several minutes already for 1 subsystem, but some tricks may be applied to speed it up. I added dedicated tests for ARC and the drift chamber [link], but they are heavily customized and standalone.

Recently, I noticed that simulation of Geantinos is also useful to spot problems, and it may be better suited for big detectors (10M geantinos should be fast and they would cover the 4pi with some granularity). Adding this check to the CI tests looks like a good idea to me, thanks for the question!

@BrieucF
Copy link
Contributor Author

BrieucF commented Feb 20, 2025

Here a new version with comments implemented. I did not add a requirement on the detector region/limits, I feel like it is a bit too detailed, but feel free to propose a sentence if you think it is important and should be included here.

I propose to tackle the 'overlap check in CI' in another PR.

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.

5 participants