Open AARON-CLARK opened 1 year ago
- Note: if needed, we can look retrospectively at older time points, by editing the url above by swapping out the word "latest" with a YYYY-MM-DD date.
available.packages("https://my-company.qxp-pkgs/YYYY-MM-DD/src/contrib/")
Update: this statement is false info. First, the pm freeze dates do not include everyday, but only days in which a change occurred on the repo... So we'll need a way to programmatically look those up. Checking with a customer success rep at Posit about PM apis...
Related to #663
It would be naïve to think that orgs would rely solely on the
{riskassessment}
application to make final decisions on gxp inclusions requests. In reality, that process is probably determined through an automated qualification pipeline of sorts. As such, the app should both acknowledge & accommodate a "source of truth" for pkg decisions that lives outside the app's db. More than likely, that source of truth will come in the form of a Posit Package Manager, provisioned for GxP packages only. Thus, the config file should accept that pm's URL. We can call that package list usingavailable.packages()
, like below where we use a fictitious PM URL.Some things to take into account for this proposed change:
Just because they exist on the qual list, doesn't mean they are in the DB. However, perhaps when a URL pointing to a qualified list of pkgs is provided, we should include a new tab on the Database View tab (called "Pre-qualified Pkgs") that shows all the qualified pkgs in a table. Perhaps the table would feel similar to the Dependencies tab's table... displaying the same columns, except for "type".
If uploaded to the db, final decisions for these pkgs should automatically be set to "Low Risk" or whatever the lowest decision category is. An overall decision comment should be applied that says something to the effect of "Package Decision determined by pre-qualification process"
Pkg decisions set by pre-qualification pm url should not be changed, by any existing processes, including but not limited to:
Manual decision resetting (by
admin
users) should be disabledDecision automation. When uploaded, perhaps the "Decision Rule" column should state "Pre-qualified".
Resetting which usually occurs during the re-weighting
Occasionally, the list of qualified pkgs may change under the hood, without notice, so I think we need to accommodate this in the app. That is, on the new Database View tab, users should be able to select timepoints from a calendar or selectInput UI element. Perhaps the only selectable dates are those time point dates that exist in the DB. Note: if needed, we can look retrospectively at older time points, by editing the url above by swapping out the word "latest" with a YYYY-MM-DD date.
At the same time, it'd probably be prudent to store the pre-qualified status of a package at time of upload, since everything we store in the db is attached to a certain point in time.