To start, an excellent resource about mashing and brewing in general is
https://braukaiser.com/wiki/index.php/Braukaiser.com. There's lots of detail and home-grown science there which can be overwhelming to the newbie, but if you like deep-dives and really want to up your game, I highly recommend spending some time with his wiki. The topics don't just apply to German styles either, but really any brew. You can skim it to start at first, and then revisit as you advance for better understanding.
It was there I learned to 'mash to full conversion' rather than by time. And while stable readings are one indicator, especially if they are your target pre-boil, a better method is to use an Iodine test as confirmation conversion is complete. (Recipe builders are estimators. Since malt is a crop, each batch will vary, so your pre-boil will as well.)
I and my brewing buddies pretty much always add dark malts (over 200°L) at Vorlauf. We've also tried doing an overnight cold-steep of dark grains, (suggested by Palmer in "How to Brew") but that doesn't seem to make a difference compared to 'capping' as it is called, and is just extra work and something else you have to think about and do in advance.
Astringency can come from *any* color barley, though dark malts are more susceptible to it. (or at least are more likely to be noticeable) Huskless malts (Wheat, Rye, Oats, Rice, Corn, etc.) either don't have the tannins to produce astringency at all, or else they are so low as to not be an issue. As for palates and judges, I think some people are simply better trained to detect it. Once you experience and know what it is, you start to notice it more and more. The way I learned is if you get a dry-cheek sensation like you just sucked on a piece of wood in the aftertaste of the beer, or even a mild 'cotton mouth' sensation—it is astringent. That is more common than you might suspect.
Astringency is caused by two factors: 1) High mash temps (above 168℉) and 2) High pH. (above 5.7 or so) This is more common with sparging processes because some folks aren't careful or don't have good means or meters to make sure their sparge water has a low enough pH. BIAB type systems avoid this problem as long as your main mash pH is in the proper range. That just leaves temp as a danger zone, so be mindful to keep your Vorlauf as close to 168℉ as possible until you pull the grains.
Vorlauf significantly decreases the viscosity of the mash, helps to properly set the grain bed by creating a layer of fine particulate over the grains, (there's a German name for this stuff, but I can't recall it off-hand) and rinses more sugars out of the grain bed rather than leaving them behind. I started raising my bag just prior to the mash-out temp ramp and then rinse the grains with my pump for 10 minutes as a Vorlauf step. This consistently buys me 3–5 gravity points versus pulling the bag and not rinsing through. (even with recirculation in that step) It's like a continuous sparge, but using the wort, not additional water where pH can be an issue. My process is to mash to full conversion confirmed by an Iodine test, *then* raise the bag and Vorlauf. Then I check gravity for 'pre-boil' and I'm usually within a point or two of target. (see above about estimation)
No matter how you logistically handle the step, try to keep about an inch of wort on top of the bed by adjusting your pump flow to prevent channeling or cracking of the grain bed. After 10 minutes, stop the recirculation and let the bag fully drain, then SQUEEZE!—no tannins are created from squeezing, that is a myth. No need to leave wort behind in the grain if you can get it out. I've found the best squeezing method is to use an A-frame ladder to suspend my bag pulley with a large carabiner, and then slide my mash paddle or a pipe through the carabiner so it gets caught on both sides of the ladder, and then twist the bag until I can't any more. I can easily recover ½ gallon of wort that would otherwise be lost that way.
A special note for capped mashes: holding back dark grains will affect the pH of the mash, that is, it will be higher than if they were included from the start. Thus, be sure to set them as 'late additions' so the BF Water Calc doesn't factor in their pH contribution. This will mean you might need to make pH adjustments with acid to hit the right mash pH. (I use 85% Phosphoric to avoid lactic flavors) Yes, it will drop more when those dark grains are finally added, but I've yet to see that get too low, and I've brewed lots of dark styles. Even the blackest of Stouts and IPAs are fine. (+1 for Midnight Wheat too!)
Finally, about judges, ours here are notorious for wanting more hops, both flavor and aroma. Personally, I find low carbonation to be the biggest issue for bottled homebrew. (which of course, affects hop perceptions) I also find some of them need to re-read the beginning of the guidelines where it stresses that they aren't supposed to be hard-nosed bright-lines, but *literally* guidelines for how a style should look, smell, and taste. Entirely too many BJCP judges are extremely nit-picky and harsh. That makes entering contests quite frustrating. Their 'advice' of simply 'more' and other unquantified generic terms for anything I find to be non-helpful. Maybe the BJCP could send out friendly refresher notes to judges on some of these points.