ucdavis / ucdavis/mic.sim

Add a CLAUDE.md with dev commands and architecture notes

Open
#48 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
R
Stars
1
Forks
1
PR merge metrics
No merged PRs in 30d

Description

Claude Code sessions in this repo currently start with no repo-specific context, so each one re-derives the same non-obvious architecture by reading across R/: the attribute-based data contract, the long possible_data layout, and the fact that the foo.surv / foo.mgcv functions are not S3 methods.

Add a root CLAUDE.md covering:

  • The dev command loop (devtools::load_all/document/test/check, single-test invocation) and what CI actually runs.
  • Architecture that spans several files: the import/simulate -> fit_EM() -> plot pipeline; the attribute contract (scale, source, mic_class, model) that downstream functions read instead of taking arguments; the long possible_data layout (one row per observation x component, backtick-named probability columns, P(C=c|y,t) as the weight); the mu/pi model split; the full vs reduced approach; and the cross-validation chain.
  • The dispatch gotcha: there is no UseMethod anywhere in the package, so fit_mu_model.mgcv and friends only look like S3 methods. Adding a backend means editing every branching wrapper.
  • Recurring failure modes, notably roxygen examples (the source of most of the recent R CMD check fixes) and that U+2264 in MIC strings is data syntax rather than a typo.

Also add ^CLAUDE\.md$ and ^\.claude$ to .Rbuildignore, so neither becomes a non-standard top-level file in the build.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the R/ directory, tracing the import/simulate -> fit_EM() -> plot pipeline, and checking the devtools command loop against what CI runs. Write the root CLAUDE.md with the listed architecture, dispatch and failure-mode notes, then update .Rbuildignore with both patterns and verify the documented commands and build-ignore changes.

Written by the indexing model from the issue text.

Assessment

Tech stack
r
Domain
developer-experience, documentation
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
72/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.