# description
Published aggregate book-mention statistics from the Reddit communities tracked by BooksReddit, with reconciled breakdowns, source-window coverage, and sentiment context from displayed excerpts.

# properties.data_updated_at.description
Latest checked-in updated timestamp among included book records. It may reflect data or editorial work and is not necessarily a source-ingestion time.

# properties.build_commit.description
Injected deployment commit, or the clean local Git commit when available. Null means the build could not be tied truthfully to one commit.

# properties.coverage.properties.first_month.description
Earliest observed month in any included record; this does not imply every source unit covers that month.

# properties.coverage.properties.last_month.description
Latest observed month in any included record; this does not imply every source unit covers that month.

# properties.source_coverage.description
Aggregate source-window coverage projected deterministically from the tracked exact-release aggregate. The build fails if this privacy-safe projection drifts from that source.

# properties.source_coverage.properties.source_aggregate_sha256.description
SHA-256 of the exact tracked aggregate used to generate this ledger.

# properties.source_coverage.properties.source_results_with_unknown_legacy_coverage.description
Selected legacy result files that predate explicit result-level coverage metadata. The exact release is rebuilt from caches rather than trusting their aggregate counts.

# properties.source_coverage.properties.legacy_caches_without_completeness_sidecars.description
Selected uncapped legacy caches whose completeness relies on the historical invariant that incomplete walks were not stored in the complete-cache namespace.

# properties.source_coverage.properties.recovery_basis_notes.properties.legacy_count_match_only.const
Matching the legacy comment count confirms count equality only; it does not establish historical content equivalence with the original partial archive.

# properties.source_coverage.properties.recovery_basis_notes.properties.accepted_snapshot_mismatch.const
A reviewed accepted mismatch pins repeatedly confirmed, stable current archive content; equivalence with the historical legacy partial remains unknown.

# properties.source_coverage.properties.partial_units.description
Privacy-safe ledger of bounded newest-first source units. Composite source identity is unique in the generated artifact. Rows expose filenames, windows, counts, and digests only—never comments, usernames, excerpts, permalinks, or cache paths.

# properties.source_coverage.properties.partial_units.items.properties.source_file.description
Bare manifest source filename, without a local path.

# properties.source_coverage.properties.partial_units.items.properties.covered_window.description
Precise covered bounds. A boundary is an ISO date or, when the archive walk ended within a day, an RFC 3339 instant.

# properties.source_coverage.properties.partial_units.items.properties.recovery_basis.description
How the bounded source unit was recovered. Interpret it using recovery_basis_notes; neither value proves historical content equivalence.

# properties.source_coverage.properties.partial_units.items.properties.snapshot_pin_status.description
Whether the selected current cache artifact and its evidence are pinned in the reviewed release manifest. A pin establishes reproducibility of the current selection, not equivalence to a historical partial.

# properties.field_notes.description
Human-readable semantics for fields that are easy to misinterpret.

# properties.field_notes.properties.total_mentions.const
Canonical published mention total for the book across the selected source artifacts and their covered ranges.

# properties.field_notes.properties.unique_commenters.const
Distinct non-deleted Reddit account identifiers observed for the book across the selected release corpus after eligibility filters, normalized case-insensitively. Accounts are not people, and one person can control multiple accounts.

# properties.field_notes.properties.average_sentiment.const
Mean sentiment of the scored source excerpts published for the book, on a -1 to +1 scale. It does not score every mention and is not a rating. Null means no scored excerpt is available.

# properties.field_notes.properties.monthly_mentions.const
Complete calendar-month margin for the published record. Month keys are unique exactly; producers must reject duplicate month rows instead of collapsing them. Its mention counts sum exactly to total_mentions.

# properties.field_notes.properties.subreddits.const
Complete per-subreddit margin for the published record, including low-volume rows. Names are non-empty and unique case-insensitively. Its mention counts sum exactly to total_mentions.

# properties.field_notes.properties.subreddit_monthly_mentions.const
Sparse, complete set of observed subreddit-by-month cells; zero cells are omitted and each (subreddit, month) pair is unique case-insensitively. The cells sum exactly to total_mentions and their margins equal monthly_mentions and subreddits.

# properties.field_notes.properties.updated.const
Timestamp of the checked-in book record's latest data or editorial update. It is not necessarily the source-ingestion time.

# properties.books.items.properties.unique_commenters.description
Distinct non-deleted Reddit account identifiers observed for the book across the selected release corpus after eligibility filters, normalized case-insensitively. Accounts are not people, and one person can control multiple accounts.

# properties.books.items.properties.average_sentiment.description
Mean sentiment of the scored source excerpts published for the book, on a -1 to +1 scale. It does not score every mention and is not a rating. Null means no scored excerpt is available.

# properties.books.items.properties.monthly_mentions.description
Complete calendar-month margin for the published record. Month keys are unique exactly; producers must reject duplicate month rows instead of collapsing them. Its mention counts sum exactly to total_mentions.

# properties.books.items.properties.subreddits.description
Complete per-subreddit margin for the published record, including low-volume rows. Names are non-empty and unique case-insensitively. Its mention counts sum exactly to total_mentions.

# properties.books.items.properties.subreddit_monthly_mentions.description
Sparse, complete set of observed subreddit-by-month cells; zero cells are omitted and each (subreddit, month) pair is unique case-insensitively. The cells sum exactly to total_mentions and their margins equal monthly_mentions and subreddits.