Skip to content

chore: upgrade @100mslive/hms-video-store to 0.15.0 - #1163

Merged
iamitprakash merged 3 commits into
developfrom
chore/upgrade-100ms-video-store
Sep 11, 2026
Merged

iamitprakash merged 3 commits into
developfrom
chore/upgrade-100ms-video-store

Conversation

@ankushdharkar

@ankushdharkar ankushdharkar commented Aug 22, 2026 •

Copy link
Copy Markdown
Contributor

Date: 11-09-2026

Developer Name: Ankush Dharkar


Issue Ticket Number:-

Description:

  • Dependency Upgrade: Bumps @100mslive/hms-video-store from 0.10.6 (June 2023) to 0.15.0, keeping the exact pin in package.json.
  • Lockfile Cleanup: Starting in 0.11, the core @100mslive/hms-video package is bundled directly into hms-video-store. It has been removed from pnpm-lock.yaml, leaving a single @100mslive/hms-video-store@0.15.0 package entry.
  • Service Compatibility Fix (app/services/live.js):
    • In modern versions of the SDK, hmsActions.detachVideo queries internal state via sdk.store.getTrackById, which is only available once a room has been joined or previewed (0.10.6 used a local map that tolerated early invocations).
    • The live service invokes detachVideo(undefined, videoEl) during initialization (triggerOnSubscribe()), causing an unhandled rejection and test failures on any page injecting the service.
    • Fix: Guarded detachVideo with if (this.hmsStore.getState(selectIsConnectedToRoom)).
    • Note: We check the HMS store directly rather than the tracked isJoined property to prevent Ember's backtracking re-render assertions during the subscribe lifecycle.

Is Under Feature Flag

  • Yes (live route is behind the dev query flag)
  • No

Database changes

  • Yes
  • No

Breaking changes (If your feature is breaking/missing something please mention pending tickets)

  • Yes
  • No

Is Development Tested?

  • Yes
  • No

Tested in staging?

  • Yes
  • No

Test & Verification Summary

View Test Details
  • Lint: pnpm lint passes (CSS, HBS, format, JS all exit 0).
  • Tests: pnpm test:ember passes (382 pass, 6 skip, 0 fail).
    • All 24 live-related unit, integration, and acceptance tests pass.
    • Regression check: Without the guard in live.js, 12 tests fail with TypeError: Cannot read properties of undefined (reading 'getTrackById').
  • Production Build: pnpm build exits 0.
  • CI Status: All GitHub Actions (Lint, build) and Cloudflare Pages deployment checks pass.

Additional Notes

  • Staging Verification Needed:
    • Host creates room and shares screen.
    • Guest joins and views shared screen.
    • Host stops sharing; guest view clears (isScreenShareOn resets to false).
    • Host ends room; guests receive ROOM_ENDED toast.
  • Review Focus: Reviewers can focus on the detachVideo guard in app/services/live.js; the rest is lockfile resolution and dependency pinning.

@coderabbitai

coderabbitai Bot commented Aug 22, 2026 •

Copy link
Copy Markdown

Review Change StackReview Change Stack

Important

Review skipped

Auto incremental reviews are disabled on this repository.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: dbf58d5c-6671-4346-9bf0-2495f652a064

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: 4da21daf-00db-4dc6-8319-22cd8902a74f

📥 Commits

Reviewing files that changed from the base of the PR and between 3654602 and ed6fe3b.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (2)
  • app/services/live.js
  • package.json

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.


Summary by CodeRabbit

  • Bug Fixes

    • Improved screen-sharing cleanup when the room connection is unavailable.
    • Prevented unnecessary video-track detachment while still resetting screen-share state.
  • Maintenance

    • Updated the video store package to a newer version for improved compatibility and stability.

Walkthrough

The HMS video store dependency is upgraded from 0.10.6 to 0.14.7. Presenter video detachment now runs only when the live room is connected, while screen-share state continues to reset.

Changes

HMS live video flow

Layer / File(s) Summary
Upgrade HMS video store
package.json
Updates @100mslive/hms-video-store from 0.10.6 to 0.14.7.
Guard presenter detachment
app/services/live.js
Checks selectIsConnectedToRoom before detaching the presenter video track. Screen-share state still resets.

Priority: ➖ Normal

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Other · Severity of issue fixed: Medium

Merge Risk: ⚪ Minimal · up to ed6fe

The upgrade and connection-state guard do not leave an actionable current-head risk.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Linked Issues check ❓ Inconclusive The PR updates @100mslive/hms-video-store to exact version 0.15.0, adds the selectIsConnectedToRoom guard before detachVideo, and reports passing lint, Ember tests, and production build checks… Provide reviewable evidence for the relevant pnpm-lock.yaml entries, or remove the exclusion, to confirm that @100mslive/hms-video no longer appears. Confirm that exact version 0.15.0 is the intended current release for issue #1162.
✅ Passed checks (4 passed)
Check name Status Explanation
Description check ✅ Passed The description clearly explains the dependency upgrade, lockfile changes, compatibility fix, testing, and remaining staging verification.
Title check ✅ Passed The title accurately and concisely identifies the primary change: upgrading @100mslive/hms-video-store to version 0.15.0.
Out of Scope Changes check ✅ Passed The reviewed changes are limited to the SDK dependency upgrade and a connection-state guard for detachVideo in app/services/live.js. The guard supports the SDK upgrade and prevents initialization-…
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 1…
Full details: Linked Issues check

Explanation

The PR updates @100mslive/hms-video-store to exact version 0.15.0, adds the selectIsConnectedToRoom guard before detachVideo, and reports passing lint, Ember tests, and production build checks. These changes address the upgrade, API compatibility, runtime safety, and test requirements in issue #1162. The required removal of @100mslive/hms-video from pnpm-lock.yaml cannot be verified because that file is excluded from review. The stated issue version is 0.14.7, while the PR uses newer version 0.15.0; the available evidence does not show that this newer exact release violates the upgrade requirement.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/upgrade-100ms-video-store

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

A rabbit checks the room before the track can flee,
The screen-share state resets, neat as can be.
HMS hops forward, versions renewed,
Old detachment paths are carefully subdued.
“Connect first,” says Bun, “then stream with glee!”

Comment @coderabbitai help to get the list of available commands.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Aug 22, 2026 •

Copy link
Copy Markdown

Deploying www-rds with  Cloudflare Pages  Cloudflare Pages

Latest commit: 8d39484
Status: ✅  Deploy successful!
Preview URL: https://1b0a892f.www-rds.pages.dev
Branch Preview URL: https://chore-upgrade-100ms-video-st.www-rds.pages.dev

View logs

ankushdharkar and others added 2 commits September 11, 2026 18:03
Bumps the 100ms SDK used by the live events page from 0.10.6 (2023) to
0.14.7. Since 0.11 the core @100mslive/hms-video package is bundled into
hms-video-store, so it drops out of the lockfile.

The only code change is a guard in LiveService.renderScreenVideoToPeers:
detachVideo now reads the SDK store, which only exists after a room has
been joined, and the peers subscription fires on construction. Without
the guard the service throws (unhandled rejection) on every page that
injects it before join.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Entire-Checkpoint: 01M27X1H3G7V7Y686T8BT20V5Q
@ankushdharkar
ankushdharkar force-pushed the chore/upgrade-100ms-video-store branch from d099e5d to ed6fe3b Compare September 11, 2026 13:23
@ankushdharkar ankushdharkar changed the title chore: upgrade @100mslive/hms-video-store to 0.14.7 chore: upgrade @100mslive/hms-video-store to 0.15.0 Sep 11, 2026
@ankushdharkar ankushdharkar self-assigned this Sep 11, 2026
@ankushdharkar ankushdharkar added the enhancement Enhances an existing feature label Sep 11, 2026
@ankushdharkar
ankushdharkar marked this pull request as ready for review September 11, 2026 14:07
@ankushdharkar

Copy link
Copy Markdown
Contributor Author

@coderabbitai Please review it again

@coderabbitai

coderabbitai Bot commented Sep 11, 2026 •

Copy link
Copy Markdown

@ankushdharkar I will review all changes in PR #1163 again.

✅ Action performed

Full review finished.

@iamitprakash
iamitprakash merged commit 0985656 into develop Sep 11, 2026
4 checks passed
@iamitprakash
iamitprakash deleted the chore/upgrade-100ms-video-store branch September 11, 2026 21:33
@geekyvaishnavi geekyvaishnavi mentioned this pull request Oct 4, 2026
5 of 10 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement Enhances an existing feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Upgrade @100mslive/hms-video-store to latest - Sep 2026

2 participants