Twitch Hosted Test extension always serves old cached or failing assets despite new ZIP upload Problem

Hey guys, thank you for your time!

**I have an issue with running test on my extension
Twitch Hosted Test extension always serves old cached assets despite new ZIP upload

Problem:** I’m developing a Twitch Panel Extension. I upload a new ZIP to Hosted Test with updated HTML/JS files, but the extension iframe on my channel always renders the old version. I’ve tried multiple uploads and new versions — the old UI still shows. anyone else with the same prob.?**

twitch interactive chat tools for extensions/bots**

can i use an app to trigger commands or do i need a twitch bot to do so?

I’m also exploring how to trigger actions in Twitch chat programmatically. From what i understand, there are two main approaches:

  1. Twitch Chat Bot (IRC / tmi.js / EventSub): A standalone service that connects to Twitch chat via IRC or WebSocket and listens for chat commands (e.g., !command @user).

  2. Twitch Extension with EBS (Extension Backend Service): A Twitch Extension can communicate with its own backend server (EBS) which then calls the Twitch Helix API on behalf of the broadcaster.

Both approaches should ultimately call the same Twitch Helix API endpoints, but they differ in how they authenticate,

Setup:

  • Extension type: Panel

  • Deployment mode: Hosted Test (ZIP upload via twitch dev console)

  • Files in ZIP (at root level and not nested in a folder):

  • panel.html

  • panel.js

  • config.html

  • config.js

  • mobile.html

What I need help with:

  1. Could the version not be properly “activated” for my channel even though I selected it in Hosted Test?

  2. Is there a way to verify exactly which files Twitch CDN is serving

  3. Any known issues with Twitch ignoring new Hosted Test uploads and continuing to serve a previous version?

    TY so much :slight_smile:

This suggests that version (a) is installed to the test channel (perhaps the version that is released)

And the test/hosted test version is not intalled/active on the test channel

Either appraoch works.

Personally I use EventSub that that my EBS receives, I use a conduit as it’s the easiest method to reconnect to all channels, as it’s one API request and boom in all channels

Where is if using IRC you have to join within the rate limits. Chat over eventsub is the way to go here. (let alone pre JSON’ed no need to tokenise IRC, which yeah sure a library will do for you)

I’m not sure what you mean by “selected” here (when refernecing hosted test).

Here for example, I have the “release” version installed/active on my channel but not the test version, so if i uplaod to the test version and reload the channel page, I get the release version

The CDN serves what you have uploaded, short of what is ‘localled cached in the browser’, and a simple ctrl + f5 will clear that.

You can go inspect the iFrame and trace it down like you would a regular website. Checking JS/Css to see what matches and whatever your code does to see whats going on

Since extensions are jsut websites, “regular” website debugging is the approach to take.

Also when inspecting you can use console to investigate the URL that is being loading for the iFrame which includes a query string parameter describing the state (docs for query string params)

No known issues I’m aware of.

1 Like