I've decided to take an entirely different approach for Test::Aggregate. I'll leave it's behavior as is and include a Test::Aggregate::Nested in the distribution. I think that I'll see if I can take advantage of the upcoming nested TAP by doing something conceptually similar to this:
use Test::More tests => scalar @test_programs; foreach my $test_program (@test_programs) { subtest $test_program => run_test $test_program; }
I say "conceptually" similar because there's still work which must be done between every test, such as restoring certain environment variables, possibly forcing them into separate packages and maybe trapping if tests are run in BEGIN/CHECK/INIT/END blocks, but all things considered, I think this will be a much cleaner way of making aggregated tests work.
As an added bonus, I'll be able to discard almost all of my work to verify that plans per test program are correct. That's because subtests handle that for me. I'm also anxious to see if I can eliminate all of my Test::Builder monkey patching. That's been my biggest pain so far, but it's been impossible to avoid with the current Test::Builder.
Oh, and T-Mobile data is allegedly being sold by crackers. T-Mobile is alledgedly not admitting they've been hacked and there's a lot of sensitive information they store about you.