Skip to content

Cherry pick PR #9477: starboard: Refactor h5vcc plumbing to use a dedicated struct and extension#10037

Open
cobalt-github-releaser-bot wants to merge 6 commits intomainfrom
cherry-pick-main-9477
Open

Cherry pick PR #9477: starboard: Refactor h5vcc plumbing to use a dedicated struct and extension#10037
cobalt-github-releaser-bot wants to merge 6 commits intomainfrom
cherry-pick-main-9477

Conversation

@cobalt-github-releaser-bot
Copy link
Copy Markdown
Collaborator

Refer to the original PR: #9477

This change consolidates individual experimental features into a single 'ExperimentalFeatures' struct, updates the player worker handler interface to accept this struct, and introduces a new Starboard extension for cross-platform configuration. The Android implementation has been updated to use this new pattern, and redundant internal configuration headers have been removed.

Issue: 480134029

…nsion (#9477)

This change consolidates individual experimental features into a single
'ExperimentalFeatures' struct, updates the player worker handler
interface to accept this struct, and introduces a new Starboard
extension for cross-platform configuration. The Android implementation
has been updated to use this new pattern, and redundant internal
configuration headers have been removed.

Issue: 480134029
(cherry picked from commit 3eb80e3)
@cobalt-github-releaser-bot
Copy link
Copy Markdown
Collaborator Author

MERGE CONFLICT CAT

Caution

There were merge conflicts while cherry picking! Check out cherry-pick-main-9477 and fix the conflicts before proceeding. Check the log at https://github.com/youtube/cobalt/actions/runs/24424649716 for details.

@github-actions
Copy link
Copy Markdown
Contributor

🤖 Gemini Suggested Commit Message


starboard: Refactor experimental features plumbing

Consolidate individual experimental features into a single
ExperimentalFeatures struct and a new ExperimentalFeaturesConfigurationApi
Starboard extension. The player worker handler interface and Android
implementation are updated to use this new pattern.

This change simplifies the management and cross-platform configuration of
experimental features, moving towards a more organized and extensible
approach. It removes redundant internal configuration headers and
extensions, centralizing the configuration of experimental flags.

Bug: 480134029

💡 Pro Tips for a Better Commit Message:

  1. Influence the Result: Want to change the output? You can write custom prompts or instructions directly in the Pull Request description. The model uses that text to generate the message.
  2. Re-run the Generator: Post a comment with: /generate-commit-message

@kjyoun kjyoun marked this pull request as ready for review April 15, 2026 00:42
@kjyoun kjyoun requested a review from a team as a code owner April 15, 2026 00:42
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request consolidates several specific Starboard extensions into a unified ExperimentalFeatures extension, simplifying the SbPlayer creation process and utilizing thread-local storage for feature management. The review feedback identifies a critical crash risk in the feature retrieval logic when overrides are absent, a type inconsistency in the extension header that prevents boolean features from being optional, and a regression in debug logging visibility that should be addressed to maintain field supportability.

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.

2 participants