Hello Google IMA team,
We're experiencing an issue with your HTML5 IMA plugin when in secure mode and are hoping you can provide guidance.
When trying to run an ad in a player that uses your plugin in secure mode -- which returns a proxy object instead of an HTML element -- the videoSlots play-promise never completes. Upon starting an ad, we check the play method and indeed see that it's of type Promise, but find that it never resolves nor rejects. The Promise forever stays in its pending state.
Note that in cases where IMA is nonexistent, and more interestingly, in cases where IMA is in insecure mode (where an HTML video element is returned), our logic works as expected.
Per your online docs, we're listening to the Promise in the expected way. Here’s some sample code:
<js>
  let playPromise = this._videoSlot.play();
  console.log(playPromise); // Promise {<pending>}
  if (playPromise !== undefined) {
    // The above condition is met, but the Promise never 
    // resolves nor rejects (and stays in a pending state)
    playPromise
      .then(() => /* Autoplay will work, start ad accordingly */)
      .catch(() => /* Autoplay will fail, start ad accordingly */)
  } else {
    // Start ad accordingly
  }
</js>
We're testing the ad via Chrome in your Video Suite Inspector.
Steps to reproduce:
3. Test ad
4. The ad will not play (since the expected Promise is never resolved/rejected)
***
To make matters a bit more confusing, the above tag will work on your page if a working tag is played first. 
Steps to reproduce:
2. Click the "sample" VAST link to load your included sample tag
3. Test ad
5. Test ad
6. The ad will play as expected
Regards,
Leandro Silva
Lead Solutions Architect
Tremor Video DSP