Commit Graph
2266 Commits
Author SHA1 Message Date
Jesse_ChenandCursor ab1ade59b7 fix(rectification): emit finer dated probes on refresh only (BUG-664/665)
Independent Staging Quality Gate / validate (push) Successful in 10m11s
Independent Staging Quality Gate / publish (push) Successful in 7m26s
After six dated answers, refresh can use 30-day same-year windows plus pratyantar and D9/D10 Narayana. First-round probe rules stay at 45 days.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-13 18:19:46 +08:00
Jesse_ChenandCursor 530f260f76 fix(rectification): ask remaining split lines one card at a time (BUG-661~663)
Independent Staging Quality Gate / validate (push) Successful in 12m9s
Independent Staging Quality Gate / publish (push) Successful in 2m17s
Dated-pool empty now yields existence cards per remaining layer, leftover-candidate copy, and an optional D9/D10 tie-break on the range card. Skill 10.0.25.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-13 16:50:25 +08:00
Jesse_ChenandCursor b063c66835 docs(research): measure dated probe supply after six answers
Independent Staging Quality Gate / validate (push) Successful in 11m55s
Independent Staging Quality Gate / publish (push) Successful in 8m53s
Offline holdout replay shows refresh-only R3+R4 add discriminative dated probes; R1/R2 do not meet the gate.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-13 12:59:46 +08:00
Jesse_ChenandClaude Fable 5.1 da048676ba docs(tasks): targeted collect cards brief (BUG-661~663) and probe-supply research brief after product decision
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-13 04:10:38 +00:00
Jesse_ChenandClaude Fable 5.1 4e93ca1587 docs(tasks): decision draft for narrowing after dated probe pool is empty (A/B/C/D options)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-13 04:04:11 +00:00
Jesse_ChenandCursor 5d54d0597d test(rectification): lock failReceipt engine_message for compare failures
Independent Staging Quality Gate / validate (push) Successful in 12m27s
Independent Staging Quality Gate / publish (push) Successful in 7m46s
BUG-659 moved compare tool_failed fingerprints into failReceipt; keep the
source lock on the shared helper so the staging gate still requires a
redacted engine_message.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-13 11:03:20 +08:00
Jesse_ChenandCursor 073a45b73e fix(rectification): keep set-focus idempotent and record tool failures (BUG-659/660)
Independent Staging Quality Gate / validate (push) Failing after 13m36s
Independent Staging Quality Gate / publish (push) Skipped
Same-id focus returns instead of making the model retry; kind_hint targetKind is ignored. Failed receipts keep a redacted original error and known codes. Host fallback recap no longer duplicates dates.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-13 00:23:11 +08:00
Jesse_ChenandClaude Fable 5.1 fb18f72f0d docs(tasks): set-focus tool_failed brief (BUG-659/660); mark BUG-656~658 fix as deployed
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-12 13:18:14 +00:00
Jesse_ChenandCursor 529fcc097f fix(rectification): keep invite collect CHECK-legal after kind mapping (BUG-656)
Independent Staging Quality Gate / validate (push) Successful in 9m14s
Independent Staging Quality Gate / publish (push) Successful in 2m12s
Full TAP failed because invite_more is not a target_kind enum value, and
exhaustion re-decide after skipped targeted persist must reuse decideAfterInferenceChange.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-12 06:34:35 +08:00
Jesse_ChenandCursor eae049d0ea fix(rectification): persist refresh attempts and map collect focus kinds (BUG-656/657/658)
Independent Staging Quality Gate / validate (push) Failing after 13m28s
Independent Staging Quality Gate / publish (push) Skipped
Empty engine refresh now records an already_answered attempt so GET can leave wait-to-narrow; collect kinds map onto the table CHECK; remaining candidates drive probe refresh.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-12 06:09:20 +08:00
Jesse_ChenandClaude Fable 5.1 2b6d28e7a7 docs(tasks): index 09-11 rectification briefs; fix brief for BUG-656~658 after reviewing 512be9b7
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-11 21:30:34 +00:00
Jesse_ChenandCursor e59dd47cdf docs: record BUG-655 fix SHA 512be9b7
Independent Staging Quality Gate / validate (push) Successful in 14m28s
Independent Staging Quality Gate / publish (push) Successful in 12m52s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-12 01:53:25 +08:00
Jesse_ChenandCursor 512be9b76e fix(rectification): persist refreshed probes only when the engine has new questions (BUG-655)
Empty refreshes were writing inference rows, and GET-selected probe keys could miss inference_state, so persist rejected the next card.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-12 01:51:57 +08:00
Jesse_ChenandCursor 6c9a089620 fix(rectification): refresh remaining probes and targeted collect before delivering range (BUG-653/654)
Independent Staging Quality Gate / validate (push) Successful in 13m54s
Independent Staging Quality Gate / publish (push) Successful in 10m50s
Dated-choice exhaustion is not convergence. Refresh probes from remaining
active candidates, then ask a targeted collect, then deliver. Skill 10.0.24.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 18:28:39 +08:00
Jesse_ChenandCursor 9941c34d4b docs: record BUG-651 gate follow-up SHA f870d3d7
Independent Staging Quality Gate / validate (push) Successful in 10m6s
Independent Staging Quality Gate / publish (push) Successful in 16m23s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 15:23:27 +08:00
Jesse_ChenandCursor f870d3d757 fix(rectification): keep dated precision cards after empty dated discriminator pool (BUG-651)
Staging gate 2558 failed because leftover tests still expected D9/D10 or leftover collect after the pool emptied. Discriminate sessions still deliver; dated precision cards still ask.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 15:22:55 +08:00
Jesse_ChenandCursor 035865d4c1 docs: record BUG-651/652 fix SHA 66f63c76
Independent Staging Quality Gate / validate (push) Failing after 13m47s
Independent Staging Quality Gate / publish (push) Skipped
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 14:34:46 +08:00
Jesse_ChenandCursor 66f63c7643 fix(rectification): deliver range when dated discriminator pool is empty (BUG-651/652)
When dated choice probes are exhausted after the training gate, stop treating yearless D9/D10 cards as the next discriminator and persist a range carrier in the same answer transaction.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 14:33:39 +08:00
Jesse_ChenandCursor 1fa994ea63 fix(rectification): keep dated occupation answers scoreable (BUG-649/650)
Independent Staging Quality Gate / validate (push) Successful in 13m26s
Independent Staging Quality Gate / publish (push) Successful in 9m33s
Occupation collect was wiping year-month into an unscored note, and idle gap copy never joined the evidence turn.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 11:49:52 +08:00
Jesse_ChenandCursor e36bda53fc docs: record BUG-646–648 fix SHA dd8f35f7
Independent Staging Quality Gate / validate (push) Failing after 35s
Independent Staging Quality Gate / publish (push) Has been skipped
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 01:44:39 +08:00
Jesse_ChenandCursor dd8f35f7ba fix(rectification): invite-first collect, holdout at 4 events, Skill 10.0.23 (BUG-646–648)
Stop domain-wheel collecting and age-band years in prompts. Ask until the training gate, then discriminate until convergence, then deliver a range plus a concrete follow-up. Reserve holdout only with four dated events.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 01:43:02 +08:00
Jesse_ChenandClaude Fable 5.1 cb04529728 docs(tasks): collection redesign v2 — threshold-driven stops, no provisional result
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-10 15:12:06 +00:00
Jesse_ChenandClaude Fable 5.1 98bc79fae4 docs(tasks): collection-flow redesign brief (BUG-646~648); supersede exhausted-gate brief
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-10 15:06:58 +00:00
Jesse_ChenandClaude Fable 5.1 3cd7a95d58 docs(tasks): exhausted-gate exit brief (BUG-646/647)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-10 14:57:16 +00:00
Jesse_ChenandCursor fff6da6875 docs: record BUG-641–643 fix SHA 52db714b
Independent Staging Quality Gate / validate (push) Successful in 10m32s
Independent Staging Quality Gate / publish (push) Successful in 35m25s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 21:54:17 +08:00
Jesse_ChenandCursor 52db714ba9 fix(rectification): equal-weight collect, year-cue questions, classifier no/unsure (BUG-641–643)
Ask finance and health like other domains, put year-cued collect questions first, and let the classifier distinguish decline vs skip. Skill 10.0.22.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 21:53:10 +08:00
Jesse_ChenandCursor 71eaeb2e8b docs(tasks): mark BUG-644/645 ready for review after merging staging
Independent Staging Quality Gate / validate (push) Successful in 31m33s
Independent Staging Quality Gate / publish (push) Has been cancelled
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 21:06:55 +08:00
Jesse_Chen 59075da783 merge origin/staging: docs acceptance of BUG-635~640 2026-09-10 21:06:10 +08:00
Jesse_ChenandCursor 119d7a8a4f docs: record BUG-644/645 fix SHA a3a51c32
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 21:04:20 +08:00
Jesse_ChenandCursor a3a51c32c2 fix(rectification): re-ask superseded collect ids instead of fake delivery (BUG-644/645)
A superseded collect row still occupied the unique question id, so the last
"没有" skipped the unasked domain and spoke delivery copy while can_adopt stayed false.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 21:03:12 +08:00
Jesse_ChenandClaude Fable 5.1 cd688add93 docs(tasks): acceptance of BUG-635~640; fold expectedWrite yes-mapping gap into collect-semantics brief
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-10 12:51:27 +00:00
Jesse_ChenandClaude Fable 5.1 d40f2032fc docs(tasks): rebase baselines after BUG-635~640 landed
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-10 12:42:01 +00:00
Jesse_ChenandClaude Fable 5.1 82eb3b79f2 docs(tasks): superseded collect focus dead-end brief (BUG-644/645)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-10 12:41:03 +00:00
Jesse_ChenandCursor 8f9eb58738 fix(rectification): give persist-first-sentence fixture a completed batch (BUG-635)
Independent Staging Quality Gate / validate (push) Successful in 9m47s
Independent Staging Quality Gate / publish (push) Successful in 8m55s
The staging gate failed because that case claimed 记下了 without a write tool, which the unwritten-evidence guard now rejects.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 18:11:25 +08:00
Jesse_ChenandCursor a1db6fe550 fix(rectification): feed cluster span into confirmation-gate refresh paths
Independent Staging Quality Gate / validate (push) Failing after 9m55s
Independent Staging Quality Gate / publish (push) Has been skipped
Representative minutes still undercounted width on dossier refresh and parsed snapshots even after the engine used cluster coverage.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 17:51:07 +08:00
Jesse_ChenandCursor a998b6ec53 fix(rectification): stop unwritten-evidence claims and same-cluster dasha false conflicts (BUG-635–640)
Independent Staging Quality Gate / validate (push) Has been cancelled
Independent Staging Quality Gate / publish (push) Has been cancelled
Host only says 记下了 after a real write; Mastra schema rejections fail closed. Ledger year keys no longer drop quality probes, dual-dasha agreement is per cluster, width uses cluster span, and public house tables follow the inference minute.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 17:38:37 +08:00
Jesse_ChenandClaude Fable 5.1 301827ad59 docs(tasks): collect-semantics brief (BUG-641~643); drop regex fallback from BUG-635 brief
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-10 06:26:47 +00:00
Jesse_ChenandClaude Fable 5.1 84572c079d docs(tasks): latent-defect audit brief for rectification (BUG-637~640)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-10 06:14:37 +00:00
Jesse_ChenandClaude Fable 5.1 a15fc3efbe docs(tasks): brief for unwritten evidence claim dead-end (BUG-635/636)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-10 06:03:06 +00:00
Jesse_ChenandCursor d96b24c276 fix(rectification): keep skipped health out of holdout and repair empty exits (BUG-626, BUG-627)
Independent Staging Quality Gate / validate (push) Successful in 12m11s
Independent Staging Quality Gate / publish (push) Successful in 7m54s
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 11:59:47 +08:00
Jesse_ChenandCursor 0263658477 fix(rectification): host-fallback empty evidence turns and choice range narration (BUG-633, BUG-634)
Evidence turns that already recorded a batch no longer fail the whole run when the model emits no text; unchanged ranges now name which clock spans lead or lag, and the timeline no longer says 收窄.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 11:57:07 +08:00
Jesse_ChenandClaude Fable 5.1 31f2a722aa docs(tasks): brief BUG-633/634 evidence-turn empty answer and choice narration
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-10 02:18:24 +00:00
Jesse_ChenandCursor 719ff55a09 fix(rectification): keep clock-stamped events out of window intercept (BUG-631, BUG-632)
Independent Staging Quality Gate / validate (push) Successful in 12m36s
Independent Staging Quality Gate / publish (push) Successful in 2m11s
Dated life events with clock times were swallowed as birth-window replies, and compare columns still stopped at the first nine candidates after the hour-window cap.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 09:23:35 +08:00
Jesse_ChenandClaude Fable 5.1 2de2aa0b71 docs(tasks): accept BUG-612/613, 614/615, 621, 623~625, 629 on fef54b6e; followups brief (BUG-631/632)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-09 16:55:57 +00:00
Jesse_ChenandCursor fef54b6e42 fix(rectification): downgrade yearless personality probes to tie-breakers (BUG-629)
Independent Staging Quality Gate / validate (push) Successful in 11m54s
Independent Staging Quality Gate / publish (push) Successful in 8m14s
Ask dated dasha probes first; D9/D10 and nakshatra wait until that pool is empty, score at half weight, and never eliminate. Skill 10.0.21.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 00:26:58 +08:00
Jesse_ChenandCursor eb8a3120e5 Merge origin/staging into consultation family-contract fix.
Independent Staging Quality Gate / validate (push) Successful in 11m16s
Independent Staging Quality Gate / publish (push) Successful in 34m6s
Keep BUG-628 collect-chip history and add BUG-630 natal homepage contract fix.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 22:49:14 +08:00
Jesse_ChenandCursor c53decdb85 fix(consult): complete natal chart tool on homepage topic cards (BUG-630)
Thinking models were spending the first natal step on skill_read or a Level 2 draft, so home chips such as 家庭 never satisfied the calculation contract.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 22:46:46 +08:00
Jesse_ChenandClaude Fable 5.1 f4fc17ac51 docs(tasks): yearless personality probes downgraded to tie-breakers + offline calibration (BUG-629)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-09 14:28:53 +00:00
Jesse_ChenandClaude Fable 5.1 4eea9c10ed docs(tasks): domain alias audit brief — health/health_pressure and occupation/other (BUG-628)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193vBv6w5MV2cifdTUu9H5P
2026-09-09 14:22:20 +00:00
Jesse_ChenandCursor 5ac5b485e0 docs: number collect-chip removal as BUG-628
Independent Staging Quality Gate / validate (push) Successful in 27m18s
Independent Staging Quality Gate / publish (push) Has been cancelled
BUG-626 and BUG-627 are already reserved on staging by the skipped-health holdout brief.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 22:20:35 +08:00