I just stumbled upon a problem that clay might be able to catch.
The scenario is that one clay component references a clayJsfid that includes a reference to an already included clayJsfid. The result is a out of memory exception because clay goes into a infinite loop. With the nature of clay using a chain context it might be able to capture a list of already includes clayJsfids and return an error if there is a duplicate.