Clarified Code Style Guidelines in .github/copilot-instructions.md:
the UCD-SeRG Lab Manual takes precedence over the tidyverse style
guide where they conflict, and functions should end with an explicit
return() call per the lab manual / Google R Style Guide. This
closes a gap where @claude reviews were flagging explicit returns
as non-conforming.
Expanded what the Claude Code (@claude) workflow can do:
copilot-setup-steps.yml, plus devtools, roxygen2,
rmarkdown, lintr, spelling, rcmdcheck) and allow Rscript,
R, and R CMD invocations, so requests that need package-
maintenance commands (devtools::document(),
spelling::spell_check_package(), R CMD check, vignette rebuilds)
succeed instead of being patched by hand.issues: write and allow gh issue invocations so Claude
can file follow-up issues for work deferred out of the current PR
instead of burying it in a comment.Standardized runjags::findjags() casing across test-coverage.yaml
and copilot-setup-steps.yml to match the R-CMD-check.yaml form
arriving with the 0.1.0 release (#207 advisory).
Re-assign reviewers to a PR's human assignees (filtered via
type == "User") when Claude pushes commits during a @claude or
Claude Code Review run; if Claude makes no commits, the original
reviewer set is restored as before. Detected by comparing the PR's
head SHA before and after the Claude step (#210).
Stopped deleting prior Claude review comments at the start of each
Claude Code Review run, so reviews posted by @claude review invocations
are preserved across subsequent pushes instead of being wiped when the
review step fails its bot-actor gate (#217).
Hardened the Claude code-review workflow against races and silent failures: serialized concurrent runs per PR, made reviewer restore fail loudly instead of silently dropping reviewers, and cleaned up all stale Claude top-level comments per run (#216).
Expanded .github/copilot-instructions.md with additional guidance on evidence-based claims, Quarto markdown/cross-reference conventions, R style practices, and phrase-level line-break formatting for source text.
Fixed dplyr::as_tibble() references to tibble::as_tibble() in post_summ() and run_mod(), since as_tibble() is exported from the tibble package, not dplyr.
Added R 4.5+ snapshot variants to handle the changed attribute ordering in
as_case_data(), ensuring test suite compatibility with R 4.5 and later (#109).
Added dev container configuration for persistent, cached development environment that includes R, JAGS, and all dependencies preinstalled, making Copilot Workspace sessions much faster.
Reorganized pkgdown documentation with new "Getting Started" guide demonstrating main API workflow, organized articles into "Get started" and "Developer Notes" sections (#73).
Added .github/workflows/copilot-setup-steps.yml GitHub Actions workflow to automate environment setup for GitHub Copilot coding agent, preinstalling R, JAGS, and all dependencies.
Added reference to UCD-SeRG Lab Manual in copilot-instructions for lab-wide best practices guidance.
Consolidated OS-specific snapshot variants: removed redundant Linux and Windows snapshot directories (which were identical), keeping only base snapshots and darwin-specific variants for macOS platform differences (#73).
Initial CRAN submission.
Updated Copilot instructions to encourage code decomposition and avoid copy-pasting substantial code chunks.
prep_data() (#73)plot_predicted_curve() with support for faceting by multiple IDs (#68)run_mod() output:
include_subs as an input option, default will include all
individualsrun_mod() (#79):
jags.post now optionally included in output, as specified by argument
with_postcurve_params output component,
as specified by argument include_subsas_case_data() now creates column visit_num (#47, #50)postprocess_jags_output() to API (#33)initsfunction() to API (#37)nsmpl element of prep_data() output (#34)initsfunction() to API (#37)as_case_data() to API (#31)prep_priors() to API (#30)autoplot() method for case_data objects (#28)sim_pop_data(), autoplot.case_data() (#18)run_mod() function (#22)None yet
ab() function (#116)lintr::undesirable_function_linter() to .lintr.R (#81).lintr as R file (following
https://github.com/r-lib/lintr/issues/2844#issuecomment-2776725389) (#81)run_mod()prep_data() internals using {dplyr} (#34)dobson.Rmd minimal vignette (#36)prep_data(), sim_case_data() (#18)Started development.