% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/api-reports.R
\name{build_mfrm_network_review}
\alias{build_mfrm_network_review}
\title{Build an MFRM network review}
\usage{
build_mfrm_network_review(
  fit,
  diagnostics = NULL,
  sparse_design = NULL,
  peer_review_design = NULL,
  top_n_subsets = NULL,
  min_observations = 0,
  top_n = 10,
  include_graph = FALSE
)
}
\arguments{
\item{fit}{Output from \code{\link[=fit_mfrm]{fit_mfrm()}}.}

\item{diagnostics}{Optional output from \code{\link[=diagnose_mfrm]{diagnose_mfrm()}}.}

\item{sparse_design}{Optional sparse-design metadata. Supply either the
generated data frame that carries the \code{mfrm_sparse_design} attribute, the
attribute itself, or a data frame with sparse design columns such as
\code{SparseDesignActive}, \code{DesignDensity}, \code{MinCommonPersonsPerRaterPair},
and \code{ZeroCommonRaterPairs}.}

\item{peer_review_design}{Optional peer-review design metadata. Supply
either the generated data frame that carries the \code{mfrm_peer_review_design}
attribute, the attribute itself, or its \code{overview} data frame.}

\item{top_n_subsets}{Optional maximum number of connected-subset rows to
retain before constructing the graph; passed to \code{\link[=mfrm_network_analysis]{mfrm_network_analysis()}}.}

\item{min_observations}{Minimum observations required to keep a subset row;
passed to \code{\link[=mfrm_network_analysis]{mfrm_network_analysis()}}.}

\item{top_n}{Number of central/cut/bridge rows to retain in the review.}

\item{include_graph}{Logical; if \code{TRUE}, keep the underlying \code{igraph} object
in the nested \code{source_network} bundle.}
}
\value{
A bundle of class \code{mfrm_network_review} containing:
\itemize{
\item \code{overview}: connectedness and front-door review status
\item \code{network_summary}: graph-level metrics from \code{\link[=mfrm_network_analysis]{mfrm_network_analysis()}}
\item \code{facet_summary}: facet-level vulnerability summaries
\item \code{top_central_nodes}, \code{top_cut_nodes}, \code{top_bridge_edges}: follow-up rows
\item \code{sparse_review}: optional sparse-design linking review
\item \code{peer_review}: optional peer-review assignment and linkage diagnostics
\item \code{reporting_map}: boundary between MFRM, design network, sparse design,
peer-review design, and rater-effect network routes
}
}
\description{
Build an MFRM network review
}
\details{
\code{build_mfrm_network_review()} is a synthesis layer over
\code{\link[=mfrm_network_analysis]{mfrm_network_analysis()}}. It keeps the measurement model and graph view in
separate lanes: MFRM estimates remain the measurement results, while the
network review summarizes co-observation connectedness and linking
vulnerability in the observed design. This is especially useful for sparse
or incomplete rater-mediated designs, where common-person links, connected
subsets, articulation points, and bridge edges can explain why an otherwise
estimable model depends on fragile design links.

The review status is deliberately conservative and descriptive. It is not a
literature-derived adequacy cut point for fit, separation, recovery, or
rater quality. Use it to decide which design links, anchors, or additional
observations need inspection before making common-scale claims.
}
\section{References}{

\itemize{
\item Wind, S. A., & Jones, E. (2018). The stabilizing influences of linking set
size and model-data fit in sparse rater-mediated assessment networks.
\emph{Educational and Psychological Measurement}. doi:10.1177/0013164417703733.
\item Wind, S. A., Jones, E., & Grajeda, S. (2023). Does sparseness matter?
Examining the use of generalizability theory and many-facet Rasch
measurement in sparse rating designs. \emph{Applied Psychological
Measurement}, 47(5-6), 351-364. doi:10.1177/01466216231182148.
\item DeMars, C. E., Shapovalov, Y. A., & Hathcoat, J. D. (2023).
\emph{Many-Facet Rasch Designs: How Should Raters be Assigned to Examinees?}
NCME presentation.
}
}

\examples{
\donttest{
toy <- load_mfrmr_data("example_core")
fit <- fit_mfrm(toy, "Person", c("Rater", "Criterion"), "Score",
                method = "JML", maxit = 30)
if (requireNamespace("igraph", quietly = TRUE)) {
  review <- build_mfrm_network_review(fit)
  summary(review)
  build_summary_table_bundle(review)
}
}
}
\seealso{
\code{\link[=mfrm_network_analysis]{mfrm_network_analysis()}}, \code{\link[=subset_connectivity_report]{subset_connectivity_report()}},
\code{\link[=build_summary_table_bundle]{build_summary_table_bundle()}}, \code{\link[=rater_network_analysis]{rater_network_analysis()}},
\code{\link[=rater_halo_network_analysis]{rater_halo_network_analysis()}}
}
