In brief
Deep nested arrays do not unfold automatically.
Useful to know
concat() creates a new array of existing arrays or values. For example, [1, 2].concat([3, 4]) gives [1, 2, 3, 4], and the sources remain unchanged . [1]
If an element alone is an nested array, do not expect unlimited flattening. Also, objects inside lists remain shared references. The method is convenient for collecting two already checked groups of records, but does not remove repetitions and does not guarantee unique identifiers. Solve these tasks separately before showing the combined result.
Sources
For further detail and to check the information: