10d0872043
Replace _merge_provider_route's five-case nested conditional with a flat provisioned-wins merge: provider routes claim their hosts outright, manifest routes for unclaimed hosts append unchanged. Token slot assignment moves to a single _assign_token_slots pass over the merged list. Add _route_to_yaml_fields as the single authoritative EgressRoute→YAML mapping, eliminating the risk of EgressRoute and egress_addon_core.Route silently drifting apart when new fields are added. egress_manifest_routes is now a pure lifter with no slot assignment. _merge_provider_route and _find_or_alloc_token_env are removed. Tests updated: conflict-die case removed, upgrade-bare replaced with provider-wins semantics, slot-assignment tests moved to TestSlotAssignment.