fix: AI claims/preauths keep all codes past 10; reuse CCA/DentalHub Chrome

- Claim form: AI claim/preauth prefill adds rows beyond the initial 10
  instead of dropping codes 11+
- CDT lookup: "D6010 #5, 9, 11, 12" expands to one line per tooth, and
  the chat graph rebuilds such lists from the message if the LLM drops items
- Eligibility: match an existing patient by name+DOB when the insurance ID
  changed (e.g. MassHealth → CCA) instead of creating a duplicate patient
- CCA PreAuth: services grid scrolls to reach rows 11+
- CCA and Tufts SCO PreAuth: tentative service date = today + 3 days
- CCA (eligibility/claim/preauth) and DentalHub (claim/preauth): keep Chrome
  open, blank and minimized, after a job so the next job reuses it

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-12 01:27:28 -04:00
co-authored by Claude Opus 5.5
parent 8937a3390c
commit 143319909f
13 changed files with 218 additions and 63 deletions
@@ -294,13 +294,14 @@ async def start_uniteddh_preauth_run(sid: str, data: dict, url: str):
s["result"] = result
s["message"] = "completed"
# Close browser window (session preserved in profile via UnitedSCO browser manager)
# Keep Chrome open (blank + minimized) so the next job reuses it — faster than
# starting a new browser. The browser manager recreates it if it was closed.
try:
from unitedsco_browser_manager import get_browser_manager as _gbm
_gbm().quit_driver()
print("[UnitedDH PreAuth] Browser closed - session preserved in profile")
except Exception as close_err:
print(f"[UnitedDH PreAuth] Could not close browser (non-fatal): {close_err}")
bot.driver.get("about:blank")
bot.driver.minimize_window()
print("[UnitedDH PreAuth] Browser kept open (minimized)")
except Exception as hide_err:
print(f"[UnitedDH PreAuth] Could not minimize browser (non-fatal): {hide_err}")
asyncio.create_task(_remove_session_later(sid, 60))
return result