diff --git a/website/database/seeders/ConfigOptionSeeder.php b/website/database/seeders/ConfigOptionSeeder.php index cea8af1..d31a774 100644 --- a/website/database/seeders/ConfigOptionSeeder.php +++ b/website/database/seeders/ConfigOptionSeeder.php @@ -355,6 +355,8 @@ class ConfigOptionSeeder extends Seeder ], ); + // Platinum 8280 sits in this group but is filtered out at the route + // level for chassis where features.cpu_premium === false (R440/R540). $gen14CpuOption = $this->seedRadioOption($gen14CpuUpgrade, 'CPU Upgrade', false, 1); $this->seedValues($gen14CpuOption, [ ['label' => 'Baseline: 2× Xeon Gold 6230 (40C / 2.10 GHz)', 'value' => 'gold-6230-baseline', 'monthly' => 0, 'is_default' => true], @@ -367,9 +369,10 @@ class ConfigOptionSeeder extends Seeder ['label' => 'Mid-tier: 2× Xeon Gold 6230R (52C / 2.10 GHz)', 'value' => 'gold-6230r', 'monthly' => 50.00], ['label' => 'Upgrade: 2× Xeon Gold 6248R (48C / 3.00 GHz)', 'value' => 'gold-6248r', 'monthly' => 75.00], ['label' => 'Upgrade: 2× Xeon Gold 6258R (56C / 2.70 GHz)', 'value' => 'gold-6258r', 'monthly' => 145.00], + ['label' => 'Premium: 2× Xeon Platinum 8280 (56C / 2.70 GHz)', 'value' => 'platinum-8280', 'monthly' => 285.00], ]); - $gen14CpuPlanSlugs = ['r440-4lff', 'r540-8lff', 'r640-8sff', 'r740-16sff']; + $gen14CpuPlanSlugs = ['r440-4lff', 'r540-8lff', 'r640-8sff', 'r740-16sff', 'r740xd-24sff', 'r740xd-12lff', 'r640-10nvme', 'r740xd-24nvme']; $gen14CpuPlans = Plan::query()->whereIn('slug', $gen14CpuPlanSlugs)->pluck('id'); $gen14CpuUpgrade->plans()->syncWithoutDetaching($gen14CpuPlans); @@ -393,9 +396,11 @@ class ConfigOptionSeeder extends Seeder ['label' => 'Upgrade: 2× Xeon Platinum 8280 (56C / 2.70 GHz)', 'value' => 'platinum-8280', 'monthly' => 285.00], ]); - $gen14CpuXdPlanSlugs = ['r740xd-24sff', 'r740xd-12lff', 'r740xd-24nvme']; - $gen14CpuXdPlans = Plan::query()->whereIn('slug', $gen14CpuXdPlanSlugs)->pluck('id'); - $gen14CpuUpgradeXd->plans()->syncWithoutDetaching($gen14CpuXdPlans); + // R740xd-specific group is now obsolete — all chassis use the + // standard CPU group above and the route-level cpu_premium filter + // controls Platinum visibility. Detach all plans; group + values + // remain seeded for backwards-compat with any historical references. + $gen14CpuUpgradeXd->plans()->sync([]); // ─── Dedicated 14th Gen — RAM Upgrade ─────────────────────────── $gen14Ram = PlanConfigGroup::updateOrCreate( @@ -411,13 +416,18 @@ class ConfigOptionSeeder extends Seeder $gen14RamOption = $this->seedRadioOption($gen14Ram, 'RAM Upgrade', false, 1); $this->seedValues($gen14RamOption, [ + // Per-stick math at $65/64GB-equivalent, set to recoup 12-month + // hardware cost on $390/stick DDR4-2400 LRDIMM at 2026 Q2 + // shortage prices + ~30% margin. Sits ~17% under Hetzner's + // $78/module pricing — small-provider positioning. ['label' => '32 GB DDR4-2400 ECC RDIMM (baseline)', 'value' => '32', 'monthly' => 0, 'is_default' => true], - ['label' => '64 GB DDR4-2400 ECC RDIMM', 'value' => '64', 'monthly' => 35.00], - ['label' => '128 GB DDR4-2400 ECC RDIMM', 'value' => '128', 'monthly' => 90.00], - ['label' => '256 GB DDR4-2400 ECC LRDIMM', 'value' => '256', 'monthly' => 195.00], - ['label' => '512 GB DDR4-2400 ECC LRDIMM', 'value' => '512', 'monthly' => 380.00], - ['label' => '1 TB DDR4-2400 ECC LRDIMM', 'value' => '1024', 'monthly' => 580.00], - ['label' => '1.5 TB DDR4-2400 ECC LRDIMM (R640/R740/R740xd only)', 'value' => '1536', 'monthly' => 780.00], + ['label' => '64 GB DDR4-2400 ECC RDIMM', 'value' => '64', 'monthly' => 65.00], + ['label' => '128 GB DDR4-2400 ECC RDIMM', 'value' => '128', 'monthly' => 195.00], + ['label' => '256 GB DDR4-2400 ECC LRDIMM', 'value' => '256', 'monthly' => 260.00], + ['label' => '512 GB DDR4-2400 ECC LRDIMM', 'value' => '512', 'monthly' => 520.00], + ['label' => '1 TB DDR4-2400 ECC LRDIMM', 'value' => '1024', 'monthly' => 1040.00], + // 1.5 TB hides for chassis with features.max_ram_gb < 1536. + ['label' => '1.5 TB DDR4-2400 ECC LRDIMM', 'value' => '1536', 'monthly' => 1560.00], ]); $gen14AllPlanSlugs = ['r440-4lff', 'r540-8lff', 'r640-8sff', 'r740-16sff', 'r740xd-24sff', 'r740xd-12lff', 'r640-10nvme', 'r740xd-24nvme'];