test-demoprep / docs /release_notes_2026_06.md
mike boone
fix: improve run diagnostics and ts recovery
e758f65
|
Raw
History Blame Contribute Delete
6.18 kB
# 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.