Skip to content

feat: add release dates and descriptions to collections#269

Open
TowyTowy wants to merge 1 commit into
ByMykel:mainfrom
TowyTowy:feat/196-collection-release-dates
Open

feat: add release dates and descriptions to collections#269
TowyTowy wants to merge 1 commit into
ByMykel:mainfrom
TowyTowy:feat/196-collection-release-dates

Conversation

@TowyTowy

@TowyTowy TowyTowy commented Jul 8, 2026

Copy link
Copy Markdown

Closes #196.

Adds two fields to every entry in collections.json:

  • release_date — ISO 8601 (YYYY-MM-DD), curated in utils/collectionReleaseDates.json keyed by collection id (same pattern as utils/specialNotes.json).
  • description — the official set_description game string via $t(), or null when Valve provides none.

Why curated: release dates aren't present in items_game/csgo_english (as noted in the issue), so they're maintained in a JSON map. Where a collection is tied to a case, the value matches the case's first_sale_date already published in crates.json; a handful of 2013–2014 cases whose first_sale_date is a bulk market-enable artifact (the three Arms Deal sets all read 2013-09-20, the three eSports sets all read 2014-07-09) were corrected to their real release dates via patch notes; the rest are sourced from CS wiki / patch notes.

Descriptions are only shipped when Valve supplies an official string (currently 8 collections, e.g. the Bravo/Alpha grant collections and the charm/sticker capsules) and auto-populate as more are localized — no hand-written text.

Acceptance contract

  • Default: both fields present on all collections; null where unknown. Purely additive — no existing field changed (regen diff is +212/-0 for en).
  • Backwards-compatible: consumers ignoring the new keys are unaffected.
  • Out of scope (deliberate): hand-writing non-official descriptions for the ~98 collections with no official string, and dating the XP-shop "Limited Edition Item" (null — no reliable public date).

Lower-confidence dates, flagged for review: 2018 Nuke/Inferno (2018-09-01, approximated to the FACEIT London major window), Cache (2014-08-08), Bank (2013-11-27), Genesis (2025-09-17), Dead Hand (2026-03-12 vs SteamDB's "11 March 2026"), and the Oct 2025 sticker/charm sets (2025-10-01, though the in-game description text says "September 2025"). Happy to adjust any of these.

Data files are left for the update bot to regenerate across all languages.

Adds "release_date" (ISO 8601) and "description" fields to every entry
in collections.json. Release dates are curated in
utils/collectionReleaseDates.json, keyed by collection id; descriptions
are pulled from the official csgo_english "set_description" token where
Valve provides one (null otherwise). Closes ByMykel#196.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@samplics

samplics commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Bad PR, not really evidence based

@TowyTowy

TowyTowy commented Jul 8, 2026

Copy link
Copy Markdown
Author

Happy to correct any entry that's wrong — which dates do you see as not evidence based? The sourcing is described in the PR body: the 38 case-linked collections reuse the first_sale_date values this repo already publishes in crates.json, six 2013–2014 cases are corrected against patch notes because their first_sale_date is a bulk market-enable artifact (the three Arms Deal sets all read 2013-09-20, which is provably not their release), and the map/operation collections are anchored to documented update dates. The six I'm least confident about are explicitly flagged in the PR description. If you have a better source for any specific collection I'll gladly update the map.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Collections reelease dates and desctiptions

2 participants