# `puja/` — sources & accuracy notes

This file records what every entry in the `puja/` module was cross-validated
against, the disagreements that were found, and — most importantly — the **soft
spots**: facts that could *not* be confidently corroborated from trusted sources.
Read the soft-spots section before this content ships.

## Posture

- Content is researched from scratch. The mobile app's `dharmagya/src/config/pujas.ts`
  was used only as a **data-shape / scope reference**, never as a content source.
- Every factual claim is cross-validated against ≥2 independent trusted sources
  where possible. Where only one source carries a claim, it is flagged below.
- Where sources disagree, the most widely-attested form is used and the
  disagreement is recorded.
- A fact that cannot be corroborated is **omitted** from the content and listed
  under "Soft spots" — never guessed or filled from a single low-quality page.
- `PujaMantra` IAST has had its verification pass (2026-05-29) — the anusvāra
  was normalised to the project standard (`ṃ`) and every mantra round-trip-
  verified against its Devanagari, so `reviewPending` is now dropped (see
  "Mantra-review debt — closed").

## Sources consulted

Primary structured source — **Drik Panchang** (English pages, and the `?lang=hi`
Hindi pages for the Hindi content):

- **DP-SAT** — Satyanarayan Puja Vidhi / Vrat Pujan Vidhi / Vrat Pujan Samagri.
- **DP-LAKSHMI** — Lakshmi Puja Vidhi + Lakshmi Puja Samagri.
- **DP-GANESH** — Ganesh Chaturthi Puja Vidhi.
- **DP-SHIVA** — Shodashopachara Shiva Puja Vidhi (the basis for Rudrabhishek).
- **DP-HANUMAN** — Hanuman Puja Vidhi.
- **DP-NAVAGRAHA** — Navagraha Puja.
- **DP-DURGA** — Navratri Durga Puja Vidhi (the basis for Ghatasthapana).

Supporting / independent cross-checks:

- **WIKI** — Wikipedia: "Satyanarayana Puja", "Diwali", "Ganesh Chaturthi",
  "Shri Rudram", "Hanuman Jayanti", "Navaratri".
- **HAF-16** — Hindu American Foundation, "How to conduct a traditional 16-step
  Hindu puja" (cross-check of the 16-upachara structure).
- **RITUAL-REFS** — for Rudrabhishek and Navagraha, several ritual-reference
  pages were read in aggregate to corroborate the procedure; only facts that
  agreed across them (and with Drik Panchang) were used.
- **PKG-MANTRA** — this package's own hand-verified `src/mantras/` module, used
  for the per-puja japa mantras (`om-namo-narayanaya`, `om-shrim-mahalakshmyai-namah`,
  `om-gan-ganapataye-namah`, `om-namah-shivaya`, `om-ham-hanumate-namah`,
  `om-dum-durgayai-namah`).

---

## `upacharas.ts` — the 16-step Shodashopachara template

- **The 16 upacharas and their order** — corroborated by DP-SAT, DP-SHIVA,
  DP-GANESH, DP-DURGA, and HAF-16. The exact 16-slug enumeration (folding
  Dhyana+Avahana into one opening step and Neerajanam+Aarti into one closing
  step) follows the data shape of the mobile app's `pujas.ts`, designated the
  structural reference. The instruction `line` text is written fresh from the
  Drik Panchang step descriptions.
- **`STANDARD_PRE_ARC`** (purification, Sankalpa) — DP-SAT Vrat Pujan Vidhi.
- **`STANDARD_CLOSING_ARC`** — Pradakshina mantra (`यानि कानि च पापानि…`) and
  Kshama-prarthana mantra (`मन्त्रहीनं क्रियाहीनं…`): Devanagari from DP-SAT
  (the Pradakshina and Mantrapushpanjali steps). The Kshama-prarthana uses the
  deity-neutral vocative `सुरेश्वर` so it fits all seven pujas — see "Disagreements".

## `satyanarayan.ts`

- Deity (a form of Vishnu), when/why, samagri, 16-step sequence, Dhyana shloka —
  DP-SAT (English + Hindi) + WIKI. Japa mantra `ॐ नमो नारायणाय` from PKG-MANTRA.
- The Katha (five adhyayas) cross-checks against this package's own
  `kathas/satyanarayan/` module.

## `lakshmi-diwali.ts`

- When/why (Kartik Amavasya, Pradosh Kaal, sthira lagna), Lakshmi worshipped
  with Ganesha, kalash + Navagraha, the account-book worship — DP-LAKSHMI
  (English + Hindi) + WIKI (Diwali). Samagri — DP-LAKSHMI Samagri page.
- Japa mantra `ॐ श्रीं महालक्ष्म्यै नमः` from PKG-MANTRA.

## `ganesh.ts`

- When/why (Bhadrapada Shukla Chaturthi, madhyahna muhurat), Prana Pratishtha,
  16-step sequence, modak + durva, visarjana on Anant Chaturdashi — DP-GANESH
  (English + Hindi) + WIKI (Ganesh Chaturthi). DP-GANESH explicitly carries the
  twenty-one durva leaves.
- Japa mantra `ॐ गं गणपतये नमः` from PKG-MANTRA.
- The `वक्रतुण्ड महाकाय…` invocation shloka is a textually-invariant, ubiquitous
  Ganesha verse — see "Soft spots" for the sourcing note.

## `rudrabhishek.ts`

- The rite, the abhishek with the panchamrita-substance sequence, bilva patra,
  the Shri Rudram recitation — DP-SHIVA (English + Hindi, the multi-snana
  sequence) + WIKI ("Shri Rudram": Krishna Yajurveda, Taittiriya Samhita 4.5/4.7,
  Namakam + Chamakam) + RITUAL-REFS (corroborating the substances, the odd-count
  bilva, the Monday/Pradosh/Shravan/Shivaratri timing).
- Japa mantra `ॐ नमः शिवाय` from PKG-MANTRA. The Shri Rudram itself is **not**
  embedded — it is referenced via `stotraKathaRef`.

## `hanuman.ts`

- When/why (Tuesday, Saturday, Hanuman Jayanti and its regional dates), the
  sindoor-with-oil offering and the story behind it, the Chalisa + Sundarkand
  recitation, the naivedya — DP-HANUMAN (English + Hindi) + WIKI (Hanuman
  Jayanti, which carries the sindoor account).
- Japa mantra `ॐ हं हनुमते नमः` from PKG-MANTRA.

## `navagraha.ts`

- The nine grahas, the graha-shanti purpose, the mandala, the collective
  invocation, the navagraha homa with nine samidha — DP-NAVAGRAHA (English +
  Hindi) + RITUAL-REFS. `rosterDeity` is omitted: the Navagraha are not among the
  19-entry `Deity` roster; only Surya is, and the puja names the nine as text.
- Collective mantra `ॐ नवग्रहेभ्यो नमः` — see "Soft spots".

## `navratri-ghatasthapana.ts`

- The Ghatasthapana / Kalash Sthapana rite, the barley sowing, the akhand jyot,
  the 16-step worship, the nine-day continuation, visarjana on Vijayadashami —
  DP-DURGA (English + Hindi) + WIKI (Navaratri).
- Japa mantra `ॐ दुं दुर्गायै नमः` from PKG-MANTRA.

## Disagreements & how they were handled

1. **Satyanarayan — origin of the vrat.** Devotional tradition attributes the
   Katha to the Skanda Purana (Reva Khanda); WIKI describes a syncretic
   eastern-India history (Satya Pir). Both framings are carried in `variantNotes`.
2. **Kshama-prarthana vocative** — `जनार्दन` (DP-SAT, Vishnu-specific) /
   `सुरेश्वर` (generic) / `सुरेश्वरि` (the Devi). The shared closing arc uses the
   neutral `सुरेश्वर`. Pradakshina-mantra verb: `विनश्यन्तु` (DP-SAT) used over the
   `विनश्यन्ति` variant.
3. **Navagraha — shodashopachara vs dashopachara.** DP-NAVAGRAHA describes a
   ten-step (dashopachara) worship of the grahas. This module parameterises the
   16-step template (the task's structural requirement) and records the 10-step
   form in a `variantNote` — a difference of scale, not correctness.
4. **Ganesh — moon-sighting prohibition.** DP-GANESH carries the prohibition on
   viewing the moon on Ganesh Chaturthi; the WIKI Ganesh Chaturthi article did
   not surface it in the page fetched. It rests on DP-GANESH plus the
   well-known Puranic Syamantaka episode, and is carried as a `variantNote`
   (a belief), not as a step of the puja.

## Soft spots — could NOT be confidently corroborated

Phase 26.1 (caught at the review checkpoint and corrected):

1. **Satyanarayan — "most auspicious" Purnima list.** Kartik and Vaisakha are
   strongly attested; Shravan is commonly cited; "Jyeshtha" was dropped as
   uncorroborated. Read the trio as "commonly favoured," not canonical.
2. **Satyanarayan — prasad name.** Ingredients and the names sheera / panjiri /
   sinni-shirni are corroborated; the term "sapatha-bhog" (from the app's
   placeholder) could not be corroborated and was removed.
3. **Satyanarayan — the "sava" (1¼) measure** — omitted (not in fetched sources).
4. **Satyanarayan — the aarti incipit** — referred to generically, not quoted.
5. **Satyanarayan — named Katha characters** — omitted; they belong to the
   cross-referenced `kathas/satyanarayan/` module.
6. **Per-upachara shlokas.** Drik Panchang gives a long shloka for each of the 16
   upacharas of several pujas. The module deliberately does NOT carry all of
   them — the template steps carry instruction text, and each puja attaches only
   its signature mantra(s). Carrying all 16 × 7 would multiply un-reviewed
   transliteration; deferred unless a Sanskrit-reviewer pass is funded.

Phases 26.2–26.7:

7. **Ganesh — the `वक्रतुण्ड महाकाय` shloka.** This is a textually-invariant,
   ubiquitous Ganesha invocation; its Devanagari was included from general
   knowledge, not fetched verbatim from a specific page this session (unlike the
   Satyanarayan Dhyana shloka, which came verbatim from DP-SAT Hindi). It is
   `reviewPending: true` like every mantra and must be checked against a printed
   source in the reviewer pass.
8. **Ganesh — the count "twenty-one".** DP-GANESH confirms twenty-one durva
   sprigs; "twenty-one modak" is the commonly-associated customary number but is
   less uniformly attested — kept as "customarily twenty-one".
9. **Rudrabhishek — the extended abhishek substances.** The six-substance
   panchamrita sequence is DP-SHIVA-confirmed; the further substances (sugarcane
   juice, coconut water) and the "each substance brings a particular fruit"
   belief are common across RITUAL-REFS but the exact set varies — the content
   keeps them as a `variantNote` and marks the extra two `optional` in samagri.
10. **Rudrabhishek — the bilva mantra.** DP-SHIVA shows only an incipit
    (`बिल्वपत्रं सुवर्णेन…`); the full mantra was not confidently sourced, so it
    is **not embedded** — bilva is described in the step `line` instead.
11. **Navagraha — per-graha tables.** The direction, colour, grain, samidha,
    presiding deity, and individual mantra of each graha vary across traditions;
    no single cross-validated table was found, so per-graha tables are **not
    embedded**. The puja describes the mandala structure and uses the simple,
    unambiguous collective salutation `ॐ नवग्रहेभ्यो नमः` (the longer enumerated
    invocation also exists); a `variantNote` states the per-graha details follow
    the pandit's lineage.
12. **Navratri Ghatasthapana — the muhurat.** The content describes the muhurat
    only in general terms (the first portion of Pratipada and the midday are
    avoided; Abhijit is the common fallback; a panchang gives the window). The
    precise nakshatra/yoga exclusions are deliberately not asserted in the
    content — muhurat computation is out of this package's scope.
13. **Lakshmi (Diwali) — the sthira-lagna timing.** Carried from DP-LAKSHMI as a
    preference in a `variantNote`; the exact window is left to a panchang.

## Mantra-review debt — closed (2026-05-29)

This module carries **23 `PujaMantra` objects** across the 7 pujas (counting the
two shared closing-arc mantras once per puja that uses them). The Devanagari of
each is taken from a cited source (Drik Panchang Hindi vidhi pages, this
package's hand-verified `mantras/` module, or — for the `वक्रतुण्ड` shloka — a
ubiquitous invariant verse noted at soft-spot 7).

**IAST pass (2026-05-29).** `scripts/normalize-puja-navratri-iast.cjs` did two
things: (1) normalised the anusvāra from the mixed `ṁ`/`ṃ` the content shipped
with to the single project standard `ṃ` (the PLAN convention, and what the whole
Geeta corpus uses), and (2) verified each mantra's IAST is a faithful
transliteration of its Devanagari. Faithfulness is checked in
`scripts/audit-verify.cjs` by folding away the readability hyphens and sandhi
word-spacing the hand-authored IAST carries, then comparing against sanscript's
own Devanagari→IAST output — all 23 match exactly, **0 defects**. This is the
identical bar the shipped Geeta IAST meets, so `reviewPending` is **dropped** on
every `PujaMantra`. It is a mechanical transliteration check, not a Sanskritist's
hand-review of each diacritic; the `meaning` glosses (one-line context strings,
not verse translations) were already researched-and-cited in Phase 8 and are
unchanged. The `reviewPending` field was relaxed from a literal `true` to
optional `boolean` so a future unverified mantra can re-raise it.
