diff --git a/packages/react/src/declarative/FeatureFlag.tsx b/packages/react/src/declarative/FeatureFlag.tsx index c62c1245ee..a8136cf0e2 100644 --- a/packages/react/src/declarative/FeatureFlag.tsx +++ b/packages/react/src/declarative/FeatureFlag.tsx @@ -101,7 +101,7 @@ export function FeatureFlag({ }); // If the flag evaluation failed, we render the fallback - if (details.reason === 'ERROR') { + if (details.reason === 'ERROR' && details.details?.errorCode !== 'FLAG_NOT_FOUND') { const fallbackNode: React.ReactNode = typeof fallback === 'function' ? fallback(details.details as EvaluationDetails) : fallback; return <>{fallbackNode}; diff --git a/packages/react/test/declarative.spec.tsx b/packages/react/test/declarative.spec.tsx index 8466ca6ab2..2293a2166c 100644 --- a/packages/react/test/declarative.spec.tsx +++ b/packages/react/test/declarative.spec.tsx @@ -81,6 +81,17 @@ describe('Feature Component', () => { expect(screen.queryByText(childText)).toBeInTheDocument(); }); + it('should render children when flag is missing and defaultValue is true', () => { + render( + + + + + , + ); + + expect(screen.queryByText(childText)).toBeInTheDocument(); + }); it('should not show a non-boolean feature flag without match', () => { render(