Repository navigation
Normalize inconsistent tags; backfill obviously-missing ones - #37
Open
karthikraman wants to merge 8 commits into
Open
karthikraman wants to merge 8 commits into
karthikraman wants to merge 8 commits into
Conversation
Consistency fixes (case/spacing/plural variants merged to one form): - SpecialPujas -> SpecialPuja - OtherAvataram -> OtherAvatarams - Danam -> DanamDays - Yugadi -> YugadiDays - "Devi Parva" -> DeviParva (space broke the PascalCase convention every other tag follows) - "Pancha Parva" -> PanchaParva - "Anadhyayana Days" -> AnadhyayanaDays - "Temple Festivals" (vague, only file of its kind) -> NorthIndiaTempleFestivals, matching its actual temples/North/ location - Sankranti -> GrahaSankranti: the 6 files under this tag are all planetary (Mars/Rahu/Venus/Jupiter) ingress events, not solar ones, so the old generic name collided in meaning with SunSankranti - CommonFestivalsTamilnadu (a file's only tag, conflating two dimensions) split into CommonFestivals + TamilNaduFestivals - TamilFestivals -> TamilNaduFestivals (correct state name) Backfilled obviously-missing tags on previously untagged files: - 12 mahApuruSha historical/modern entries (Vivekananda's Chicago address, Ramanujan's birth, etc.) get MahapurushaEvents, matching every other entry of the same kind - 2 Pushkara-mela start/end entries get Pushkara - 4 solstice/equinox entries (no fitting existing tag) get a new Ayana tag Verified: all 1335 in-scope files still parse; every old tag string is now absent; every new/merged tag's count equals the expected sum. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BKtdfepRnYSUcuQN8YkAny
Every festival now carries exactly one of MajorFestivals/CommonFestivals/
LessCommonFestivals/RareDays (was 37% coverage before this commit).
RareDays is reserved for events that don't fall on a fixed annual
calendar slot -- irregular/multi-year phenomena (Pushkara-mela's 12-year
per-river cycle) or floating astronomical coincidences that may not
recur every year. It deliberately excludes anything that just happens
every month or every year on a fixed date, however obscure: Chandra-
darshanam (monthly moonrise-sighting) and the sayana-vaidhrti/vyatipata
yogas (recur ~monthly like any of the 27 yogas) were tagged Combinations/
ChandraDarshanam but are not rare by this definition, so they get
LessCommonFestivals instead, not RareDays. Only the 2 Pushkara-mela
files get RareDays here.
Everything else without a tier defaults to LessCommonFestivals -- a
deliberately weak, low-risk claim ("specific, not mainstream") rather
than guessing CommonFestivals broadly. That guess would likely be wrong
often: e.g. of 94 MahapurushaEvents-tagged files, the 35 a curator had
already tiered were 100% CommonFestivals, but that's selection bias --
curators evidently only bothered tiering the handful of famous ones,
not the routine matha-pontiff aradhana days that make up most of the
remaining 59. Promoting specific well-known entries out of
LessCommonFestivals into CommonFestivals/MajorFestivals is left as a
smaller, separate, lower-risk curation pass.
Also renamed ShannavatiTarpanaDays -> ShannavatiDays (17 files): the
"Tarpana" was redundant given the tag already scopes to Shraddha days.
Verified: all 1335 in-scope files still parse; every file has exactly
one tier tag.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BKtdfepRnYSUcuQN8YkAny
Audited all 108 existing RareDays files against the rule: rare means irregular/multi-year or "sometimes never in a year", not just obscure. Checked every file's timing structure (fixed month+anga vs. a genuine secondary vaara/nakshatra/intersection constraint that isn't guaranteed to align every year) rather than trusting the tag name alone. 104/108 check out: floating combinations, planetary war/combustion, eclipses, amrita-siddhi/nakta-vrata yoga day-nakshatra pairings (~1.9x/ year per pairing), and the 13 genuine river-Pushkaram entries in time_focus/puShkara/ (each a 12-year cycle, driven by Jupiter's transit per the code comment in gaGgA-puSkara-viSeSaH.toml). The other 2 -- puShkara-melA-samApti/prArambha under temples/North/ -- are a different "Pushkara" entirely: the well-known ANNUAL Pushkar Camel Fair in Rajasthan (Kartik Purnima, livestock fair + pilgrimage bathing), not the 12-year river festival. I'd mistakenly approved these for RareDays in the previous commit by going off the "Pushkara" tag name alone without reading the file. Fixed to CommonFestivals given the fair's actual prominence; left the Pushkara tag in place since untangling that shared name from the river-Pushkaram concept is a separate, smaller judgment call. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BKtdfepRnYSUcuQN8YkAny
…eFestivals to Pushkar Mela The prior backfill commit defaulted any untagged file to LessCommonFestivals, which is wrong when the file is one stage of an event that's well-known overall -- it just happened to be the sibling file nobody had tagged yet. Found via a systematic audit rather than more guessing: 1. Built a "family" detector using two purely structural, non-semantic signals: (a) same id after stripping a fixed ArambhaH/samApanam/etc. suffix set, and (b) identical `timing` spec (month_type, month_number, anga_type, anga_number) across files, i.e. literally the same calendar slot. 2. Cross-referenced flagged groups against git history to see which member's tier predates the backfill commit (curator-assigned) vs. which was newly defaulted by it. 3. Manually verified every candidate by reading the actual file content -- shlokas, description, references -- not just trusting id/tag text, since a shared id-root or timing slot does not by itself prove two files describe the same real-world event (see false positives below). Confirmed real bugs, fixed: - mahAlaya-pakSaH (the Pitr Paksha period itself) and mahAlaya-pakSa-ArambhaH (its start) -> CommonFestivals, matching mahAlaya-pakSa-samApanam / mahAlaya-pakSa-tarpaNa-pUrtiH (its end), which already correctly had CommonFestivals pre-backfill. - (bhAdrapada)_mahAlaya_amAvAsyA -> CommonFestivals. Not caught by the id-suffix check (different naming scheme entirely), but confirmed via identical shlokas/references to be the exact same day as mahAlaya-pakSa-samApanam, just filed under the AmavasyaDays scheme instead of the SpecialPeriod one. Investigated and confirmed NOT bugs (left as-is): - tulasI-vivAhOtsava-ArambhaH staying LessCommonFestivals while the main day/end are CommonFestivals: read the actual verses -- ArambhaH is a 3-day vrata's preparatory start, genuinely less observed than the Tulasi-Shaligram wedding day itself. Pre-existing curator choice, not backfill-introduced, and defensible. - The many `anadhyAyaH~X` (no-Veda-study-day) files staying LessCommonFestivals while their anchor festival (an Upakarma, equinox, etc.) is CommonFestivals: a real, more niche concept distinct from the festival itself, not the same event misfiled. - Several id-suffix/timing-slot matches were false positives from the detection heuristics themselves (e.g. Holika Purnima's tithi coincidentally also hosts an unrelated Venkatachala temple event, a manvantara day, and Chaitanya Mahaprabhu's jayanti -- four distinct observances sharing a date, not one event needing a consistent tier). Also added NorthIndiaTempleFestivals to the 2 Pushkar-Mela files (temples/North/), matching the existing state-tagging convention in that folder (KashmirTempleFestivals, UttarPradeshTempleFestivals) that a prior commit in this PR had already established but missed applying here. Separately flagged (not fixed here, needs a decision, not a tag fix): general/description_only/payOvratam.toml and aditi-payOvratam.toml are two DIFFERENT vratas (Aditi's Phalguna payovratam vs. a Margashirsha "dvidala-vratam") that share the literal id "payOvratam" -- a pre-existing id-collision bug unrelated to tags, violating the repo's own id-uniqueness convention. Left alone since fixing it means renaming an id, which is more consequential (potential downstream references) than a tag change. Verified: all 1335 in-scope files still parse. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BKtdfepRnYSUcuQN8YkAny
State-specific tags (TamilnaduTempleFestivals, AndhraTempleFestivals, etc.) already exist, but there was no way to filter "temple festivals" across all regions at once. Added TempleFestivals to all 121 files under temples/ -- the same folder-based criterion the site's own "Temple Festivals" category grouping already uses, so this is just making that grouping available as a tag too. Deliberately does NOT extend to matha/pontiff commemoration days (KanchiAradhanaDays, SringeriFestivals, SringeriAradhanaDays), which live under mahApuruSha/ -- those honor a person/lineage, not a temple utsava, and folding them in would blur what "TempleFestivals" means. Verified: all 1335 in-scope files still parse; 0 files under temples/ still missing the tag. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BKtdfepRnYSUcuQN8YkAny
vEGkaTAcalE_jyESThAbhiSEkaH_(svarNa).toml was the sole TempleFestivals file (out of 121) with no state-specific tag -- found while answering "what's missing a state tag" during PR review. Its 17 sibling files describing the same Tirumala Jyeshthabhishekam festival (other days/ kavacas of the same 3-day rite) all correctly carry AndhraTempleFestivals; this one was just missing it, predating any of this PR's changes. Note: this file also carries a DanamDays tag that looks questionable given its description (a kavaca/abhisheka ritual, not obviously a donation day) -- also pre-existing, not touched here pending a decision on what it should be. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BKtdfepRnYSUcuQN8YkAny
vEGkaTAcalE_jyESThAbhiSEkaH_(svarNa).toml describes a kavaca/abhisheka (ceremonial armor + ritual bathing) rite -- no donation component in the description, so DanamDays doesn't fit. Pre-existing tag, unrelated to this PR's other changes; removed per review. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BKtdfepRnYSUcuQN8YkAny
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Commit 1 — normalization:
SpecialPujas->SpecialPuja,"Devi Parva"->DeviParva,"Anadhyayana Days"->AnadhyayanaDays, etc. — full list in that commit's message).Sankranti->GrahaSankranti(the 6 files under it are planetary ingress events — Mars/Rahu/Venus/Jupiter — not solar, so the old name collided in meaning withSunSankranti).TamilFestivals->TamilNaduFestivals(correct state name) and split the one-offCommonFestivalsTamilnadutag intoCommonFestivals+TamilNaduFestivals.MahapurushaEventson 12 historical/modern mahapurusha entries,Pushkaraon 2 mela start/end entries, and a newAyanatag on 4 solstice/equinox entries with no fitting tag at all.Commit 2 — popularity-tier coverage (Major/Common/LessCommon/Rare):
RareDaysis reserved for events that don't land on a fixed annual calendar slot — irregular/multi-year phenomena (Pushkara-mela's 12-year per-river cycle) or floating astronomical coincidences that may not recur every year. Chandra-darshanam (monthly) and the sayana-vaidhrti/vyatipata yogas (recur ~monthly like any of the 27 yogas) were previously tagged in ways that looked "rare" but aren't by this definition — they getLessCommonFestivalsinstead.LessCommonFestivals— a deliberately weak, low-risk claim, rather than guessingCommonFestivalsbroadly (which the data shows would likely be wrong often, due to selection bias in which files curators had already bothered tiering).ShannavatiTarpanaDays->ShannavatiDays(17 files) — "Tarpana" was redundant given the tag already scopes to Shraddha days.LessCommonFestivalsintoCommonFestivals/MajorFestivalsis left as a smaller, separate curation pass.Verification
tags = [...]line per file (or a single inserted line where none existed) — no other content touched.This came out of a broader tag audit for https://adyatithi.github.io/ (a new Hugo site browsing this data by month/devata/tithi/nakshatra/tag).
🤖 Generated with Claude Code
https://claude.ai/code/session_01BKtdfepRnYSUcuQN8YkAny