Short answer: This is fine, just let them assemble the PCBs with those parts. There won't be any noticeably elevated defect rate. (You'll still have to expect that there can be one or two defective boards in the batch, for all kinds of reasons.)
Long answer: It depends on the part and its package.
In general, solid-state devices have practically infinite shelf life. They're solid-state after all, which means that there are no moving parts and no liquids that could dry out. They're essentially just "fancy rocks" - the atoms within them are bound in solid crystal lattices and aren't going anywhere as long as they're not in an environment that degrades them chemically (i.e. acidic or basic conditions).
Another aspect to a part's shelf life is its package. Very fine pitch SMD packages, especially BGA, can accumulate moisture in the bonds between their metal leadframe / substrate and polymer encapsulant. When you then heat them up in a soldering oven, the moisture suddenly turns into steam and essentially explodes the package from the inside. This is called "popcorning".
Your SOIC packages, on the other hand, are so large and simple in comparison to modern BGAs that popcorning in them is practically unheard of. You could ask JLCPCB to bake the old parts as a precaution if you're still worried about this. Baking (i.e. 24 hours at 110°C for your SOIC parts) is the industry standard procedure for drying parts before soldering if they might have absorbed moisture during storage.
You have to keep in mind that there are distributors that specialize in stocking old and discontinued parts, like Rochester - if silicon chips rotted in storage, they wouldn't be in business.
Non-solid-state parts are different, of course - I wouldn't want to use electrolytic capacitors that are a decade old for a production run, for example. (Ceramic caps, on the other hand, are fine even when they're quite old.)