Codecept with puppeteer unable to find element

I have a scenario where I need to click on a tab (below) to load and display some content.

<span class="k-link">Matrix</span>

my scenario is simple, once the tab is clicked I wait for an element of the loaded content.
This logic always fails for some reason in codecept, it works when i do it from chrome’s console

$x("//span[text()='Matrix' and @class='k-link']")[0].click()
and then when the content is loaded
$x("//button[text()='NWT']")

whereas in codecept (after i click the span above)

I.waitForElement({ xpath: "//button[text()='NWT']" }, 100);

never works! why?
Edit: The element is never clicked, even though it could find it (at least it doesn’t complain about not being able to)! any idea why?

If this helps anyone, I had to call click() twice to get it to work… i don’t know why. but this worked