Changes in version 2.1.1 October 2026 documentation and reproducibility - Adds an acquisition-availability synthetic vignette with participant-level and observed-window graphics, linked from pkgdown. No exported API or empirical validation change; independent scientific draft PR #69 remains excluded. - Release gate: complete exact-source R CMD check --as-cran, review installed source tarball and cross-platform tests, audit publication metadata, then publish an immutable GitHub tag and submit to CRAN with maintainer confirmation. - Current CRAN baseline at candidate preparation: 0.1.0. The candidate has not been submitted to CRAN or published as a GitHub Release. Changes in version 2.1.0 Measurement accountability and validation - Added compare_hrv_prv_devices() for metric-specific ECG-HRV versus PPG-PRV agreement summaries using ICC(A,1), Lin's concordance correlation coefficient, and Bland-Altman limits, without implying global interchangeability. - Added scr_responsivity_sensitivity() for retention-first SCR responsivity summaries that preserve conventional non-responder flags while retaining participants for sensitivity modelling. - Added physiology_validation_ladder() for explicit acquisition, analytical, construct, within-person, and held-out-person validation-status reporting. - Added experimental ppg_topology_features() structural waveform descriptors with explicit interpretation and participant-grouped validation guardrails. Documentation and interoperability - Added the physiology measurement-accountability vignette and the September 2026 Python ecosystem update. - Updated package citation metadata for the published Signals article and synchronized release-version metadata. - Preserved the established Gazepoint import, QC, preprocessing, EDA/SCR, PPG/HRV, pupil/gaze, interoperability, reporting, and privacy-safe validation contracts from 2.0.0. Changes in version 2.0.0 - Version 2.0.0 consolidates the expanded gpbiometrics workflow for Gazepoint import, validation, quality control, preprocessing, multimodal alignment, external interoperability, reporting, reproducibility, and privacy-safe validation. - Added workflow articles for auditing interoperability across external package versions and for running privacy-safe smoke tests on genuine Gazepoint exports stored outside the repository. - Added a privacy-safe real-data smoke-test harness with external-directory protection, anonymous dataset identifiers, sanitized conditions, aggregate workflow and diagnostic summaries, repository-safe CSV reporting, and local command-line tools for running and combining private-data audits. - Added a machine-readable interoperability version-testing framework with declared bridge contracts, minimum-tested Python versions, dependency and runtime audits, privacy-safe CSV reports, and a dedicated GitHub Actions matrix covering R eye-tracking bridges and floor/current Python environments. - Added four workflow articles covering MNE/EEG/LSL interoperability, BIDS export and data sharing, eyetrackingR/PupillometryR/gazeR bridges, and troubleshooting and real-data readiness. - Added reciprocal gp3tools compatibility documentation describing the cross-package biometric schema, time-unit requirements, synchronization ownership boundary, audit expectations, and interpretation guardrails. - Closed the remaining roadmap gaps with validate_gazepoint_gaze(), summarise_gazepoint_fixations_by_aoi() and its American-spelling alias, modality-specific BIDS convenience wrappers, optional native MNE FIF writing through a local Python/MNE installation, and optional live LSL clock-offset estimation through pylsl. - Added an integrated MNE/EEG/LSL interoperability module with prepare_gazepoint_mne_events(), prepare_gazepoint_mne_input(), align_gazepoint_to_eeg(), sync_gazepoint_signals_via_lsl(), create_gazepoint_eye_methods_text(), and session_info_gazepoint() for auditable event conversion, channel-matrix preparation, offset and drift correction, post-import LSL/XDF synchronization, standardized eye-tracking methods reporting, and reproducibility metadata. - Added prepare_gazepoint_gazer_input() for auditable conversion of long-form Gazepoint gaze and pupil samples into gazeR-compatible subject, trial, millisecond-time, monocular or binocular coordinate, pupil, validity, and blink columns, with optional runtime construction through a locally installed GitHub version of gazer. - Added prepare_gazepoint_pupillometryr_input() for auditable conversion of long-form Gazepoint pupil samples into PupillometryR-compatible subject, trial, millisecond-time, condition, pupil, validity, and blink columns, with optional invalid-sample masking and construction of a PupillometryR object. - Added prepare_gazepoint_eyetrackingr_input() for auditable conversion of sample-level Gazepoint gaze and AOI data into eyetrackingR-compatible participant, trial, millisecond-time, track-loss, and logical AOI columns, with optional construction of an eyetrackingR_data object. - Added export_gazepoint_to_bids() for standards-oriented BIDS 1.11.1 eye-tracking export with headerless compressed physiological tables, JSON sidecars, screen-metadata enforcement, dry-run path previews, and overwrite protection. - Added prepare_gazepoint_biosppy_input() for auditable preparation of grouped Gazepoint EDA/GSR and PPG/BVP waveform vectors with timebase validation, explicit missing-data handling, and optional Python-ready CSV export. - Added prepare_gazepoint_pyhrv_input() for auditable conversion of Gazepoint IBI/RR data into grouped millisecond NN-interval vectors and optional Python-ready CSV files. - Added assign_gazepoint_aoi() for auditable rectangular and polygonal AOI assignment with context matching, boundary control, and explicit overlap resolution. - Added detect_gazepoint_fixations() and detect_gazepoint_saccades() for auditable I-VT-style classification of raw Gazepoint gaze samples and extraction of fixation and saccade event properties. - Added downsample_gazepoint_data() for auditable fixed-width aggregation of grouped Gazepoint gaze and biometric time series. - Polished the pkgdown home-page DOI badge and grouped article navigation into workflow categories. - Added a plot-rich toolbox-crosscheck visuals article with executable synthetic native-versus-toolbox comparison, EDA event-count, PPG peak/IBI, HRV-feature, Bland-Altman-style, rank-sensitivity, decision-map, and dashboard figures. - Added a plot-rich design-release visual audit article with executable synthetic condition-balance, coverage, schema, channel, sampling, timebase, readiness, and dashboard figures. - Added a plot-rich multimodal event-dashboard article with executable synthetic event-timeline, alignment, event-locked, AOI-linked, synchronization-lag, coverage, and dashboard figures. - Added a plot-rich PPG/HRV visual diagnostics article with executable synthetic filtering, peak-detection, IBI-audit, Poincare-style, HRV-feature, respiration-proxy, and dashboard figures. - Added a plot-rich EDA/SCR visual diagnostics article with executable synthetic signal, decomposition, event-marker, latency, recovery, and threshold-sensitivity figures. - Added a plot-rich visual QC dashboard workflow article with executable synthetic diagnostic figures. - Expanded the plot gallery with additional QC, signal-processing, EDA/SCR, PPG/HRV, event-alignment, AOI, reporting, design-audit, and toolbox-bridge plotting examples. - Added an external-toolbox bridges workflow article covering HeartPy, pyPPG, pyHRV, RHRV, LEDALAB, PSPM, cvxEDA, NeuroKit, and BioSPPy-style preparation, cross-checks, result import, export contracts, and reporting. - Added a design-audit workflow article covering metadata validation, dataset structure, condition balance, session comparability, export-schema checks, event coverage, timing audits, pipeline readiness, design-coverage plots, and reporting outputs. - Added a synthetic-data showcase article demonstrating validation, QC, event alignment, AOI-linked summaries, model-ready tables, reporting outputs, and reproducibility records without private data. - Added a reporting and reproducibility workflow article covering decision logs, manifests, QC supplements, methods text, report-ready tables, audit trails, preregistration checks, and reproducibility statements. - Added an event-alignment and AOI-linked biometric workflow article covering event extraction, timing audits, stream alignment, gaze-biometric synchronization, AOI time courses, event-locked summaries, model-ready tables, and reporting. - Added a PPG, IBI, HRV, and respiration workflow article covering PPG quality, filtering, peak detection, IBI audits, beat correction, HRV summaries, respiration proxies, external-toolbox preparation, and reporting. - Added an EDA, GSR, and SCR workflow article covering unit audits, signal quality, artifacts, baseline correction, tonic/phasic decomposition, SCR events, sensitivity checks, model-ready summaries, and reporting. - Added a pupil and gaze quality-control workflow article covering missingness, blink detection, smoothing, interpolation, baseline correction, gaze filtering, QC summaries, and reporting. - Added an article roadmap for planned workflow, showcase, plotting, reporting, and reproducibility articles. - Added a quality-control workflow article linking dataset-layout checks, metadata validation, missingness summaries, signal-quality flags, exclusion recommendations, dashboard summaries, and reproducibility outputs. - Added pipeline_comparison_dashboard() for static reviewer-facing summaries of QC, missingness, quality, rule-failure, exclusion, and audit indicators. - Added check_gazepoint_bids() for conservative BIDS-like Gazepoint dataset layout audits. Changes in version 0.3.0 - Added advanced cluster-permutation guardrails and external export helpers. The guardrail functions explicitly prevent unsupported ANOVA, mixed-model, TFCE, multidimensional, covariate-adjusted, parallel, and onset/offset cluster claims while directing users back to the validated two-condition time-course workflow. Added export helpers for MNE-, permuco-, and permutes-style external workflows. - Added cluster-permutation diagnostics, reporting, sensitivity, simulation, null-distribution plotting, and export helpers: audit_gazepoint_timecourse_grid(), diagnose_gazepoint_cluster_design(), plot_gazepoint_cluster_null_distribution(), report_gazepoint_cluster_permutation(), run_gazepoint_cluster_threshold_sensitivity(), simulate_gazepoint_cluster_timecourse_data(), and export_gazepoint_cluster_results(). Experimental statistical extensions - Added an experimental within-subject, two-condition cluster-based permutation prototype for Gazepoint-derived time-course signals. - Added prepare_gazepoint_timecourse_test_data(), run_gazepoint_cluster_permutation(), summarize_gazepoint_time_clusters(), and plot_gazepoint_cluster_permutation(). - Added an experimental pkgdown article describing the prototype and emphasizing that cluster timing should be interpreted descriptively rather than as precise onset or offset evidence. - Added release-preparation and auditability helpers for preregistration readiness, dataset-structure review, pipeline mapping, audit-trail summaries, and conservative release-readiness checks. - Added pkgdown reference coverage for the new audit, checklist, pipeline, preregistration, dataset-inventory, and release-readiness helpers. Changes in version 0.2.0 - Added roadmap compatibility aliases and discoverability wrappers for column standardization, format validation, pupil cleaning/interpolation, PPG-derived respiration estimation, and mixed-model data preparation. - Added compare_gazepoint_conditions_bootstrap() for lightweight percentile-bootstrap condition comparisons of Gazepoint-derived trial-level, event-locked, or participant-level outcomes. - Added physiology/QC refinement helpers for HRV segment quality flags, SCR latency metrics, pairwise multimodal signal-lag screening, and exploratory PPG-derived respiration-rate estimation. - Added alignment, AOI time-course, event-locked synthesis, and dashboard helpers for event-based stream alignment, binned AOI proportions, multimodal event-locked summaries, and compact quality-dashboard exports. - Added front-door audit and missingness helpers: unified Gazepoint biometrics preflight audit, dedicated missingness/gap summaries, and generic signal detrending for slow drift in biometric or pupil signals. - Added exact roadmap backlog helpers for schema standardization, export schema auditing, multimodal simulation, sampling-irregularity QC, sync-drift diagnostics, AOI dwell summaries, scanpath metrics, analysis manifests, PPG template-similarity QC, and Haar-style HRV wavelet PSD summaries. - Added remaining roadmap helpers for SCR habituation/recovery, event-related pupil summaries, tracking ratios, pupil-luminance audits, PPG morphology, segment-level PPG quality, generic event-log import, event-to-biometric matching, column validation, and reproducibility metadata. - Added import_gazepoint_data() as a single-entry helper for importing Gazepoint session folders into named lists of data frames. - Added impute_gazepoint_missing() for CRAN-safe interpolation of short missing gaps in continuous Gazepoint signals. - Added pupil and gaze helpers: detect_gazepoint_pupil_blinks(), clean_gazepoint_pupil_signal(), filter_gazepoint_gaze(), and summarize_gazepoint_fixations(). - Added event-level physiology helpers: epoch_gazepoint_scr(), normalize_gazepoint_scr(), flag_gazepoint_rr_outliers(), and compute_gazepoint_engagement_index(). - Added workflow helpers for modeling and reporting: create_gazepoint_trial_regressors(), report_gazepoint_data_quality(), and preprocess_gazepoint_all(). - Added simulate_gazepoint_eye_data() for synthetic Gazepoint-style gaze, fixation, pupil, blink, and validity data for teaching, tests, vignettes, and smoke tests. - Updated package metadata, README, and pkgdown configuration to reflect the expanded Gazepoint-native workflow surface. Changes in version 0.1.1 - Added Gazepoint-native pyHRV-style HRV workflows, including time-domain, frequency-domain, nonlinear, Poincare, sample-entropy, DFA, PSD, tachogram, radar-chart, export/import, and all-in-one HRV helpers. - Added BioSPPy-style Gazepoint biosignal workflows for EDA event extraction, EDA recovery-time estimation, PPG/BVP processing, PPG pulse templates, PPG onset detection, local RRI artifact correction, RRI detrending, power spectra, band power, phase locking, and signal correlation. - Added PsPM-style Gazepoint preprocessing and modelling workflows for marker extraction, marker-channel combination, trimming, session splitting, recording merging, SCR preprocessing/QC, event-centred segment extraction, convolution-GLM design creation, GLM fitting, and model-estimate export. - Extended HeartPy-style PPG support with segmentwise processing, signal scaling, filtering, smoothing, clipping reconstruction, binary-quality checks, breathing-rate visualisation, Poincare plotting, and frequency measures. - Updated package metadata and README to describe the new Gazepoint-native toolbox-style workflow layers without claiming exact external-toolbox equivalence. Changes in version 0.1.0 (2026-07-04) - Added HeartPy-style Gazepoint pulse/PPG workflows, including input preparation, clipping reconstruction, peak enhancement, Butterworth-style filtering, Hampel correction, adaptive peak detection, peak rejection, HR/IBI-style measures, breathing-rate estimation, plotting, report-table generation, and optional Python HeartPy cross-checking through reticulate. Overview - Initial validated development release of gpbiometrics, an R package for importing, validating, quality-checking, preprocessing, synchronising, summarising, modelling, plotting, and reporting Gazepoint Biometrics and Gazepoint GP3 biometric exports. - The package focuses on Gazepoint-specific biometric channels, including GSR/EDA, heart rate, interbeat intervals, pulse signal, engagement dial, TTL markers, pupil-related columns, AOI fields, and synchronisation variables. - The current feature inventory contains 155 available user-facing helpers across 11 complete workflow domains. - Interpretation is intentionally conservative: biometric features are treated as physiological descriptors, quality-control outputs, or analysis-ready signals, not direct labels for emotion, stress, cognition, preference, health status, or diagnosis. Import, schema, and workflow infrastructure - Added import helpers for single files and export folders, including import_gazepoint_biometrics(), import_gazepoint_biometric_folder(), import_gazepoint_data_summary(), and import_gazepoint_lsl_xdf(). - Added Gazepoint schema and channel-detection helpers, including check_gazepoint_biometric_columns(), detect_gazepoint_biometric_schema(), detect_gazepoint_time_columns(), detect_active_biometric_channels(), and standardise_gazepoint_biometric_names(). - Added the main workflow wrapper run_gazepoint_biometrics_workflow() and summary/diagnostic helpers, including summarise_gazepoint_biometrics_workflow() and diagnose_gazepoint_biometrics_workflow(). - Added synthetic data generation with simulate_gazepoint_biometrics() for examples, teaching, and controlled validation. Quality control and readiness - Added validation, missingness, sampling, signal-activity, time-reset, dropout, distributional-drift, and real-data readiness checks. - Added run_gazepoint_biometrics_real_data_readiness() as a final readiness gate for real Gazepoint exports. - Added exclusion-recommendation helpers for participant-level and window-level biometric quality decisions. - Added artifact-detection helpers, including MAD-based, Kleckner-style, and SVM-feature workflows. - Added audit_gazepoint_gsr_units() to help distinguish conductance-like and resistance-like GSR columns before downstream EDA/SCR processing. - Added audit_gazepoint_stabilization_period() for flagging or trimming the initial electrode-stabilisation period. Preprocessing and signal correction - Added baseline correction, smoothing, within-unit standardisation, z-score/range correction, adaptive EMA smoothing, wavelet denoising, quantisation-noise handling, and optional autoencoder-denoising bridges. - Added EDA/GSR unit auditing and conductance-conversion helpers. - Added environmental and stimulus-confound controls, including correct_gazepoint_eda_temperature(), audit_gazepoint_stabilization_period(), and regress_gazepoint_pupil_luminance(). - Added both British and American spelling aliases where useful, including standardise/standardize variants. EDA, GSR, and SCR analysis - Added EDA/GSR quality audits, tonic/phasic summaries, SCR event and peak detection, SCR event-window summaries, nonresponder screening, threshold-sensitivity checks, and SCR multiverse workflows. - Added SCR recovery-time extraction with extract_gazepoint_scr_recovery_times(), including half-recovery and 63 percent recovery-time summaries. - Added advanced EDA helpers for spectral power, complexity, TVSymp-style analysis, bilateral EDA asymmetry, skin-potential analysis, AC admittance/susceptance, stochastic change-point screening, and EDA-gram-style visualisation. - Added external EDA interoperability helpers for Ledalab, PsPM, cvxEDA, NeuroKit-style input, and DCM/CTSI-oriented bridges. - Added run_gazepoint_automated_statistics() for exploratory group comparisons with normality screening, ANOVA/Kruskal-Wallis selection, post-hoc testing, and multiplicity correction. Pulse, IBI, HR, HRV, and respiration - Added HR, IBI, and HRV quality and consistency checks. - Added HR/IBI window summaries and IBI-derived HRV feature extraction. - Added nonlinear and geometric HRV descriptors, including RQA, fragmentation, asymmetry, FuzzyEn/CSI, RCMSE, surrogate nonlinearity testing, and IPFM-style impulse-train modelling. - Added Gazepoint pulse beat-candidate extraction with extract_gazepoint_beats_kmeans(). - Added respiration-related helpers, including PPG-derived respiration, ECG-derived respiration PCA bridges, CEEMDAN-style respiration extraction, RSA proxy calculation, and Kalman fusion of respiration proxy streams. - Added point-process and cardiorespiratory directionality helpers for advanced exploratory analysis. TTL, synchronisation, windows, and model-ready data - Added TTL event extraction and TTL alignment helpers. - Added signal-lag estimation and synchronisation-drift diagnostics. - Added multimodal time-window summaries and model-ready table preparation helpers for biometric, AOI-linked, and LME-style analyses. - Added chunking and online design-optimisation decision-support helpers for advanced experimental workflows. - Added helpers for synchronising Gazepoint Biometrics outputs with Gazepoint eye-tracking master tables. AOI-linked biometrics and plotting - Added AOI-linked biometric summaries, AOI-biometric model data preparation, and AOI-biometric plotting. - Added biometric signal plots, quality plots, decomposition plots, SCR plots, multimodal timelines, activity/time-reset plots, report dashboards, SCR specification-curve plots, saccade main-sequence plots, and EDA-gram-style plots. - Added plot-contract helpers to store plot data, settings, and interpretation metadata for reproducibility. Reporting, feature inventory, and documentation - Added checklist, methods-text, report-table, report-bundle, preregistration-template, and Shiny/annotator helpers. - Added create_gazepoint_biometrics_feature_inventory() for programmatic workflow coverage checks. - Added formatted inventory helpers, format_gazepoint_biometrics_feature_inventory() and summarise_gazepoint_biometrics_feature_inventory(). - Added a compact user-facing README and the first workflow vignette, vignettes/gpbiometrics-workflow.Rmd. - Updated workflow documentation to use the current run_gazepoint_biometrics_workflow(path = ...) API and to export report bundles through export_gazepoint_biometrics_report_bundle(). - Added a public, fully synthetic Gazepoint-like kiosk demo dataset under inst/extdata/gazepoint_biometrics_kiosk_demo_exports/. - The demo dataset contains 36 synthetic participants, four kiosk tasks per participant, 69,120 rows, 36 all-gaze CSV exports, task metadata, gaze/AOI fields, pupil columns, GSR/EDA, HR, IBI, pulse waveform, engagement dial, and TTL markers. - Added data-raw/create_gazepoint_biometrics_kiosk_demo_exports.R to regenerate the synthetic demo exports reproducibly. - Added package tests to ensure the synthetic kiosk demo remains available, importable, and schema-valid. Interoperability and optional external methods - Added RHRV, pyPPG, NeuroKit2, Ledalab, PsPM, cvxEDA, DCM, and CTSI-oriented preparation/export bridges. - External-method bridges remain optional and do not make external software a hard dependency. - Advanced bridge functions prepare or structure data for external workflows unless explicit cross-check execution is requested and available. Validation - Current local validation passed with: devtools::test() # FAIL 0 | WARN 0 | SKIP 0 | PASS 1662 devtools::check() # 0 errors | 0 warnings | 0 notes - The workflow vignette builds during devtools::check(). - A private real-data smoke test on a local Gazepoint export folder passed import, readiness, workflow, summary, and report-bundle export checks. - The private workflow used 6 source files, 7340 imported all-gaze rows, 70 columns, 1323 TTL events, 0 validation issues, and 3 active signal groups. - The private report-bundle export wrote 81 files with 0 skipped items. - Private data and private smoke-test outputs remain outside the package repository. Interpretation safeguards - EDA/GSR/SCR features describe electrodermal dynamics and arousal-related physiology; they do not directly infer emotion, stress, cognition, health status, or diagnosis. - HR, IBI, HRV, pulse, and respiration-proxy features describe cardiovascular or signal-derived dynamics; they are not clinical labels. - Pupil outputs are affected by luminance and visual context; luminance-adjusted residuals are not proof of cognitive-load-only effects. - AOI-linked biometric summaries describe signal values during AOI exposure and do not establish emotional valence, preference, or cognitive evaluation by themselves. - Automated statistics and advanced models are exploratory/reporting aids unless matched to a preregistered design and reviewed analytically.