Package: rmoriebricklayer
Title: Reproducible Data Capsules with Provenance and Fallback
Version: 0.5.0
Authors@R: 
    person("Vansh Singh", "Ruhela", email = "vsruhela@proton.me",
           role = c("aut", "cre"),
           comment = c(ORCID = "0009-0004-1750-3592"))
Description: Tools for building brick-proof, reproducible, self-contained
    data capsules.
    Resolves open-data sources through the Comprehensive Knowledge
    Archive Network ('CKAN', <https://ckan.org/>) package_show and
    package_search endpoints, records and verifies provenance with
    Secure Hash Algorithm 256 ('SHA-256') digests and Internet Archive
    'Wayback Machine' (<https://web.archive.org/>) snapshots, validates
    downloaded data against a pinned schema, and falls back to
    schema-driven synthetic data when the real source is unreachable.
    Run records are captured in a manifest plus a plain-language summary
    so any result can be traced back to its inputs. Distributional drift
    between a pinned capsule and a fresh fetch is tested with
    Kolmogorov-Smirnov, chi-square, population stability index,
    Jensen-Shannon divergence and 'Benford' first-digit screens, because a
    re-released extract can be statistically identical yet differ
    byte-for-byte, and a column can keep its name and type while having
    been silently rescaled. Manifests can be authenticated rather than
    only checksum-verified, with keyed digests ('HMAC-SHA-256', RFC 2104) or
    post-quantum hash-based signatures ('Winternitz' one-time signatures under a 'Merkle'
    tree, RFC 8391), and pinned chunk-wise through a 'Merkle'
    tree so a mismatch identifies which part of a capsule moved. Also
    ships a compiled C++ core (summary, robust and rank statistics,
    'SHA-256', 'SHA-512' and 'CRC-32') that sibling packages in the
    'rmorie' ecosystem reach through 'LinkingTo' for a single, shared
    numeric and provenance-hashing backend.
    For the published administrative tables these capsules usually hold,
    it computes period-over-period change matched on the period rather
    than the row, with the exact conditional-binomial interval for a
    ratio of counts and with a percentage-point reading kept distinct
    from a percent change, rendered to Hypertext Markup Language
    ('HTML'), Portable Document Format ('PDF'), delimited text,
    JavaScript Object Notation ('JSON') or Markdown. Interval categories
    such as "2 to 5" or "50+" are parsed to bounds and the dependence of
    any derived figure on the open top band is measured rather than
    assumed. Concentration is summarised by the 'Gini' coefficient, the
    Lorenz curve and tail-index estimation by exact discrete maximum
    likelihood; trend in a series of a few periods by the Mann-Kendall
    test with 'Theil-Sen' slopes, a permutation step-change scan and
    Poisson rate ratios; and region-coded counts by indirect
    standardisation, exact standardised incidence ratios, the empirical
    Bayes shrinkage of Clayton and 'Kaldor' (1987)
    <doi:10.2307/2532003>, funnel-plot limits and Moran's I.
License: AGPL-3
Encoding: UTF-8
Language: en-US
Depends: R (>= 4.1.0)
Imports: methods, stats, utils
Suggests: digest, jsonlite, knitr, openssl, pkgdown, rmarkdown, sf,
        stringi, testthat (>= 3.0.0)
VignetteBuilder: knitr
URL: https://github.com/rootcoder007/rmorie-bricklayer,
        https://rootcoder007.github.io/rmorie-bricklayer/
BugReports: https://github.com/rootcoder007/rmorie-bricklayer/issues
Config/testthat/edition: 3
Config/roxygen2/version: 8.0.0
RoxygenNote: 7.3.3
SystemRequirements: libcurl (deb: libcurl4-openssl-dev, rpm:
        libcurl-devel).
NeedsCompilation: yes
Packaged: 2026-09-16 15:13:06 UTC; rootcoder
Author: Vansh Singh Ruhela [aut, cre] (ORCID:
    <https://orcid.org/0009-0004-1750-3592>)
Maintainer: Vansh Singh Ruhela <vsruhela@proton.me>
Repository: CRAN
Date/Publication: 2026-09-16 22:40:08 UTC
