686 Commits
Author SHA1 Message Date
Jesse_ChenandClaude Opus 5.5 5cc8e50458 docs(tasks): consult card brief finalised (all decisions confirmed)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-07 16:21:53 +08:00
Jesse_ChenandClaude Opus 5.5 0cdb1c42d4 docs(tasks): sync6 upstream fixes, full-data report edition, consult card from the report packet
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-07 16:01:45 +08:00
Jesse_ChenandClaude Opus 5.5 11333460fa docs(tasks): Claude acceptance of rectification-in-chat step 1; note one missing three-column comment
Independent Staging Quality Gate / validate (push) Successful in 12m39s
Independent Staging Quality Gate / publish (push) Successful in 3m33s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-07 13:05:04 +08:00
Jesse_ChenandClaude Opus 5.5 6ad0bea320 feat(rectification): start from an offer card in the consultation, come back to it (BUG-1247~1251)
TASK-rectification-in-chat-step1-20261006, direct execution.

- The homepage 生时校正 pill and the text trigger (isRectificationHandoffQuestion)
  are gone. The consult agent decides (RECTIFICATION_OFFER_RULE, one
  definition) and calls offer-birth-time-rectification; the server decides
  whether a card may show (self, product on, no case in progress,
  feature_pricing price). The offer is stored with the answer and travels on
  run.completed; the card hangs under that answer.
- Opening from the card binds the offer to the case in the consultation's own
  messages (no table change); GET/POST /api/rectification/cases/[caseId]/source
  find the source and go back: one divider (time changed or not), earlier
  answers captioned 按校正前的时间, and a 按新时间重新看 button that sends only
  when clicked. Auto-return after the post-adopt check or a terminal case, only
  for work done in this view.
- Model history skips the divider and notes answers written with the old time.

Full suite 4987 / fail 24, identical to 6ec8efd5 (4973 / 24), no test name
lost; tsc 0; lint 0 errors; build keeps / Static, first-load gzip +0.20%.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-07 12:58:58 +08:00
Jesse_ChenandClaude Opus 5.5 6ec8efd5d2 feat(rectification): server-written lines in the same warm voice (BUG-1258)
Independent Staging Quality Gate / validate (push) Successful in 13m22s
Independent Staging Quality Gate / publish (push) Successful in 3m42s
About 30 fixed rectification lines lose the receipt tone: no 「已记录。」
openings (收到 when the range holds, 好 when it moves), 麻烦 instead of 请,
时间 instead of 候选 in what the user reads, and no 「新建对话」 after
adoption. Numbers, clocks, ranges and the honesty boundaries are unchanged.
CHOICE_ACK_RE also recognises the new acknowledgements, so a model sentence
that repeats one is still dropped; the delivery guard matches the delivery
sentence by containment and does not depend on the opening.

Full suite 4973 / fail 24, identical to 61d6f248; build keeps / Static.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-07 11:39:34 +08:00
Jesse_ChenandClaude Opus 5.5 61d6f248e4 feat(rectification): warm older-sister voice; opening and read-only turns get only the Skill sections they use (BUG-1257)
Independent Staging Quality Gate / validate (push) Successful in 13m45s
Independent Staging Quality Gate / publish (push) Successful in 3m34s
Both rectification prompts now share RECTIFICATION_VOICE_HEAD, the same warm
voice as the consultation answer (no mind-reading here: these turns collect
facts). Opening and read-only turns used to send the whole bound Skill (11,812
characters for 10.0.33); they now send the sections they act on, plus the
product-identity section when the bound Skill has it. 9.0.0 still goes out
whole (BUG-621). Rule bodies, scoring, cards and adoption are unchanged.

Opening input 7,433 -> 3,892 tokens in a DeepSeek replay. Full suite 4970 /
fail 24, identical to c76fdda7; build keeps / Static.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-07 11:08:25 +08:00
Jesse_ChenandClaude Opus 5.5 c76fdda7ab refactor(consult): chat binds the method's truth boundaries, not the engine manual (BUG-1256 step 2)
Independent Staging Quality Gate / validate (push) Successful in 14m35s
Independent Staging Quality Gate / publish (push) Successful in 3m37s
The method block bound into every chat turn quoted most of SKILL.md (benchmark
scores, CLI flags, oracle queues, file paths) plus the shared method, whose
output contract asks for JSON verdicts, A/B/C/D confidence, audit tables, raw
data and web verification - the opposite of the chat shape. Chat now quotes
only the truth-boundary sections and adds CHAT_METHOD_BOUNDARIES for the
limits from the dropped sections it still has to keep. SKILL.md and the shared
method file are unchanged for reports and skill_read.

Natal system prompt 55,242 -> 26,591 characters. DeepSeek A/B on public
golden charts (flash 10 questions): input 24,560 -> 14,025 tokens, 37.8 ->
30.3 s, no regression in automatic checks or reading; a high-rigor request
still says plainly that no external check was done. Full suite 4970 / fail
24, identical to b8385adb; build keeps / Static.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-07 08:48:04 +08:00
Jesse_ChenandClaude Opus 5.5 b8385adbfe feat(consult): warm older-sister voice; read feelings within three rules (BUG-1255)
Independent Staging Quality Gate / validate (push) Successful in 14m48s
Independent Staging Quality Gate / publish (push) Successful in 3m29s
Product 2026-10-07: the answer voice becomes a knowing, gentle older sister,
matching the homepage greeting, and may read feelings: after the answer, one
sentence, with 可能 / 多半, never a guess stated as fact or a question
rewritten into a need; another person's feelings need chart evidence and only
on an unafflicted line (afflicted lines keep the range rule, BUG-1182).
Overturns the feelings part of BUG-1070.

Also removes rules that contradicted the answer shape: 'restate the same
constraint', the rectification 'say progress' line, 'answer concisely', and
'every time say what to do' (now only when things are hard).

Full suite 4969 / fail 24, identical to 52d14e8f; tsc 0; lint 0 errors;
build keeps / Static, first-load gzip unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-07 07:53:39 +08:00
Jesse_ChenandClaude Opus 5.5 52d14e8fef fix(test): wait for a PostgreSQL fixture slot while the queue moves (BUG-1254)
Independent Staging Quality Gate / validate (push) Successful in 14m10s
Independent Staging Quality Gate / publish (push) Successful in 4m3s
The slot wait was a fixed 5 minutes from the moment a file started queueing.
With 46 fixture files sharing 2 slots the queue outlasted that, so whichever
file came last failed the gate at random (runs 1742 and 1746). The deadline
now restarts whenever a slot changes hands; only 10 minutes with no slot
changing hands (a hung holder) fails. The 2-slot cap from BUG-281 stays.

Full suite 4967 / fail 24, identical to 171a3f25; tsc 0; lint 0 errors.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-06 23:21:48 +08:00
Jesse_ChenandClaude Opus 5.5 171a3f25ac fix(consult): plain wrapping for answer prose; stop reading the analysis checklist aloud
Independent Staging Quality Gate / publish (push) Canceled after 0s
Independent Staging Quality Gate / validate (push) Canceled after 12m33s
BUG-1252: answer prose drops text-wrap: pretty. WebKit (every iPhone browser)
applies it to the whole paragraph, so lines came out evenly short with a blank
strip on the right and every streamed character re-broke the lines above.

BUG-1253: the condensed checklists and shared reading open with an
analysis-only note; PLAIN_SPEECH_RULE (one definition) tells the writer not to
quote layer names, signal counts, rules or house-counting, caps evidence in
brackets at two, and gives everyday words for card fields with no Chinese name
(no coined names like 合力星). Marriage layers become everyday wording; career,
wealth and health say not to announce layers.

Full suite 4966 / fail 24, identical to baseline d2c22ca2 (4962 / 24); build
keeps / Static; first-load gzip unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-06 20:19:50 +08:00
Jesse_ChenandClaude Opus 5.5 a2bc9f6726 docs(tasks): brief for rectification in chat, step 1 (BUG-1247~1251)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-06 16:17:29 +08:00
Jesse_ChenandClaude Opus 5.5 e62d0a3257 fix(rectification): match the delivery inside the acknowledged reply (BUG-1241)
Independent Staging Quality Gate / validate (push) Successful in 14m30s
Independent Staging Quality Gate / publish (push) Successful in 3m52s
The answered choice persists the acknowledgement, a blank line, and the
rewritten delivery. The exit fill-in required equality and wrote the
deterministic delivery again. Check containment instead, and pin it on the
real answer path. The suspected widen staleness regression did not hold;
keep a guard test.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-06 16:14:24 +08:00
jesse-uxandJesse_Chen 5a589a9058 fix(consult): write the first turn as chat, not a sectioned report
Ordinary consult first turns drop Markdown headings and the required
action list. People are named in the paragraph, and pinned examples no
longer contain copyable advice. BUG-1244, BUG-1245.
2026-10-06 15:58:40 +08:00
Jesse_ChenandClaude Opus 5.5 2799c53ce0 docs(tasks): acceptance fix sheet for duplicate delivery and widen staleness (BUG-1241, BUG-1246)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-06 13:57:36 +08:00
Jesse_ChenandClaude Opus 5.5 4ecf8ee556 docs(tasks): acceptance fix sheet for conversational first-turn answers (BUG-1244)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-06 13:49:35 +08:00
Jesse_ChenandClaude Opus 5.5 86cafe6845 docs(tasks): brief for conversational first-turn answers (BUG-1244~1245)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-06 12:45:46 +08:00
Jesse_ChenandClaude Opus 5.5 65b61ed523 docs(tasks): brief for duplicate delivery turn and refused adoption (BUG-1241~1243)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-06 11:52:09 +08:00
Jesse_ChenandClaude Opus 5.5 e3f3a1fcde docs(research): accept nadi second-level falsification study (BUG-1240)
Independent Staging Quality Gate / validate (push) Successful in 26m35s
Independent Staging Quality Gate / publish (push) Successful in 4m3s
Normalize results JSON to LF (content identical to the Windows run),
add close-ayanamsa N4 supplement, record acceptance.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-05 23:26:20 +08:00
jesse-uxandJesse_Chen 9abf2da5f9 research(rectification): nadi second-level study fails the preregistered gates (BUG-1240)
N1, N2, N3, and N5 do not pass. Switching ayanamsa moves level-5 lords and
equal-division D150 past the 20% wording line. Two full runs are byte-identical.
No production scoring change. closed_by_design.
2026-10-05 23:26:13 +08:00
jesse-uxandJesse_Chen c40f23c20e research(rectification): nadi second-level study helpers and N0 checks (BUG-1240)
Five-level Vimshottari and equal-division D150 helpers, plus a runner that
refuses to score until the preregistration file exists. First three lords
match the production chain on the v5 events. No production files changed.
2026-10-05 23:26:05 +08:00
Jesse_ChenandClaude Opus 5.5 45ec6e55a1 docs(tasks): accept consult latency quickwins (BUG-1231/1232)
Independent Staging Quality Gate / validate (push) Successful in 14m12s
Independent Staging Quality Gate / publish (push) Successful in 3m38s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-05 08:38:12 +08:00
jesse-ux 137ed6f408 fix(consult): stop the consult-gate VedAstro wait and record step timing
Consult turns reuse a same-day official snapshot inside the rectification gate, or record deferred_in_consultation instead of starting another 4-second snapshot. Classification, step 0, step 1, and the time to the first answer character go into the existing usage metadata and a new admin usage column.

BUG-1231, BUG-1232
2026-10-05 02:33:36 +08:00
Jesse_ChenandClaude Opus 5.5 4c64733f91 docs(tasks): nadi second-level rectification falsification research brief (BUG-1240)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-05 00:31:23 +08:00
Jesse_ChenandClaude Opus 5.5 853772bcea docs(tasks): consult latency quick wins (no 4s VedAstro wait in consult gate; per-step timing)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-05 00:24:25 +08:00
jesse-ux 2c64b66423 fix(gate): keep quality-gate logs readable (BUG-1230)
Summarize successful steps, print the failing check and error text,
and split the validate job into seven steps. Local npm test stays TAP.
2026-10-04 22:58:17 +08:00
Jesse_ChenandClaude Opus 5.5 06bfae92d8 docs(tasks): gate log volume (quality-gate summary, CI test reporter, split validate step)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-04 21:58:34 +08:00
Jesse_ChenandCursor baf4ae8b34 feat(narayana-rath): follow book p.43 for dual lords and node years (BUG-1227~1229)
Independent Staging Quality Gate / validate (push) Failing after 16m17s
Independent Staging Quality Gate / publish (push) Skipped
Round-7 option A is text-first, so Scorpio and Aquarius lords, the Ketu-only degree reversal, and node exaltation years now live in the Rath display layer. Scoring files stay unchanged.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-04 18:37:34 +08:00
Jesse_ChenandClaude Opus 5.5 64c652eea2 docs(tasks): astrologer rulings batch 6 (round-7: p.43 dual lord option A, only-Ketu reverse degree, node year +/-1); round-7 reply filed
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-04 11:14:49 +08:00
Jesse_ChenandClaude Opus 5.5 92c78d4e82 docs: astrologer rulings batch 5 records (BUG-1223~1227; T1 p.43 dual lord blocked by red line; T6 v5 re-run)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-04 08:39:53 +08:00
Jesse_ChenandClaude Opus 5.5 77645ce25f docs(tasks): astrologer rulings batch 5 (round-6: Rath dual lord, node dignity, AD direction; year lord no fallback; v5 re-trial)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-04 07:15:48 +08:00
Jesse_ChenandClaude Opus 5.5 98352da765 docs: batch 4 records (BUG-1221/1222 progress, changelog, index, blocked)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-03 23:37:44 +08:00
Jesse_ChenandClaude Opus 5.5 8ca06c4f20 docs(tasks): batch 4 (Rath MD on all domain cards with 12.5K budget; annual strength table five-fold)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-03 22:41:46 +08:00
Jesse_ChenandClaude Opus 5.5 0ca0da05ee docs: BUG-1220 deployed to staging 01929bae
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-03 22:37:22 +08:00
Jesse_ChenandClaude Opus 5.5 01929baea6 fix(solar-return): return instant in the solver's frame, annual chart keeps seconds (BUG-1220)
Independent Staging Quality Gate / validate (push) Successful in 20m3s
Independent Staging Quality Gate / publish (push) Successful in 4m2s
The natal Sun target came from compute_chart_data while the solver iterates
on _get_sun_lon_jd (swe sidereal flags); the frames differ by up to ~17",
moving the return by up to ~7 minutes. The annual chart was also cast at the
truncated minute. Ports upstream yinduzhanxing 7cc6425d / 46ed9399 (these two
hunks only). PyJHora reference: 3 cases within 0.03 min. 243 public-figure
annual charts: annual Lagna changes 13, year lord 11, Mudda first lord 0.
v5 77 cases identical to 3c27c38e; consult goldens re-captured byte-identical.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-03 22:10:20 +08:00
Jesse_ChenandClaude Opus 5.5 3c27c38e46 docs(tasks): batch-3 acceptance notes; batch 1/2 README status deployed
Independent Staging Quality Gate / validate (push) Successful in 15m7s
Independent Staging Quality Gate / publish (push) Successful in 4m1s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-03 21:17:43 +08:00
Jesse_ChenandClaude Opus 5.5 a1da24a60c docs: batch 3 records after T4/T5 (red line 3 revised, Rath shown alongside, v5 trial results)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-03 21:09:48 +08:00
Jesse_ChenandClaude Opus 5.5 3264831a23 docs: astrologer rulings batch 3 records (BUG-1216..1219, PROGRESS, CHANGELOG, BLOCKED, T5 note)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-03 21:09:40 +08:00
Jesse_ChenandClaude Opus 5.5 59bb7da385 docs(tasks): batch-3 red line 3 revised (Table 18 book contradiction); solar-return frame fix confirmed after batch 3
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-03 19:59:47 +08:00
Jesse_ChenandClaude Opus 5.5 da95d92db2 docs(research): shared-engine reuse audit (Narayana/Tajika/annual return) + task brief for solar-return frame fix
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-03 19:45:39 +08:00
Jesse_ChenandClaude Opus 5.5 ac588172a1 docs(tasks): astrologer rulings batch 3 (Mudda from birth nakshatra, Tajika five-fold PVB, Rath Narayana redo)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-03 19:03:50 +08:00
Jesse_ChenandClaude Opus 5.5 e31c2064b4 docs: astrologer rulings batch 2 records (BUG-1213..1215, PROGRESS, CHANGELOG, BLOCKED, T5 note)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-03 17:19:03 +08:00
Jesse_ChenandClaude Opus 5.5 52b3061fe5 docs(tasks): astrologer rulings batch 2 (D9 modifier, Tajika panchadhikari, Narayana Rath profile + trial)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-03 16:15:05 +08:00
Jesse_ChenandClaude Opus 5.5 57c56dbb8e docs: astrologer rulings batch 1 records (BUG-1204..1212, CHANGELOG, PROGRESS, BLOCKED)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-03 15:14:24 +08:00
Jesse_ChenandClaude Opus 5.5 d0233e3c37 docs(tasks): astrologer rulings batch 1 (pancha/kemadruma single detector, shadbala/bhava bala, nodes own sign, karaka-8 order, AV sodhana, neecha bhanga, tajika label)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-03 09:35:03 +08:00
Jesse_ChenandClaude Opus 5.5 e6f13e37e3 docs: report/chart blank columns deployed to staging ae18952e (BUG-1199..1203)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-03 09:33:22 +08:00
Jesse_ChenandClaude Opus 5.5 ae18952e51 fix(report,chart): blank columns — drop Kranti, split Ashtakavarga house SAV, ascendant nakshatra, engine varga dignity, no duplicate charts (BUG-1199..1203)
Independent Staging Quality Gate / validate (push) Successful in 15m27s
Independent Staging Quality Gate / publish (push) Successful in 3m42s
- Report p33 table: no Kranti column (no producer; materials.kranti stays blocked).
- Report p53 table: the "SAV" column was the with-Lagna total (386). Split in the
  reader into SAV / Lagna BAV / SAV + Lagna with a totals row; ashtakavarga.py is
  untouched (frozen rectification identity, ERR-115).
- /api/chart ascendant carries nakshatra / pada / lord (_nakshatra_fields shared with
  the nine bodies); chart cache schema 4 -> 5.
- /api/varga_full bodies carry dignity_level from varga_dignity_level, the function
  the Vimsopaka path now shares (A/B identical); the chart page shows the D1 status
  wording and no longer derives a three-level dignity itself.
- Report page draws each chart once: the trailing block skips charts the body already
  fenced (same rule as the export); the birth-time caveat moves under the body's
  chart heading.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-03 09:11:15 +08:00
Jesse_ChenandClaude Opus 5.5 3bbc2daab1 docs(tasks): report/chart blank columns — Kranti, Ashtakavarga house table, ascendant nakshatra, varga dignity, duplicate charts
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
2026-10-03 08:32:33 +08:00
Jesse_ChenandClaude Opus 5.5 8c55d4dcfb docs: upstream sync 5 records — BUG-1192..1198, CHANGELOG, progress, backtest round 7
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-03 01:06:29 +08:00
Jesse_ChenandClaude Opus 5.5 677d40f991 docs(tasks): upstream sync round 5 + rectification minimum 4 events / 3 domains
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-02 23:38:15 +08:00
Jesse_ChenandClaude Opus 5.5 ae74706e40 docs: upstream sync 4 — BUG-1183~1191, CHANGELOG, progress, task index, backtest round 6
Progress lists the delivery per item, F3 locations, the ERR-110 re-freeze
without a version bump (scores unchanged), the v5 evaluation (byte-identical
at a18f8d4e, bc9b9f89 and 0176cb30), upstream commits after 0a6696c5 not
taken and why, the Kemadruma difference from upstream, and open questions.
Backtest round 6 (86 answers read and scored): parents / requests / banned
phrases unchanged; career type conflict 5 -> 9 / 18, still failing the line.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4f2nya58RoRu4yEmJgRGE
2026-10-02 15:09:51 +08:00