Skip to content

Add assess_pkg_version_drift() helper #118

Description

@aclark02-arcus

Follow-up from the #116 error-catch investigation.

Motivation

While debugging a resumed pipeline run, we noticed two mutually-inconsistent 'remaining pkg' counts:

  • length(list.files(assessed, pattern = '_meta.rds$')) (pkg-name-only) said 1282 bundles were on disk.
  • val_build()'s parallel pre-filter said 636 pkgs were 'already assessed on disk' out of 1606.

The gap is real: the pre-filter checks for <pkg>_<ver>_meta.rds, so any pkg whose on-disk version doesn't match prep$vers gets re-dispatched. Root cause candidates:

  • Snapshot repos aren't actually frozen where we thought they were.
  • riskmetric (or a helper) fetches from a live mirror instead of the frozen PPM snapshot.
  • A previous run wrote bundles at one prep$vers, the next run's prep$vers differs.
  • Something else entirely.

Ask

An exported diagnostic helper: assess_pkg_version_drift(val_dir, prep = NULL, avail_pkgs = NULL) that classifies every pkg in the union of on-disk + expected sets as one of match, drifted, multi_version, unexpected, missing and returns a tibble. Optional summary count print via verbose = TRUE.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions