fix(yoga): Neecha Bhanga lists the conditions that hold, never Raja Yoga (T8, BUG-1205)
Astrologer ruling 乙14. One condition source, yogas_doshas.calc_nicha_bhanga_raj_yoga (conditions A-F, now also structured). New scripts/main_yoga_detectors.py turns it into yoga_engine-shaped rows (zh + en twins) that YogaEngine.detect appends; the four neechabhanga_* rules are reference_only (kept, renamed, not evaluated). Card: traditional_yogas canonical 落陷取消(Neecha Bhanga) with 成立条件; compact yoga entries keep conditions/reductions. Report: category 落陷取消, mixed group, not raja; personal-report alias neecha_bhanga -> special. Changed assertion (test_consultation_yoga_detection_merge): canonical name 'Neecha Bhanga Raja Yoga' -> '落陷取消(Neecha Bhanga)' (ruling 乙14). Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
0cf2249e6b
commit
df21e591e8
@@ -1163,7 +1163,9 @@ function safeDomainLabel(value: unknown): string | null {
|
||||
}
|
||||
|
||||
const YOGA_CATEGORY_ALIASES: Readonly<Record<string, ReportYogaCategory>> = {
|
||||
raja: "raja", raja_yoga: "raja", neecha_bhanga: "raja",
|
||||
raja: "raja", raja_yoga: "raja",
|
||||
// BUG-1205 (乙14): a Neecha Bhanga lists its conditions and is not a raja yoga.
|
||||
neecha_bhanga: "special",
|
||||
dhana: "dhana", dhana_yoga: "dhana", wealth: "dhana",
|
||||
mahapurusha: "mahapurusha", pancha_mahapurusha: "mahapurusha",
|
||||
nabhasa: "nabhasa",
|
||||
|
||||
Reference in New Issue
Block a user