Skip to content

Release: stage → prod (TE-4324: testName propagation + fallback fix)#513

Open
sushobhit-lt wants to merge 7 commits intoprodfrom
stage
Open

Release: stage → prod (TE-4324: testName propagation + fallback fix)#513
sushobhit-lt wants to merge 7 commits intoprodfrom
stage

Conversation

@sushobhit-lt
Copy link
Copy Markdown
Collaborator

Summary

Promote stage to prod. Includes 5 commits since last release — full TE-4324 testName-propagation series.

Commits being promoted

Highlights — TE-4324: testName end-to-end

  • Populates `snapshot.options.testName` from LSRS `/sessions/capabilities` response in all 3 caps-resolution branches (Redis-success, sessionCapabilitiesMap cache-hit, LTMS-fallback).
  • Adds `testIdTestNameMap` cache parallel to `sessionTestIdMap` so subsequent snapshots restore testName without re-calling the API.
  • Carries `testName` through `prepareSnapshot` and `processSnapshot` allowlists into `processedOptions` so it survives to the S3 upload (was being silently stripped before this fix).
  • Reads `caps.testName ‖ caps.name` to support both LSRS response shapes (Redis-success returns `testName`, LTMS-fallback returns `name`).

Test plan

  • With a real Selenium/Playwright session, run `smartui exec` and confirm `Snapshot options:` debug log includes `testName`.
  • Confirm `Processed options:` debug log also includes `testName` (was missing pre-fix).
  • End-to-end: confirm DOTUI publishes outbound `lhps-dotlapse-add-screenshot` Kafka payload with `testName` and DES persists it as `screenshot.name`.

🤖 Generated with Claude Code

sushobhit-lt and others added 7 commits April 24, 2026 20:22
…ot options

Add testIdTestNameMap cache parallel to sessionTestIdMap so that testName
is restored on subsequent LTMS-fallback cache hits. Populate
snapshot.options.testName from LSRS getSmartUICapabilities response
across all 3 resolution paths (Redis-success, sessionCapabilitiesMap
cache-hit, LTMS-fallback).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The option-processing step built processedOptions from an explicit
allowlist that only forwarded sessionId and testId, silently dropping
testName. Add testName propagation in both prepareSnapshot and
processSnapshot, mirroring the testId resolution order: inline option,
then testIdTestNameMap lookup, then sessionCapabilitiesMap.name
fallback.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
LSRS returns the test name under two different keys depending on the
resolution path:
  - SessionInfo (Redis-success): `testName`
  - LTMS-fallback response: `name`

The earlier fix only read `.name`, so the primary Redis-success path
silently dropped the value. Read `testName` first with `name` as
fallback in both server.ts (3 caps-resolution branches) and
processSnapshot.ts (2 sessionCapabilitiesMap lookups).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
fix(TE-4324): read testName from caps with name fallback
Includes the TE-4324 testName-propagation series:
- propagate testName from session capabilities to snapshot.options
- carry testName through prepareSnapshot/processSnapshot allowlists
- read testName from caps with name fallback (handles both LSRS
  Redis-success `testName` and LTMS-fallback `name` response shapes)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant