fix(rectification): keep range-card tie-break entry honest after D9/D10 answers (BUG-666~668)
Independent Staging Quality Gate / validate (push) Successful in 13m8s
Independent Staging Quality Gate / publish (push) Canceled after 9m59s

Hide the button once both personality cards are answered, persist the second card in the same opt-in round, and freeze Skill 10.0.26.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Jesse_Chen
2026-09-13 22:45:31 +08:00
co-authored by Cursor
parent 192845ce2f
commit 9912760104
44 changed files with 1046 additions and 184 deletions
+6 -15
View File
@@ -626,26 +626,17 @@ def _union_boundary_dates(
left_vim_key = (*_vim_cache_key(birth_date, left_moon, lo, hi), include_pratyantar)
right_vim_key = (*_vim_cache_key(birth_date, right_moon, lo, hi), include_pratyantar)
if left_vim_key not in vim_cache:
vim_cache[left_vim_key] = (
_vim_start_dates(
birth_date, left_moon, lo, hi, include_pratyantar=True,
)
if include_pratyantar
else _vim_start_dates(birth_date, left_moon, lo, hi)
vim_cache[left_vim_key] = _vim_start_dates(
birth_date, left_moon, lo, hi, include_pratyantar=include_pratyantar,
)
if right_vim_key not in vim_cache:
vim_cache[right_vim_key] = (
_vim_start_dates(
birth_date, right_moon, lo, hi, include_pratyantar=True,
)
if include_pratyantar
else _vim_start_dates(birth_date, right_moon, lo, hi)
vim_cache[right_vim_key] = _vim_start_dates(
birth_date, right_moon, lo, hi, include_pratyantar=include_pratyantar,
)
window_kw = {} if threshold == MIN_BOUNDARY_DAYS else {"min_days": threshold}
windows = list(_boundary_windows(
vim_cache[left_vim_key],
vim_cache[right_vim_key],
**window_kw,
min_days=threshold,
))
layers: list[str | None] = [None]
if varga_narayana:
@@ -681,7 +672,7 @@ def _union_boundary_dates(
windows.extend(_boundary_windows(
left_narayana,
right_narayana,
**window_kw,
min_days=threshold,
))
for item in windows:
dates_by_key.setdefault((item.year, item.month), item)