# DemoPrep June 2026 Release Notes This is the working prod-update summary for the recent DemoPrep changes. It is intended to be updated as fixes are tested and promoted. ## Branch / Deploy State - Current reconciled code line: `develop` / `new-branch` - Test deploy target: `hf-test/main` - GitHub source target: `origin/develop` - Last known reconciled commit before the current local fixes: `d58f32a` ## Data Quality And Dataset Generation - Moved the app toward dataset-first generation: - research and scenario context produce a scenario contract - the dataset is generated coherently first - DDL is derived from the generated dataset - Snowflake loads the generated dataset directly - Added scenario-family routing instead of one-off company-specific generators. - Added and improved specialized or richer dataset paths for: - SaaS sales - retail sales - professional services - trucking/shipping/logistics - banking marketing and finance - restaurant/store operations - education enrollment - healthcare/life sciences - CPG/grocery finance and sales - Improved data realism: - better dimension cardinality so datasets do not look toy-sized - coherent formulas and constraints for rates, funnels, margins, passengers, operations, and finance metrics - fewer random placeholder values and fewer impossible metric combinations - Improved generated product, warehouse, and dimension names to reduce generic numbered labels such as `Product 29` where possible. - Added quality-run tooling and reporting: - e2e quality runs save JSON/Markdown artifacts - results can be written to `ts_quality_results` - the ThoughtSpot quality reporting liveboard reads from `ts_quality_results` rather than `session_logs` ## Custom Context And Scenario Specificity - Custom prompts and additional context are passed into scenario extraction so custom demos should preserve customer/domain nouns rather than falling back to generic matrix defaults. - Scenario extraction is intended to drive public/custom demos; deterministic routing is a fallback and guardrail, not the main intelligence layer. - Fixed cases where industry/use-case combinations routed to the wrong scenario family, including several logistics, finance, and CPG paths. ## ThoughtSpot Deployment Reliability - Chunked ThoughtSpot table imports to reduce gateway timeouts on larger TML imports. - Fixed import-scope issues in the chunked deploy path. - Added recovery behavior for ThoughtSpot partial table creation: - after 502/503/504 import errors, the deployer checks whether ThoughtSpot actually created the table - if the table exists for the same database/schema/connection, the deployer reuses the table GUID instead of failing on `table already exists` - Batch 2 join-update failures are now treated as warnings when the run can continue to create a useful model/liveboard. - Partial liveboard failures are handled more explicitly so a created dataset and model are still shown to the user. ## Logging, Run History, And Diagnostics - Reworked session logging away from shared/module-level state so concurrent or repeated runs are less likely to contaminate each other. - Session IDs are collision-resistant and include microseconds/random suffixes. - Added terminal run events: - `run completed` - `run failed` - `run waiting for user` - `run interrupted` - Run History now distinguishes: - `Success` - `Failed` - `Partial Success` - `Waiting for User` - `Interrupted` - `Stale / Interrupted` - `No Run Started` - Run History now hides `testrunner@thoughtspot.com` by default and has a `Show test runs` toggle. - Added clearer diagnostics when Snowflake deploy completes but the app does not receive the auto-ThoughtSpot handoff. - Admin `LOG_LEVEL` controls logging: - `off`: no Supabase session logging - `regular`: important stage and terminal events - `verbose`: detailed sub-step logs for incident/debug windows ## LLM Model Handling - Fixed Anthropic requests for models that reject deprecated `temperature`. - Temporarily forced or defaulted working model paths during provider quota/rate incidents, especially around Sonnet model availability. - Ensured selected LLM model flows into downstream semantic/model enrichment calls instead of silently using inconsistent defaults. - Logged model resolution at run start so provider/model issues can be diagnosed from `session_logs`. ## Onboarding And Admin - Added temporary-password onboarding flow. - Admin can add users and generate a Slack-ready invite message. - New users can be forced to change password before accessing the app. - Removed the unexpected front-end password length requirement. - Improved onboarding invite copy: - welcome message - app location - docs/quick-start link - username and temporary password - contact Mike Boone for problems - Default new-user settings: - ThoughtSpot environment: SE Cloud Primary - data size: Medium - column naming style: Regular Case - tag/object prefix/share defaults empty ## Test Harness And Deployment Workflow - The e2e quality harness now resolves schemas from the exact ThoughtSpot model rather than guessing from prefixes or timestamps. - The harness can reconcile late-completing runs via `session_logs`. - Added dataset-first fixed suites and broader randomized/customer-style runs. - Reconciled GitHub `origin/develop` and Hugging Face `hf-test/main` so test and source control are on one code line. - Documented deploy rule: - test: `git push hf-test develop:main` - production only when explicitly requested ## Open Follow-Ups - Date modeling: decide whether most generated models should stop creating noisy physical `DATES` tables and rely on fact-table date columns plus ThoughtSpot date intelligence instead. - Liveboards: data scores improved faster than liveboard quality. A separate liveboard redesign effort is in progress. - ThoughtSpot deployment: continue monitoring 504 and version-conflict behavior under real customer runs. - Run History: validate the new statuses against real prod/test logs after the next deploy.