Metrics / zapstore / republished_release_count
republished_release_count
Counts kind-30063 (zapstore-app-releases) release rows in the REPUBLISHED partition per UTC day - releases, not distinct apps: an app that ships 30 patch versions contributes 30 rows, and one app can appear on many days.
unit
releases
grain
day (UTC)
series
sparse, full history
key
zapstore.republished_release_count@day
Parameters
| param | accepted values |
|---|---|
| grain | day - default day (omit to get the default) |
| from | optional inclusive ISO UTC calendar day (YYYY-MM-DD); omit for the series start |
| to | optional inclusive ISO UTC calendar day (YYYY-MM-DD); omit for today UTC (that day still in progress) |
| format | csv | markdown |
Query it
MCP tool call against https://dev.nostrolo.gy/mcp (connect your agent):
{
"name": "nostrology_query_metric",
"arguments": {
"metric": "republished_release_count",
"domain": "zapstore",
"grain": "day"
}
} Windowed (inclusive UTC days; both optional):
{
"name": "nostrology_query_metric",
"arguments": {
"metric": "republished_release_count",
"domain": "zapstore",
"grain": "day",
"from": "2026-07-01",
"to": "2026-07-31"
}
} Response: a plain-text envelope (window, freshness, column contract, this page's
caveats) followed by the data table (csv, or format: "markdown") at day grain.
Response columns
| name | type | description |
|---|---|---|
| utc_day | date | UTC calendar day (bucketed at UTC, not session TZ) |
| republished_release_count | integer | Release rows (app-versions) republished by the curator that day |
What is counted
'Republished' means published by the Zapstore curator key EXCEPT that key's own first-party software (the Zapstore Android client, its alpha track, and zapstore-cli), which is natively published despite sharing the key; the partition is the exact complement of the one behind zapstore.native_release_count, so the two sum to all releases and never double-count a row.
Caveats
- Row grain is one row per (pubkey, '<package>@<version>'): kind-30063 is addressable on (pubkey, d_tag) with the version inside d_tag, so every version survives as its own row - but RE-publishing the same version replaces the earlier row, so it is counted once and dated at the latest revision, which makes this a count of app-versions-published rather than of raw relay events.
- The day comes from the event's own created_at as set by the publisher, NOT from when we ingested it: for most republishes that is the republication time, but a small tail instead carries the UPSTREAM GitHub / F-Droid release date, so the earliest part of this series is upstream release history rather than Zapstore activity (measured 2026-07-30: 129 of 12,883 rows predate 2024 and the earliest is 2015-12-29, years before Nostr existed).
- Includes pre-release channels (alpha/beta/rc), matching the Zapstore Android client, which does not filter on channel.
- Series is sparse: days with zero republished releases are omitted.
Freshness in every response is data-derived: latest kind-30063 (zapstore-app-releases) event time.