{
  "_id": "6aea2512818c9e3ef6dbff00",
  "Package": "gatekeepR",
  "Title": "Reviewable Marker Gating and Phenotyping for Multiplexed Imaging",
  "Version": "1.1.0",
  "Authors@R": "person(\"R.\", \"Heller\",\nemail = \"raban.heller@uni-ulm.de\",\nrole = c(\"aut\", \"cre\", \"cph\"),\ncomment = c(ORCID = \"0000-0001-8006-9742\"))",
  "Description": "Turns per-cell marker measurements from multiplexed tissue\nimages into reviewed cell types and state calls. Declares a\nmarker panel and an ordered phenotype hierarchy as data,\ndecides per image whether each marker can be called at all, and\nestimates thresholds with documented methods (manual, density\nvalley, density tail, two-component Gaussian mixture,\npopulation density crossing on an embedding and parent-specific\ncrossing). A single classifier is shared by batch code and the\nreview application. Reviewer decisions are kept in append-only\nledgers, and a review is locked into a content-addressed export\nwhose labels, decisions and deletion histories can be replayed\nand verified.",
  "License": "MIT + file LICENSE",
  "URL": "https://github.com/CTTIR/gatekeepR",
  "BugReports": "https://github.com/CTTIR/gatekeepR/issues",
  "Additional_repositories": "https://cttir.r-universe.dev",
  "Config/testthat/edition": "3",
  "VignetteBuilder": "knitr",
  "Encoding": "UTF-8",
  "Language": "en-US",
  "Roxygen": "list(markdown = TRUE)",
  "Config/Needs/website": "CTTIR/themakR",
  "Config/roxygen2/version": "8.0.0",
  "Config/pak/sysreqs": "cmake make libuv1-dev",
  "Repository": "https://cttir.r-universe.dev",
  "Date/Publication": "2026-11-03 11:21:03 UTC",
  "RemoteUrl": "https://github.com/CTTIR/gatekeepR",
  "RemoteRef": "HEAD",
  "RemoteSha": "4ecea65d4dd5104ef3f6b2b62457977e6191cee6",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-11-03 18:08:30 UTC",
    "User": "root"
  },
  "Author": "R. Heller [aut, cre, cph] (ORCID:\n<https://orcid.org/0000-0001-8006-9742>)",
  "Maintainer": "R. Heller <raban.heller@uni-ulm.de>",
  "_user": "cttir",
  "_type": "src",
  "_file": "gatekeepR_1.1.0.tar.gz",
  "_fileid": "https://r2.ropensci.org/c955278771c550452657a2d3c64c903462f969336aca12a29ee9d3686ca115a9",
  "_filesize": 2255579,
  "_sha256": "c955278771c550452657a2d3c64c903462f969336aca12a29ee9d3686ca115a9",
  "_expires": "2027-02-11T18:16:48.000Z",
  "_created": "2026-11-03T18:08:30.000Z",
  "_published": "2026-11-03T18:16:50.235Z",
  "_upstream": "https://github.com/CTTIR/gatekeepR",
  "_status": "success",
  "_maintainer": {
    "name": "R. Heller",
    "email": "raban.heller@uni-ulm.de",
    "login": "r-heller",
    "orcid": "0000-0001-8006-9742",
    "description": "Doctoral researcher at Charité Universitätsmedizin Berlin, Germany. Focus on biomedical research, biostatistics, and data science.",
    "uuid": 58561665
  },
  "_jobs": [
    {
      "job": 126109251621,
      "time": 364,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "13257483643"
    },
    {
      "job": 126109251607,
      "time": 266,
      "config": "linux-release-x86_64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13257268948"
    },
    {
      "job": 126109252097,
      "time": 298,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "13256689943"
    },
    {
      "job": 126109251965,
      "time": 326,
      "config": "macos-release-arm64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13256308815"
    },
    {
      "job": 126106832926,
      "time": 260,
      "config": "source",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13257657356"
    },
    {
      "job": 126109252067,
      "time": 121,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "13256043565"
    },
    {
      "job": 126109251812,
      "time": 349,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "13256573911"
    },
    {
      "job": 126109252268,
      "time": 384,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "13257263457"
    },
    {
      "job": 126109252599,
      "time": 445,
      "config": "windows-release-x86_64",
      "r": "4.6.2",
      "check": "OK",
      "artifact": "13257349440"
    }
  ],
  "_buildurl": "https://github.com/r-universe/cttir/actions/runs/41690256910",
  "_commit": {
    "id": "4ecea65d4dd5104ef3f6b2b62457977e6191cee6",
    "author": "R. Heller <58561665+r-heller@users.noreply.github.com>",
    "committer": "R. Heller <58561665+r-heller@users.noreply.github.com>",
    "message": "Preserve manifest containment across native Windows links\n",
    "time": 1793704863
  },
  "_distro": "resolute",
  "_host": "GitHub-Actions",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.1.0",
      "role": "Depends"
    },
    {
      "package": "cli",
      "role": "Imports"
    },
    {
      "package": "data.table",
      "role": "Imports"
    },
    {
      "package": "digest",
      "role": "Imports"
    },
    {
      "package": "fs",
      "role": "Imports"
    },
    {
      "package": "filelock",
      "role": "Imports"
    },
    {
      "package": "jsonlite",
      "role": "Imports"
    },
    {
      "package": "lifecycle",
      "role": "Imports"
    },
    {
      "package": "MASS",
      "role": "Imports"
    },
    {
      "package": "rlang",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "utils",
      "role": "Imports"
    },
    {
      "package": "callr",
      "role": "Suggests"
    },
    {
      "package": "cellspecR",
      "version": ">= 1.0.0",
      "role": "Suggests"
    },
    {
      "package": "EBImage",
      "role": "Suggests"
    },
    {
      "package": "dbscan",
      "role": "Suggests"
    },
    {
      "package": "ggplot2",
      "role": "Suggests"
    },
    {
      "package": "jsonvalidate",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "patchwork",
      "role": "Suggests"
    },
    {
      "package": "pkgload",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "shiny",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    },
    {
      "package": "uwot",
      "role": "Suggests"
    },
    {
      "package": "withr",
      "role": "Suggests"
    }
  ],
  "_owner": "cttir",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-38",
      "n": 10
    },
    {
      "week": "2026-39",
      "n": 2
    },
    {
      "week": "2026-40",
      "n": 3
    },
    {
      "week": "2026-42",
      "n": 5
    },
    {
      "week": "2026-43",
      "n": 3
    },
    {
      "week": "2026-44",
      "n": 2
    },
    {
      "week": "2026-45",
      "n": 4
    }
  ],
  "_tags": [],
  "_stars": 0,
  "_contributors": [
    {
      "user": "r-heller",
      "count": 32,
      "uuid": 58561665
    }
  ],
  "_userbio": {
    "uuid": 275040041,
    "type": "organization",
    "name": "CTTIR",
    "followers": 10,
    "description": "Computational Trauma and Tissue Injury Research"
  },
  "_downloads": {
    "count": 0,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/gatekeepR"
  },
  "_devurl": "https://github.com/cttir/gatekeepr",
  "_searchresults": 0,
  "_rbuild": "4.6.2",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/gatekeepR.html",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "LICENSE"
  ],
  "_cranurl": false,
  "_exports": [
    "gk_app",
    "gk_apply_candidate_rules",
    "gk_apply_residual_model",
    "gk_callability",
    "gk_cellspec",
    "gk_classify",
    "gk_config",
    "gk_config_hash",
    "gk_correct",
    "gk_decide_structure",
    "gk_dispose",
    "gk_embed",
    "gk_example_config",
    "gk_example_path",
    "gk_export",
    "gk_fit_residual_model",
    "gk_fixed_signal_calls",
    "gk_fixed_state_diagnostics",
    "gk_fixed_threshold_calls",
    "gk_flag",
    "gk_hierarchy",
    "gk_import_cuts",
    "gk_import_residual_model",
    "gk_ledgers",
    "gk_load_review",
    "gk_lock",
    "gk_min_support",
    "gk_override",
    "gk_panel",
    "gk_plot_density",
    "gk_plot_dotplot",
    "gk_plot_embedding",
    "gk_plot_map",
    "gk_plot_overview",
    "gk_plot_states",
    "gk_plot_thresholds",
    "gk_prepare",
    "gk_read_cellspec",
    "gk_read_config",
    "gk_read_export",
    "gk_refinement",
    "gk_replace_review",
    "gk_replay",
    "gk_revert_last",
    "gk_review",
    "gk_rule",
    "gk_save_review",
    "gk_set_cut",
    "gk_set_state",
    "gk_signal_policy",
    "gk_simulate",
    "gk_state_calls",
    "gk_structures",
    "gk_threshold_methods",
    "gk_thresholds",
    "gk_validate_config",
    "gk_verify_export",
    "gk_write_cellspec",
    "gk_write_config"
  ],
  "_help": [
    {
      "page": "gk_app",
      "title": "Launch the gatekeepR review application",
      "concept": [
        "app"
      ],
      "topics": [
        "gk_app"
      ]
    },
    {
      "page": "gk_apply_candidate_rules",
      "title": "Evaluate declarative rules on ternary candidate calls",
      "concept": [
        "classification"
      ],
      "topics": [
        "gk_apply_candidate_rules"
      ]
    },
    {
      "page": "gk_callability",
      "title": "Callability of markers per image",
      "concept": [
        "preparation"
      ],
      "topics": [
        "gk_callability"
      ]
    },
    {
      "page": "gk_cellspec",
      "title": "Build a cell table in the cellspec 1.0 format",
      "concept": [
        "cell tables"
      ],
      "topics": [
        "gk_cellspec"
      ]
    },
    {
      "page": "gk_classify",
      "title": "Classify cells with the configured ordered hierarchy",
      "concept": [
        "classification"
      ],
      "topics": [
        "gk_classify"
      ]
    },
    {
      "page": "gk_config",
      "title": "Assemble a gating configuration",
      "concept": [
        "configuration"
      ],
      "topics": [
        "gk_config"
      ]
    },
    {
      "page": "gk_config_hash",
      "title": "Canonical hash of a configuration",
      "concept": [
        "configuration"
      ],
      "topics": [
        "gk_config_hash"
      ]
    },
    {
      "page": "gk_correct",
      "title": "Correct prepared marker scores",
      "concept": [
        "corrections"
      ],
      "topics": [
        "gk_correct"
      ]
    },
    {
      "page": "gk_decide_structure",
      "title": "Decide one structure or bounding box",
      "concept": [
        "review"
      ],
      "topics": [
        "gk_decide_structure"
      ]
    },
    {
      "page": "gk_dispose",
      "title": "Set a cell disposition",
      "concept": [
        "review"
      ],
      "topics": [
        "gk_dispose"
      ]
    },
    {
      "page": "gk_embed",
      "title": "Compute a reproducible marker embedding and density populations",
      "concept": [
        "thresholds"
      ],
      "topics": [
        "gk_embed"
      ]
    },
    {
      "page": "gk_example_config",
      "title": "Example configuration for a generic tumour-immune panel",
      "concept": [
        "example data"
      ],
      "topics": [
        "gk_example_config"
      ]
    },
    {
      "page": "gk_example_path",
      "title": "Paths to bundled example data",
      "concept": [
        "example data"
      ],
      "topics": [
        "gk_example_path"
      ]
    },
    {
      "page": "gk_export",
      "title": "Write a locked review export",
      "concept": [
        "export"
      ],
      "topics": [
        "gk_export"
      ]
    },
    {
      "page": "gk_fit_residual_model",
      "title": "Freeze and apply a fitted residual score space",
      "concept": [
        "corrections"
      ],
      "topics": [
        "gk_apply_residual_model",
        "gk_fit_residual_model"
      ]
    },
    {
      "page": "gk_fixed_signal_calls",
      "title": "Apply fixed cutoffs with explicit raw-support availability",
      "concept": [
        "classification"
      ],
      "topics": [
        "gk_fixed_signal_calls"
      ]
    },
    {
      "page": "gk_fixed_state_diagnostics",
      "title": "Diagnose fixed state thresholds with explicit parent and localization scope",
      "topics": [
        "gk_fixed_state_diagnostics"
      ]
    },
    {
      "page": "gk_fixed_threshold_calls",
      "title": "Apply fixed score thresholds without raw-support assessment",
      "topics": [
        "gk_fixed_threshold_calls"
      ]
    },
    {
      "page": "gk_hierarchy",
      "title": "Declare a phenotype hierarchy",
      "concept": [
        "configuration"
      ],
      "topics": [
        "gk_hierarchy"
      ]
    },
    {
      "page": "gk_import_cuts",
      "title": "Import identity-marker cuts without replacing other ledgers",
      "concept": [
        "review"
      ],
      "topics": [
        "gk_import_cuts"
      ]
    },
    {
      "page": "gk_import_residual_model",
      "title": "Import externally frozen residual parameters without fitting",
      "concept": [
        "corrections"
      ],
      "topics": [
        "gk_import_residual_model"
      ]
    },
    {
      "page": "gk_ledgers",
      "title": "Return the four review ledgers",
      "concept": [
        "review"
      ],
      "topics": [
        "gk_ledgers"
      ]
    },
    {
      "page": "gk_load_review",
      "title": "Load a review checkpoint and acquire its single-writer lock",
      "concept": [
        "review"
      ],
      "topics": [
        "gk_load_review"
      ]
    },
    {
      "page": "gk_lock",
      "title": "Lock a review into an immutable snapshot",
      "concept": [
        "export"
      ],
      "topics": [
        "gk_lock"
      ]
    },
    {
      "page": "gk_min_support",
      "title": "Callability rules for a marker",
      "concept": [
        "configuration"
      ],
      "topics": [
        "gk_min_support"
      ]
    },
    {
      "page": "gk_panel",
      "title": "Declare a marker panel",
      "concept": [
        "configuration"
      ],
      "topics": [
        "gk_panel"
      ]
    },
    {
      "page": "gk_plot_density",
      "title": "Plot a threshold density and its evidence pools",
      "concept": [
        "plots"
      ],
      "topics": [
        "gk_plot_density"
      ]
    },
    {
      "page": "gk_plot_dotplot",
      "title": "Plot marker means by classified cell type",
      "concept": [
        "plots"
      ],
      "topics": [
        "gk_plot_dotplot"
      ]
    },
    {
      "page": "gk_plot_embedding",
      "title": "Plot an embedding coloured by population or classification",
      "concept": [
        "plots"
      ],
      "topics": [
        "gk_plot_embedding"
      ]
    },
    {
      "page": "gk_plot_map",
      "title": "Plot cell centroids on an image map",
      "concept": [
        "plots"
      ],
      "topics": [
        "gk_plot_map"
      ]
    },
    {
      "page": "gk_plot_overview",
      "title": "Make a compact overview",
      "concept": [
        "plots"
      ],
      "topics": [
        "gk_plot_overview"
      ]
    },
    {
      "page": "gk_plot_states",
      "title": "Plot state calls for one image",
      "concept": [
        "plots"
      ],
      "topics": [
        "gk_plot_states"
      ]
    },
    {
      "page": "gk_plot_thresholds",
      "title": "Plot thresholds for one image",
      "concept": [
        "plots"
      ],
      "topics": [
        "gk_plot_thresholds"
      ]
    },
    {
      "page": "gk_prepare",
      "title": "Prepare marker signals for gating",
      "concept": [
        "preparation"
      ],
      "topics": [
        "gk_prepare"
      ]
    },
    {
      "page": "gk_read_export",
      "title": "Read a verified export",
      "concept": [
        "export"
      ],
      "topics": [
        "gk_read_export"
      ]
    },
    {
      "page": "gk_replace_review",
      "title": "Replace selected review ledgers from a saved checkpoint",
      "concept": [
        "review"
      ],
      "topics": [
        "gk_replace_review"
      ]
    },
    {
      "page": "gk_replay",
      "title": "Replay all effective review decisions",
      "concept": [
        "review"
      ],
      "topics": [
        "gk_replay"
      ]
    },
    {
      "page": "gk_revert_last",
      "title": "Undo the most recent review action without deleting history",
      "concept": [
        "review"
      ],
      "topics": [
        "gk_revert_last"
      ]
    },
    {
      "page": "gk_review",
      "title": "Create an editable review state",
      "concept": [
        "review"
      ],
      "topics": [
        "gk_review"
      ]
    },
    {
      "page": "gk_save_review",
      "title": "Save a review checkpoint atomically",
      "concept": [
        "review"
      ],
      "topics": [
        "gk_save_review"
      ]
    },
    {
      "page": "gk_set_cut",
      "title": "Set an identity or state threshold in the review ledger",
      "concept": [
        "review"
      ],
      "topics": [
        "gk_set_cut"
      ]
    },
    {
      "page": "gk_set_state",
      "title": "Enable, disable or set a parent-specific state call",
      "concept": [
        "review"
      ],
      "topics": [
        "gk_set_state"
      ]
    },
    {
      "page": "gk_signal_policy",
      "title": "Declare which measurement represents each marker",
      "concept": [
        "configuration"
      ],
      "topics": [
        "gk_signal_policy"
      ]
    },
    {
      "page": "gk_simulate",
      "title": "Simulate a multiplexed tissue slide",
      "concept": [
        "example data"
      ],
      "topics": [
        "gk_simulate"
      ]
    },
    {
      "page": "gk_state_calls",
      "title": "Call state markers within configured parent sets",
      "concept": [
        "classification"
      ],
      "topics": [
        "gk_state_calls"
      ]
    },
    {
      "page": "gk_structures",
      "title": "Find epithelial structures for review",
      "concept": [
        "classification"
      ],
      "topics": [
        "gk_structures"
      ]
    },
    {
      "page": "gk_threshold_methods",
      "title": "Threshold methods available in gatekeepR",
      "concept": [
        "thresholds"
      ],
      "topics": [
        "gk_threshold_methods"
      ]
    },
    {
      "page": "gk_thresholds",
      "title": "Estimate per-image marker thresholds",
      "concept": [
        "thresholds"
      ],
      "topics": [
        "gk_thresholds"
      ]
    },
    {
      "page": "gk_validate_config",
      "title": "Validate a gating configuration",
      "concept": [
        "configuration"
      ],
      "topics": [
        "gk_validate_config"
      ]
    },
    {
      "page": "gk_verify_export",
      "title": "Verify content identity, replay and reconciliation invariants",
      "concept": [
        "export"
      ],
      "topics": [
        "gk_verify_export"
      ]
    },
    {
      "page": "gk_write_cellspec",
      "title": "Read and write cellspec directories",
      "concept": [
        "cell tables"
      ],
      "topics": [
        "gk_read_cellspec",
        "gk_write_cellspec"
      ]
    },
    {
      "page": "gk_write_config",
      "title": "Read and write configuration files",
      "concept": [
        "configuration"
      ],
      "topics": [
        "gk_read_config",
        "gk_write_config"
      ]
    },
    {
      "page": "hierarchy-elements",
      "title": "Hierarchy rules, flags, refinements and overrides",
      "concept": [
        "configuration"
      ],
      "topics": [
        "gk_flag",
        "gk_override",
        "gk_refinement",
        "gk_rule",
        "hierarchy-elements"
      ]
    }
  ],
  "_pkglogo": "https://github.com/CTTIR/gatekeepR/raw/HEAD/man/figures/logo.svg",
  "_readme": "https://github.com/CTTIR/gatekeepR/raw/HEAD/README.md",
  "_rundeps": [
    "cli",
    "data.table",
    "digest",
    "filelock",
    "fs",
    "jsonlite",
    "lifecycle",
    "MASS",
    "rlang"
  ],
  "_vignettes": [
    {
      "source": "audit-closure.Rmd",
      "filename": "audit-closure.html",
      "title": "Audit closure checklist",
      "author": "R. Heller",
      "engine": "knitr::rmarkdown",
      "headings": [],
      "created": "2026-09-15 15:17:41",
      "modified": "2026-10-28 07:29:01",
      "commits": 2
    },
    {
      "source": "configuration.Rmd",
      "filename": "configuration.html",
      "title": "Configuration as data",
      "author": "R. Heller",
      "engine": "knitr::rmarkdown",
      "headings": [],
      "created": "2026-09-15 15:17:41",
      "modified": "2026-10-28 07:29:01",
      "commits": 2
    },
    {
      "source": "gatekeepR.Rmd",
      "filename": "gatekeepR.html",
      "title": "gatekeepR: a reviewable marker gating workflow",
      "author": "R. Heller",
      "engine": "knitr::rmarkdown",
      "headings": [
        "The complete workflow",
        "Outputs and auditability",
        "Optional interfaces"
      ],
      "created": "2026-09-15 15:17:41",
      "modified": "2026-11-03 08:42:50",
      "commits": 3
    },
    {
      "source": "methods-and-limitations.Rmd",
      "filename": "methods-and-limitations.html",
      "title": "Methods and limitations",
      "author": "R. Heller",
      "engine": "knitr::rmarkdown",
      "headings": [],
      "created": "2026-09-15 15:17:41",
      "modified": "2026-10-28 07:29:01",
      "commits": 2
    },
    {
      "source": "review-and-reproducibility.Rmd",
      "filename": "review-and-reproducibility.html",
      "title": "Review and reproducibility",
      "author": "R. Heller",
      "engine": "knitr::rmarkdown",
      "headings": [],
      "created": "2026-09-15 15:17:41",
      "modified": "2026-11-03 08:42:50",
      "commits": 3
    },
    {
      "source": "thresholds.Rmd",
      "filename": "thresholds.html",
      "title": "Threshold methods and callability",
      "author": "R. Heller",
      "engine": "knitr::rmarkdown",
      "headings": [],
      "created": "2026-09-15 15:17:41",
      "modified": "2026-10-28 07:29:01",
      "commits": 2
    }
  ],
  "_score": 4.3222192947339195,
  "_indexed": true,
  "_nocasepkg": "gatekeepr",
  "_universes": [
    "cttir",
    "r-heller"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.1.0",
      "date": "2026-11-03T18:11:09.000Z",
      "distro": "resolute",
      "commit": "4ecea65d4dd5104ef3f6b2b62457977e6191cee6",
      "fileid": "https://r2.ropensci.org/118d984c0f593cb317289e01721a9bdc0d621b67b3246a43d7ab92efe4e5e2e2",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41690256910"
    },
    {
      "r": "4.6.2",
      "os": "linux",
      "version": "1.1.0",
      "date": "2026-11-03T18:10:54.000Z",
      "distro": "resolute",
      "commit": "4ecea65d4dd5104ef3f6b2b62457977e6191cee6",
      "fileid": "https://r2.ropensci.org/3b6db66351b14e9f8741ff57b40ecdee4f3feca28b3cacff6bd0da098405f58f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41690256910"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.1.0",
      "date": "2026-11-03T18:10:40.000Z",
      "commit": "4ecea65d4dd5104ef3f6b2b62457977e6191cee6",
      "fileid": "https://r2.ropensci.org/504fac0c0254135e72bcafd8b40b77777dfd2796b1c1c10b1eae53721a40609c",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41690256910"
    },
    {
      "r": "4.6.2",
      "os": "mac",
      "version": "1.1.0",
      "date": "2026-11-03T18:10:41.000Z",
      "commit": "4ecea65d4dd5104ef3f6b2b62457977e6191cee6",
      "fileid": "https://r2.ropensci.org/270cbe921290a94888edde214dfed389d3ad14788cfdc2fa0b72c809030da945",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41690256910"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.1.0",
      "date": "2026-11-03T18:10:55.000Z",
      "commit": "4ecea65d4dd5104ef3f6b2b62457977e6191cee6",
      "fileid": "https://r2.ropensci.org/3bd40fff1c458b2564c8d823b4f6a30ca9737b1d2f1a4517c6151f1250703ed2",
      "status": "success",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41690256910"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.1.0",
      "date": "2026-11-03T18:10:12.000Z",
      "commit": "4ecea65d4dd5104ef3f6b2b62457977e6191cee6",
      "fileid": "https://r2.ropensci.org/a869808d4e33c8d898b7fe1f554cff7de940b00fc394e9ed33190c5e22486114",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41690256910"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.1.0",
      "date": "2026-11-03T18:10:14.000Z",
      "commit": "4ecea65d4dd5104ef3f6b2b62457977e6191cee6",
      "fileid": "https://r2.ropensci.org/1444f21a548fe1bde3be20a39d2b504f4c935a2f6e683000c41c5721400dff9d",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41690256910"
    },
    {
      "r": "4.6.2",
      "os": "win",
      "version": "1.1.0",
      "date": "2026-11-03T18:10:35.000Z",
      "commit": "4ecea65d4dd5104ef3f6b2b62457977e6191cee6",
      "fileid": "https://r2.ropensci.org/0ca260a679da854ea902d32cb5f7a9da662eaa51fc617c3eb78da120778de735",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cttir/actions/runs/41690256910"
    }
  ]
}