so the read commands should wait till all the three commands in the sequence are in the serial buffer and then read them sequentially.
That's one possibility.
Or check that 1 is available prior to each read.
That is another possibility.
However, both approaches rely on serial communication being 100% successful. Serial data delivery does not follow the UPS delivery guarantee (they guarantee to deliver your package). Instead, it follows the USPS delivery guarantee (the guarantee to try to deliver your package).
Serial data CAN get lost or corrupted. You need to consider this possibility, and plan for it happening.
If you send three values, for an RGB LED, for example, r, g, and b, and g gets lost, the LED will be lit using r1, b1, r2, then b2, g2, r3, then g3, r3, b4. Not a good thing.
If you send [, r, g, b, and ], then a lost value will be more easily recognized.