Skip to content

Commit

Permalink
Merge pull request #138 from Gilead-BioStats/fix-137
Browse files Browse the repository at this point in the history
Workflow updates
  • Loading branch information
jwildfire authored Feb 16, 2022
2 parents 5e44bcf + b232b0d commit b4c617e
Show file tree
Hide file tree
Showing 4 changed files with 60 additions and 83 deletions.
8 changes: 4 additions & 4 deletions .github/ISSUE_TEMPLATE/qc.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
---
name: "Assessment QC Issue Template"
about: "Conduct a full QC of an Assessment"
name: "QC Issue Template"
about: "Update QC Framework: Documentation, Qualification, Automation etc. "
title: "QC: (fill in)"

---
## QC Details
<!--- What assessment(s) is/are being submitted for QC -->
<!--- What Updates are being made. Link to PR/Issues as appropriate. -->

## Additional Comments
<!--- Not required, anything else import pertaining to this QC -->
<!--- Not required, anything else import pertaining to this issue -->
17 changes: 0 additions & 17 deletions .github/ISSUE_TEMPLATE/qualify.md

This file was deleted.

51 changes: 41 additions & 10 deletions .github/PULL_REQUEST_TEMPLATE/release.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,48 @@
---
name: "Release Pull Request Template"
about: "Create a new package release"
title: "Release: (fill in)"
---
## Release Description
<!--- What is being released. Please include any new assessments or -->
<!--- fixes that have been added since the previous release -->

## Release Checklist
# Release Description
<!--- Summarize what is being released. -->

## Assessments Updated
<!--- List all new/updated assessments and provide a brief description of the updates --->
<!--- Add a section for "Other updates" if there are updates that are not related to a specific assessment --->

## Milestone
<!--- Link to the milestone for the release. --->
<!--- Make sure all relevant issues/PRs are included on the linked pages. --->
Milestone: [v1.0.0](https://github.com/Gilead-BioStats/gsm/milestone/1)

# Overall Risk Assessment
<!--- Complete the following Risk Assessment for this Release-->
<!--- Risk should generally be the highest risk among the `fix` PRs included in the release--->
Overall Risk: Low/Medium/High

Notes:
<!--- provide a quick description of the overall risk assessment -->

## Assessment 1 Risk
<!--- Make a separate section accessing risk for each assessment and "other" update. -->
<!--- If selected, fill out the QC checklist in a comment on this PR. Add one comment per Assessment --->
Overall Risk: Low/Medium/High
Mitigation Strategy:
- [ ] Qualification Testing
- [ ] Unit Testing
- [ ] Code Review
- [ ] QC Checklist
- [ ] Automated Testing

Notes:
<!--- provide a quick description of what was done and why the -->
<!--- risk level and mitigation strategies were chosen -->

# Release Checklist
<!--- Fill out the following Release checklist -->

- [ ] Version number has been updated
- [ ] NEWS.md has been updated
- [ ] README.md has been updated (if applicable)
- [ ] Ensure all unit tests are passing
- [ ] Ensure all qualification tests are passing and report has been rerun
- [ ] All QC Checklists in this PR are complete
- [ ] GitHub actions on this PR are all passing
- [ ] Run `spell_check()`
- [ ] Draft GitHub release created using automatic template and updated with additional details. Remember to click "release" after PR is merged.

67 changes: 15 additions & 52 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,60 +1,23 @@
---
name: "Pull Request Template"
about: "Create a Pull Request"
title: ""
---
## Details

## Overview
<!--- What was done in the source branch -->
<!--- (i.e. bugfixes, feature additions, etc.) -->

## Test Notes/Sample Code
<!--- Notes about testing or code to reproduce new functionality --->

## Risk Assessment
<!--- Complete the following Risk Assessment for this Pull Request-->
Risk: Low/Medium/High
Mitigation Strategy:
- [ ] Qualification Testing
- [ ] Unit Testing
- [ ] Code Review
- [ ] QC
- [ ] Automated Testing
Notes:
<!--- provide a quick description of what was done and why the -->
<!--- Complete a Risk Assessment for this Pull Request-->
<!--- Provide a quick description of what was done and why the -->
<!--- risk level and mitigation strategies were chosen -->
<!--- Each mitigation strategy should be given a status before PR is merged --->
Risk: Low/Medium/High
Mitigation Strategy:
- Qualification Testing - [Included/Issue #X Filed]
- Unit Testing - [Included/Issue #X Filed]
- Code Review - [Included via PR review]
- QC Checklist - [To be included with Release/Included in Comment]
- Automated Testing - [Package Checks via GitHub Actions]

## QC Checklist
<!--- Fill out the following QC checklist as you complete the QC items -->
- [ ] Documentation
- [ ] Function name captured in [Roxygen title](https://cran.r-project.org/web/packages/roxygen2/vignettes/rd.html#the-description-block)(e.g. "Adverse Event Assessment")
- [ ] Assessment Purpose captured in [Roxygen description](https://cran.r-project.org/web/packages/roxygen2/vignettes/rd.html#the-description-block) (e.g. "Evaluates site-level level Adverse Event Rates and flags rates that are abnormally high or low."
- [ ] Input Data Requirements are described in the the [Roxygen details](https://cran.r-project.org/web/packages/roxygen2/vignettes/rd.html#the-description-block) under a Data section (`#' @details # Data Requirements`).
- [ ] Parameters have detailed documentation using `@param`. Each parameter should include: parameter name, brief description, usage details, the default value (if any), is it required, list of valid options (if applicable)
- [ ] All external dependencies are captured. Use `@importFrom` when importing 3 or fewer functions, and use `@import` otherwise.
- [ ] Output Data Standards are described under `@returns`
- [ ] At least 1 example is provided under `@examples`
- [ ] Error Checking
- [ ] Basic checks for all all parameters should be included using `stopifnot()` or similar logic. (e.g. `stopifnot("dfInput is not a dataframe"=is.data.frame(dfInput))`)
- [ ] Basic tests should be included confirming that `stopifnot()` parameter checks are working as expected.
- [ ] Basic tests should be included that confirm that the input data has required columns (if any)
- [ ] Basic tests should be included that confirm that the output data has the expected columns
- [ ] Basic QC
- [ ] Code is well commented and easy to read
- [ ] No file paths or other company-specific data is present.
- [ ] Function calls from non-tidyverse dependencies are called via `::`
- [ ] devtools::check() passes with no errors/warnings/notes
- [ ] package docs up to date. devtools::document() doesn't change any files
- [ ] Uses tidyverse best practices for standard data manipulation (start discussion thread if unclear)
- [ ] All new dependencies add significant value (start discussion thread)
- [ ] All GitHub Actions run with no errors
- [ ] Process
- [ ] PR with approved code review ready to merge to dev
- [ ] All relevant issues linked to PR
- [ ] Unit tests
- Confirm that informative errors are thrown when data standard is not met.
- Confirm that output specifications are met using standard test data.
- Confirm that tests confirm that missing data is handled appropriately.
- [ ] Qualification tests
- [ ] Specifications have been created and entered into valtools framework
- [ ] Test Cases have been created and entered into valtools framework
- [ ] Test Code has been created
- [ ] Qualification Report has been rerun and all test are passing
Notes:

0 comments on commit b4c617e

Please sign in to comment.