Changes in version 0.6.0 (2026-06-24) - Enhance Graphviz (DOT) output for publication-quality figures. The DOT engine now renders full flow diagrams for complete feature parity with grid (default) outputs. - Add factorial (double-split) designs, with sub-arms grouped under their parent and the trunk centered over all leaves. Compatible with both grid and DOT outputs. - Add nested exclusion reasons, with each parent reason carrying its own named sub-reasons. Accessed by supplying a nested named vector (manual mode) or a reason/sub-reason column pair that is cross-tabulated automatically (data mode). Compatible with both grid and DOT outputs. - Rename the criteria parameter of exclude() and assess() to criterion. The singular reflects that each step defines one accountable exclusion with a single reason breakdown; compound conditions (&, |, !) remain supported. - Expand arithmetic checks. exclude() and assess() now warn when a reason column has no value for some removed rows---such rows are grouped under "Other". Like the manual-flow arithmetic checks, this is advisory and toggleable via options(selecta.check_arithmetic). - Expand vignettes and gallery. Changes in version 0.5.0 - Remove classify(). STARD diagrams now use stratify() on the index-test result with a per-arm endpoint(breakdown = ...) for the target-condition breakdown, matching the standard STARD layout. - cohorts() snapshot fields renamed: remaining to included and n_remaining to n_included, mirroring excluded/n_excluded. - Complete CRAN-compliant documentation for all exported functions, adding @details and @family sections alongside full @param, @return, @seealso, and @examples; non-executed examples now use \donttest rather than \dontrun. - DOT engine: source box and header colors now match the grid engine; fix multi-source header alignment; add orthogonal-edge and three-source examples. - Arithmetic checks for manual flows now also validate per-arm exclusion sub-reason totals; checks remain toggleable via options(selecta.check_arithmetic). - Performance: recdims() no longer issues drawing primitives when only measuring dimensions, and data-mode exclusions avoid materializing the excluded subset. - Expand vignettes and gallery. Changes in version 0.4.0 - Phase boxes rework. Adaptive formatting for both overly long and multi-line phase labels, including toggleable soft-returns for the former and user-insertable hard-returns (\n) for the latter. - Add regional number formatting: US, EU, SI/ISO 31-0 standard, custom. - Refine vignette workflows and documentation. - Rename suggest_size() function to recdims(). - Add logo. Changes in version 0.3.0 - Add "split-and-recombine" topology, accessible through use of successive stratify() and combine() calls. - Add exclusion box formatting edits. - Make enhancements to classify() to ensure proper alignment. - Reorganize mock datasets with expanded documentation. - Update documentation headers. Changes in version 0.2.1 - Add refinements to reason ordering. - Fix expr parameter expression handling. Changes in version 0.2.0 - Add support for multi-source diagrams (PRISMA, MOOSE). - Improve rendering consistency and add specializations for "split" diagrams (CONSORT, STROBE). - New functions: sources(), combine(), assess(), classify(), stratify()/allocate(), suggest_size(), autoflow(). - Multiple pipeline enhancements for exclude(), endpoint(), and stratify()/allocate(). - Add font-scaled line spacing. - Add count-first display mode. - Add comprehensive testthat suite. - export_diagram() renamed to autodiagram(). - exclude() default for show_count changed from TRUE to FALSE. - Add vectorization where possible for performance enhancements. Changes in version 0.1.0 - Initial commit. - Core functions established. - First-draft README. - Basic CONSORT functionality, tested on 0-, 2-, and n-arm setups.