fix(web): count only training events for discrimination and split user-stop from validated range

Three collected events with a reserved holdout were stalling because the discriminator door counted holdout. Public selection_allowed still had snapshot fallbacks, and health only proved the image SHA.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Jesse_Chen
2026-08-26 19:36:04 +08:00
co-authored by Cursor
parent a0ce55f066
commit b1173f7245
37 changed files with 1362 additions and 234 deletions
@@ -79,7 +79,8 @@ def request_events() -> dict:
{"id": "00000000-0000-4000-8000-000000000001", "domain": "career", "summary": "入职", "event_kind": "career_entry", "precision": "day", "date_start": "2016-09-15", "date_end": "2016-09-15"},
{"id": "00000000-0000-4000-8000-000000000002", "domain": "relationship", "summary": "开始一段关系", "event_kind": "relationship_start", "precision": "day", "date_start": "2018-03-01", "date_end": "2018-03-01"},
{"id": "00000000-0000-4000-8000-000000000003", "domain": "education", "summary": "毕业", "event_kind": "education_completion", "precision": "day", "date_start": "2015-06-01", "date_end": "2015-06-01"},
]
{"id": "00000000-0000-4000-8000-000000000004", "domain": "family", "summary": "家人变化", "event_kind": "family_event", "precision": "day", "date_start": "2020-01-01", "date_end": "2020-01-01"},
],
}
@@ -263,7 +264,7 @@ class RefinementPacketTest(unittest.TestCase):
self.assertNotIn("points", str(packet["event_dasha_ledger"]))
self.assertEqual(packet["lagna_contrast"]["intervals"][0]["lagna"], "金牛座")
self.assertTrue(packet["nakshatra_boundary"]["near_boundary"])
self.assertEqual(packet["oos_blind_prompts"][0]["domain"], "family")
self.assertEqual(packet["oos_blind_prompts"][0]["domain"], "finance")
self.assertFalse(packet["oos_blind_prompts"][0]["used_for_scoring"])
self.assertFalse(packet["confirmation_allowed"])
encoded = str(packet["window_scan"])