Part of the content becomes invisible after Suspense

:warning: Before you continue


Before submitting a bug report, please review our troubleshooting documentation at https://developer.amazon.com/docs/kepler-tv/troubleshoot-overview.html.

If you still want to file a bug report, please make sure to fill in all the details below and provide the necessary information.

NOTE: PLEASE ONLY REPORT A SINGLE BUG USING THIS TEMPLATE.
If you’re experiencing multiple issues, please file a separate report for each.


:backhand_index_pointing_right: Bug Description


1. Summary

When content is placed directly under Suspense, after the content is displayed, when Suspense is displayed, and then when the content is displayed again, part of the content becomes invisible/doesn’t display.

Bug Severity
Select one that applies

  • Impacts operation of app
  • Blocks current development
  • Improvement suggestion
  • Issue with documentation (If selected, please share the doc link and describe the issue)
  • Other

2. Steps to Reproduce

  1. Display the content placed directly under Suspense.
    In this example, the content consists of the text and background color shown below.
<View style={[{ backgroundColor: 'red' }]}>
  <Text style={[{ fontSize: 28, color: '#FFF' }]}>Loaded.</Text>
</View>
  1. After that, display the Suspense fallback.
  2. After Suspense finishes, hide the fallback and display the content again.

3. Observed Behavior

Although the text with background color described in '2. Steps to Reproduce' was displayed, only the text is showing and the red background color is not being displayed.

4. Expected Behavior

The state where the text and red background color described in '2. Steps to Reproduce' are being displayed.

4.a Possible Root Cause & Temporary Workaround

Fill out anything you have tried. If you don’t know, N/A is acceptable

As mentioned in other reports (https://community.amazondeveloper.com/t/suspense-content-is-invisible-after-a-second-fallback-state/5041/9), when the content directly under Suspense is wrapped with a View, it displays correctly.
However, it's not realistic to apply this fix everywhere throughout the application, so we strongly hope for this bug to be fixed.

5. Logs or crash report

none

6. Environment

Please fill out the fields related to your bug below:

  • SDK Version: 0.20.2975
  • App State: Foreground
  • OS Information
    Please ssh into the device via kepler exec vda shelland copy the output from cat /etc/os-releaseinto the answer section below. Note, if you don’t have a simulator running or device attached kepler exec vda shell will respond with vda: no devices/emulators found
kvd-tv:/$ cat /etc/os-release
NAME="OS"
OE_VERSION="4.0.0"
OS_MAJOR_VERSION="1"
OS_MINOR_VERSION="1"
RELEASE_ID="2"
OS_VERSION="1.1"
BRANCH_CODE="VegaMainlineTvIntegration"
BUILD_DESC="OS 1.1 (VegaMainlineTvIntegration/1037420)"
BUILD_FINGERPRINT="1.0.3742.0(9a1d8dfa7da5d600)/1037420N:user/dev-keys"
BUILD_VARIANT="user"
BUILD_TAGS="dev-keys"
BUILD_DATE="Sun Jul 06 22:51:18 UTC 2025"
BUILD_TIMESTAMP="1751842278"
VERSION_NUMBER="201113742030"

7. Example Code Snippet / Screenshots / Screengrabs

import { lazy, Suspense, useEffect, useState } from 'react';
import type { ReactElement, ComponentType } from 'react';
import { Text, View } from 'react-native';

const TargetComponent = (): ReactElement => {
  return (
    <View style={[{ backgroundColor: 'red' }]}>
      <Text style={[{ fontSize: 28, color: '#FFF' }]}>Loaded.</Text>
    </View>
  );
};

const LazilyComponent = lazy(async () => {
  await new Promise((resolve) => setTimeout(resolve, 3000));
  return { default: TargetComponent };
});

export const DebugComponent = (): ReactElement => {
  const [Component, updateComponent] = useState<ComponentType>(() => TargetComponent);

  useEffect(() => {
    setTimeout(() => {
      updateComponent(() => LazilyComponent);
    }, 3000);
  }, []);

  return (
    <Suspense
      fallback={
        <View style={[{ backgroundColor: 'blue' }]}>
          <Text style={[{ fontSize: 28, color: '#FFF' }]}>Loading...</Text>
        </View>
      }
    >
      <Component />
    </Suspense>
  );
};


:backhand_index_pointing_right: Playback Issues


If this is a playback issue, please provide your VPKG and/or content URL, any pre-conditions (like geo-location) [Share privately with your Amazon contact] , and let us know if it’s x86 or arm7.


<!-- Describe your playback issue if applicable -->

Please share the following details in addition:_

  • Player SDK: [Bitmovin, Shaka, ...]
  • Player SDK Version: [e.g. 1.23]
    • Audio Codecs: [AAC, ...]
    • Video Codecs: [h.264, mp4]
    • Manifest Types: [m3u8, dash, etc ..]

Q: Would you like to be contacted to share your latest VPKG compiled with latest SDK:

[Y/N] [Share privately with your Amazon contact]

Q: VPN or Login needed to verify functionality in VPKG?

[Y/N] [Share privately with your Amazon contact]

Q: If applicable, please provide your media/content url
If this is created dynamically, tokenized, etc please provide a way for us to access it

[N/A or Content / Media Url for testing] [Share privately with your Amazon contact]

Q: Are there any special headers required to reproduce the issue you are facing?

[N/A or Insert Headers]

Additionally please provide the following if possible
Provide Screenshots / Screengrabs / Logs. Please include as much information as you can that will help debug.

<!-- Answer here if applicable --> 

:backhand_index_pointing_right: Additional Context


Any Additional Context you would like to provide?
Add any other relevant information, such as recent updates to the SDK, dependencies, or device OS that may affect the bug.

<!-- Answer here if applicable  --> 

Hi @shinohara_akiko ,

Thank you for creating this bug report.
I have reported this to our internal team.

Thanks,
Rohit

1 Like

Hi @Amz_Rsk ,

Do you have any updates on the progress of this bug report? I’d really appreciate hearing about it.
Also, going forward, could you please direct any future mentions of this bug report to @miyashiro_masahiro instead of @shinohara_akiko?

Thanks,
Akiko

Hi @shinohara_akiko ,

We are still checking on this.
Meantime, you can check with your Amazon POC for further udpates.

Thanks,
Rohit