Frozen validation evidence programme

knitr::opts_chunk$set(collapse = TRUE, comment = "#>")
library(eyeprocess)

Milestone #2 separates software-validation evidence from substantive construct validity. A reproducible plan fixes scenario families, sample sizes, missingness, perturbations, replications, and seeds before results are interpreted.

plan <- eyeprocess_validation_plan(
  sample_size = c(250L, 750L), n_items = c(12L, 24L),
  missing_rate = c(0, .15), specification = c("correct", "misspecified"),
  replications = 20L, seed = 20260811L
)
head(expand_eyeprocess_validation_plan(plan))

Acceptance criteria are declared as reporting contracts rather than universal scientific thresholds.

rules <- list(
  rmse = validation_acceptance_rule("rmse", "max", .20),
  failure = validation_acceptance_rule("failure_rate", "max", .05)
)

Frozen evidence objects contain integrity hashes and source-commit metadata. A passing release gate means only that the declared software-validation criteria were satisfied.

Frozen evidence as a visual object

A minimal deterministic freeze demonstrates the provenance-aware graphical interface. The example records software evidence only and should not be interpreted as a validity assessment of a psychological construct.

viz_claim <- eyeprocess::eyeprocess_validation_claim_matrix(
  'C1',
  'software behaviour is reproducible',
  'E1',
  'test',
  'supported'
)

viz_freeze <- eyeprocess::freeze_eyeprocess_validation_evidence(
  design = data.frame(id = 1),
  recovery = data.frame(x = 1),
  stress = data.frame(x = 1),
  reliability = data.frame(x = 1),
  negative_controls = data.frame(x = 1),
  claims = viz_claim,
  provenance = list(commit = 'documentation-example'),
  source_commit = 'documentation-example'
)

stopifnot(
  eyeprocess::verify_eyeprocess_validation_evidence(
    viz_freeze
  )
)

plot(viz_freeze)


Try the eyeprocess package in your browser

Any scripts or data that you put into this service are public.

eyeprocess documentation built on Sept. 28, 2026, 5:08 p.m.