Varsayılan güvenli
--apply olmadan apply hâlâ dry-run. Gerçek yazma bir bayrak istiyor ve --limit ya da --ids ile birkaç markaya sınırlanabiliyor; pilot geri kalanından önce birkaç markada çalışıyor.
Search V2 hazırdı. Onu uygun her mağazaya ulaştırmak ayrı bir projeydi. Her sitenin zaten çalıştırdığı loader üzerinden kurulum yapan, tek bir marka sitesine dokunmayan ve varsayılanı dry-run olan bir TypeScript CLI yazdım.
Discover, Plan, ardından Apply --apply ve Verify çalıştırın. Config farkını ve yedeğini görmek ya da geri almak için bir markaya tıklayın.
Bir mağaza scriptini yüzlerce markaya elle kurmak, birinin canlı sitesini bozmak için yüzlerce fırsat demek.
Her markanın kendi arama config'i, kendi widget seti ve bazen koşulsuz çalışan eski araması vardı. Bazı config'ler kapalıydı, bazı arama indeksleri boştu, bazı input seçicileri artık canlı siteyle eşleşmiyordu. Ortak bir durum bayrağını açmak eski aramayı da her ziyaretçi için geri açıyordu.
Aracı tasarlayıp yazdım, pilotu ve ardından tam yayını yaptım, bulduğu tuzakları belgeledim. Mevcut panel endpointleriyle konuşuyor; mağazalarda hiçbir şey değişmedi.
discover her müşteri ID'sini tarar, arama sağlığını kontrol eder, mevcut widgetları listelerplan bir fark üretir, canlıya hiçbir şey göndermezapply --apply verilene kadar dry-run kalır; her markayı yedekler, yazar, geri okurverify config, widget, script host ve arama sonuçlarını bağımsız kontrol ederdeconflict, report ve rollback --confirmMor ton: benim yazdığım kısımlar.
--apply olmadan apply hâlâ dry-run. Gerçek yazma bir bayrak istiyor ve --limit ya da --ids ile birkaç markaya sınırlanabiliyor; pilot geri kalanından önce birkaç markada çalışıyor.
Kayıt endpointi tüm config nesnesini değiştiriyor; araç her zaman okuyor, birleştiriyor ve tam nesneyi gönderiyor. Markanın mevcut CSS'i asla ezilmiyor, eski aramanın CSS'ine dokunulmuyor, kapalı bir marka sessizce açılmıyor.
Eski ve yeni arama aynı durum bayrağını okuyor. V2 için açmak bazı markalarda V1'i tüm ziyaretçilere gösterecekti; bu yol --allow-v1-exposure verilmedikçe kapalı, o markalar ise listeleniyor.
Geri okuma yazmanın gittiğini kanıtlıyor. verify sitenin çalıştığını kanıtlıyor: script host dosyayı gerçekten servis ediyor ve arama endpointi hâlâ ürün döndürüyor. Eski bir widget'tan kopyalanan bir subdomain bir keresinde DNS'te hiç yoktu.
Bazı markalar her sayfada kendi eski arama widget'ını çalıştırıyordu; demo linkinde ikisi aynı input'a bağlanıyordu. deconflict eskisini yalnızca demo linkinde kapatan bir URL kuralı ekliyor; normal ziyaretçi hiçbir fark görmüyor.
Loader widget listesini oturum boyunca cache'liyor; eski bir sekmede açılan test linki hiçbir şey göstermiyor. Pilot tam olarak buna takıldı. README artık sebebiyle birlikte yeni sekmede test etmeyi söylüyor.
Full-stack ve uygulamalı AI rollerine açığım, uzaktan veya hibrit.
Rolü, ekibi ve problemi anlat.