% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/snapshot.R
\name{aemo_snapshot}
\alias{aemo_snapshot}
\title{Snapshot provenance for an aemo_tbl}
\usage{
aemo_snapshot(x)
}
\arguments{
\item{x}{An \code{aemo_tbl} (or a list of them).}
}
\value{
A data frame with one row per table.
}
\description{
Returns a one-row-per-source provenance record for an
\code{aemo_tbl}, suitable for inclusion in a paper appendix, a
Zenodo deposit, or a CRAN-style data manifest. The snapshot
captures:
}
\details{
\itemize{
\item \code{title}: the human-readable title of the table;
\item \code{source}: the NEMweb / MMSDM URL family the table was drawn
from;
\item \code{licence}: the AEMO Copyright Permissions Notice (always);
\item \code{retrieved}: the \code{POSIXct} timestamp at which the table was
constructed;
\item \code{rows}, \code{cols}: observed dimensions;
\item \code{sha256}: a SHA-256 digest of the table's printed body,
stable across R versions and platforms.
}

The \code{sha256} column is what makes the snapshot \emph{pinnable}: if
the same query returns a different hash, the underlying data
has changed (or the row-order has, which is also worth
knowing). Pair with a git commit of the analysis script to
give a reader a closed reproducibility loop.
}
\examples{
x <- structure(
  data.frame(settlementdate = Sys.time(), region = "NSW1", rrp = 80),
  aemo_title = "Demo",
  aemo_source = "http://nemweb.com.au",
  aemo_licence = "AEMO Copyright Permissions Notice",
  aemo_retrieved = Sys.time(),
  class = c("aemo_tbl", "data.frame")
)
aemo_snapshot(x)
}
\seealso{
Other reference: 
\code{\link{aemo_dlf}()},
\code{\link{aemo_interconnectors}()},
\code{\link{aemo_mlf}()},
\code{\link{aemo_participants}()},
\code{\link{aemo_price_caps}()},
\code{\link{aemo_regions}()},
\code{\link{aemo_settlement}()},
\code{\link{aemo_units}()}
}
\concept{reference}
