From 78ea77e0db913fe14c1bed2939be670bcd26fe82 Mon Sep 17 00:00:00 2001 From: "Joshua Uhalt, Ph.D." Date: Sun, 27 Sep 2026 17:52:47 -0400 Subject: [PATCH] Host the joint walkthrough here, and hand nomologR the whole handoff The maintainer decided on 2026-09-27 that the joint walkthrough for the 1.0 release lives in contentvalidR. vignette("one-item-set-both-stages") now says it is that walkthrough, and that its empirical steps use base R so it runs with contentvalidR alone. The nomologR calls now pass the handoff itself, nomo_screen(responses, items = h) and nomo_run(responses, scales = h), so the held-back items, their reasons, the keying, and the response scale travel with the names. nomologR checked both calls on its master branch. The vignette links to the "Starting from content review" section of nomologR's guided workflow. Two stale sentences are corrected. The vignette called reading the handoff directly future work on nomologR#46, which shipped in nomologR 0.3.0. It also said nomologR mirrors the walkthrough response file; its article starts from the same handoff but simulates its own responses, so the items, decisions, and keying match while the screening numbers do not. ROADMAP.md marks the walkthrough item of the release-candidate checklist as decided. Co-Authored-By: Claude Opus 5.5 --- NEWS.md | 12 +++++++++ ROADMAP.md | 10 +++---- vignettes/one-item-set-both-stages.Rmd | 36 ++++++++++++++++++-------- 3 files changed, 42 insertions(+), 16 deletions(-) diff --git a/NEWS.md b/NEWS.md index ea54c05..18a3a9f 100644 --- a/NEWS.md +++ b/NEWS.md @@ -44,6 +44,18 @@ schema and every handoff are unchanged. `item_evidence$scale` names. A test holds the sort, rating, and congruence workflows to it, and checks that each refuses an item with two targets. +## The joint walkthrough lives here + +* `vignette("one-item-set-both-stages")` is the joint walkthrough for + contentvalidR and nomologR, as the maintainer decided for the joint 1.0. + It now says so, passes the handoff itself to `nomo_screen()` and + `nomo_run()` rather than `h$items`, and links to the section of the + nomologR guided workflow that continues from content review. Two stale + sentences are corrected. The handoff reader in nomologR, which the vignette + called future work, has shipped. And nomologR starts from the same handoff + but simulates its own responses, so its screening numbers differ from + these. + # contentvalidR 0.9.0 Ninth public release. v0.9.0 is about how the package presents itself before diff --git a/ROADMAP.md b/ROADMAP.md index 06cfc4d..f61575f 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -830,11 +830,11 @@ reads no handoffs and takes no part in the joint 1.0. candidate, so neither README describes a 1.x before one exists. - [ ] one handoff example shown in both READMEs, regenerated from contentvalidR's release candidate. - - [ ] the joint walkthrough lives in one package, and the other links to - it. Recommended, and acceptable to nomologR: this package's - `vignette("one-item-set-both-stages")`, linking to nomologR's - guided-workflow article for the empirical side. The maintainer - decides. + - [x] the joint walkthrough lives in one package, and the other links to + it. Decided by the maintainer on 2026-09-27: it lives here, as + `vignette("one-item-set-both-stages")`, which links to nomologR's + guided-workflow article for the empirical stage. nomologR has agreed + to link its article back to it. - [ ] the release notes link each other. - Three handoff clarifications nomologR asked for before schema 1 becomes a 1.0 promise, approved on 2026-09-27. None changes the schema: diff --git a/vignettes/one-item-set-both-stages.Rmd b/vignettes/one-item-set-both-stages.Rmd index 1d7397e..9bb4753 100644 --- a/vignettes/one-item-set-both-stages.Rmd +++ b/vignettes/one-item-set-both-stages.Rmd @@ -30,6 +30,12 @@ Nothing here is a real instrument or a real sample. The advantage of simulated data is that the right answer is known in advance, so you can check whether each stage found what was actually put there. +This is the joint walkthrough for `contentvalidR` and its partner package +`nomologR`, which handles the empirical stage. The empirical steps below use +base R, so the whole vignette runs with `contentvalidR` alone. Where the +handoff leaves this package, the walkthrough shows the `nomologR` calls that +pick it up. + ## The construct and the items The construct is *Study Persistence*: the tendency to keep working on academic @@ -281,20 +287,26 @@ about the item's wording predicts that, and no panel could have. Whether the difference matters is a measurement-invariance question, which belongs to the empirical stage. -The handoff is what carries the decision into that stage. Its `items` are the -item names to screen and its `scales` are the subscales to form, both in the -shape a downstream package needs. `nomologR` is one such package; it is not a -dependency of this one, so the call below is shown rather than run: +The handoff is what carries the decision into that stage. Pass the handoff +itself rather than `h$items`, so that the held-back items, their reasons, the +keying, and the response scale travel with the names. `nomologR`, the partner +package for the empirical stage, reads it that way. It is not a dependency of +this package, so the calls below are shown rather than run: ```{r nomologr, eval=FALSE} library(nomologR) -nomo_screen(responses, items = h$items) +# Screen the carried items, using the keying declared at content review. +screened <- nomo_screen(responses, items = h) + +# Form the subscales content review defined, and run the empirical stage. +run <- nomo_run(responses, scales = h) ``` -Reading the handoff object directly, rather than taking `h$items` out of it, is -tracked on -[nomologR#46](https://github.com/JUhalt/nomologR/issues/46). +`nomologR`'s guided workflow continues from here, in its section +[Starting from content review](https://juhalt.github.io/nomologR/articles/guided-workflow.html#starting-from-content-review): +screening, the measurement model, and a report that opens with the content +review. ## The moral, stated plainly @@ -322,9 +334,11 @@ carries the evidence forward rather than just the surviving names. Every file used here is generated by `data-raw/build-walkthrough-data.R` in the package sources, which uses only base R and is deterministic. It states the full generating model: the two-factor structure, every loading, the factor -correlation, the response thresholds, and the single cohort shift. `nomologR` -mirrors the response file from the same script, so both packages show the same -numbers. +correlation, the response thresholds, and the single cohort shift. +`nomologR`'s guided workflow starts from the same handoff, which it ships as a +file, so the items, decisions, and keying match between the two packages. Its +responses are simulated separately, so its screening numbers are not the ones +shown here. ## References