Skip to content

ci+feat: paketi uc kosucuda calistir, macOS icin universal ikili - #7

Merged
Ercaner1988 merged 2 commits into
mainfrom
ci/extension-smoke-test
Sep 19, 2026
Merged

Ercaner1988 merged 2 commits into
mainfrom
ci/extension-smoke-test

Conversation

@Ercaner1988

@Ercaner1988 Ercaner1988 commented Sep 18, 2026 •

Copy link
Copy Markdown
Owner

Eklenti paketinin macOS ve Linux'ta calistigini bugune kadar kimse dogrulamamisti — ikililer yalnizca derleniyordu. Bu PR iki sey yapiyor: yayinlanacak paketi her PR'da uc sanal kosucuda gercekten calistiriyor, ve macOS icin universal ikili yayinliyor.

1. Duman testi (her PR'da)

release.yml artik PR'larda kuru kosu yapiyor: ayni derleme, ayni paketleme, sonra smoke-test-extension.py:

  • paketi isletim sisteminin kendi unzip'iyle acar (calistirma izni ancak boyle sinanir; Python zipfile Unix izinlerini uygulamaz)
  • manifest'teki komutu calistirir: MCP el sikismasi, arac listesi, salt-okunur status aracinin gercek cagrisi
  • sunucu surumu == manifest surumu, ilan edilen araclar == sunulan araclar

Yukleme adimi yalnizca v* etiketinde calisir. Yerelde kasitli bozulmus uc paket (surum kaymasi, eksik arac, eksik ikili) dogru mesajla dustu.

2. macOS universal ikili

CI kaydi: macOS kosucusu macos-26-arm64, yayinlanan ikili x86_64. Apple Silicon'da bu ancak Rosetta 2 ile calisir; macOS Rosetta'yi varsayilan olarak kurmuyor. Onceki duman kosusu ARM kosucuda gecti, ama bu yalnizca kosucuda Rosetta oldugunu kanitliyordu.

  • x86_64 ve aarch64 ayri derlenip lipo -create ile birlestiriliyor; lipo -archs iki dilimi dogrulamazsa is duser
  • duman testi macOS'ta iki kez: varsayilan kosu arm64 dilimini, SMOKE_ARCH=x86_64 kosusu Intel Mac'lerin alacagi dilimi calistirir
  • install-macos.sh once universal'i, bulamazsa x86_64'u arar — bu dal birlesip v0.1.7 cikana kadar en son surumde universal yok; geri dusus olmazsa kurucu o aralikta kirilirdi (iki durum da gercek release JSON'unda sinandi)
  • INSTALLATION.md'deki elle indirme satiri ikili adini sabitliyordu, kurucuya yonlendirildi
  • surum 0.1.7

Sinirlar

  • Claude Desktop'in kendi aciciyi degil isletim sisteminin unzip'ini kullanir.
  • macOS Gatekeeper sinanmaz: CI'da indirilen dosyaya karantina isareti konmaz.
  • Duman testi status aracini cagirir; memory_index'in gomu modeli yolu (yuzlerce MB indirme) CI'da kosmaz.
  • PR'larda da contents: write tanimli (yukleme icin). Fork PR'larinda token zaten salt-okunura dusuyor; yukleme etiket disinda hic calismiyor.

🤖 Generated with Claude Code

Ercaner1988 and others added 2 commits September 19, 2026 01:41
macOS ve Linux paketlerinin calisip calismadigini bugune kadar kimse
dogrulamamisti; ikililer yalnizca derleniyordu. Bu, dogrulamayi bir
gonullunun makinesine bagimli birakiyordu.

Daha ciddisi CI kaydindan cikti: macOS kosucusu `macos-26-arm64`
(host aarch64-apple-darwin), yayinlanan ikili ise x86_64-apple-darwin
olarak capraz derleniyor ve hic calistirilmiyordu. Apple Silicon bir
Mac'te bu ikili ancak Rosetta 2 ile calisir.

- smoke-test-extension.py: paketi isletim sisteminin kendi unzip'iyle
  acar (calistirma izni ancak boyle sinanir), manifest'teki komutu
  calistirir, MCP el sikismasi + arac listesi + salt-okunur bir aracin
  gercek cagrisi. Ayrica sunucu surumu ile manifest surumunun ve ilan
  edilen araclar ile sunulanlarin esit oldugunu denetler.
- release.yml artik her PR'da da kuru kosu yapiyor: ayni derleme, ayni
  paketleme, duman testi. Yukleme yalnizca v* etiketinde. Bozuk paket
  etiketlenmeden yakalanir.
- rust.yml'deki yinelenen "Build release" adimi kaldirildi.

Yerel dogrulama (Windows): saglam paket gecti; kasitli bozulmus uc
paket (surum kaymasi, eksik arac bildirimi, eksik ikili) dogru mesajla
ve cikis kodu 1 ile dustu. Calistirma izni dali Windows'ta sinanamaz,
onu macOS/Linux kosuculari sinayacak.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Yayinlanan macOS ikilisi yalnizca x86_64'tu. Apple Silicon bir Mac'te
bu ikili ancak Rosetta 2 ile calisir ve macOS Rosetta'yi varsayilan
olarak kurmuyor. Bir onceki commit'in duman testi ARM kosucuda gecti,
ama bu yalnizca kosucuda Rosetta oldugunu kanitliyordu; Rosetta'siz
bir Mac icin hicbir sey soylemiyordu.

- release.yml: macOS'ta x86_64-apple-darwin ve aarch64-apple-darwin
  ayri derlenip `lipo -create` ile birlestiriliyor. `lipo -archs` ile
  iki dilimin de varligi dogrulaniyor, eksikse is duser.
  Varlik adi: claude-code-setup-macos-universal (.mcpb adi degismedi).
- Duman testi macOS'ta iki kez kosuyor: varsayilan kosu arm64 dilimini,
  SMOKE_ARCH=x86_64 kosusu Intel Mac'lerin alacagi dilimi calistiriyor.
- smoke-test-extension.py: SMOKE_ARCH destegi (`arch -<mimari>`);
  macOS disinda verilirse acik hatayla reddediliyor.
- install-macos.sh: once universal, bulamazsa x86_64. Geri dusus sart:
  bu dal birlesip v0.1.7 cikana kadar en son surumde universal yok,
  yalnizca universal arayan kurucu o aralikta Mac'te kirilirdi.
- INSTALLATION.md: elle indirme satirinda ikili adi sabitlenmisti;
  kurucuya yonlendirildi. Kanca kurulumu git deposunda yapilacak
  sekilde ayrildi (ev dizininde zaten atlaniyordu).
- Surum 0.1.7.

Yerel dogrulama: kurucu secim mantigi gercek v0.1.6 JSON'unda x86_64'e,
universal iceren surumde universal'e dustu; Linux ikisinde de dogru.
Windows'ta duman testi 0.1.7 ile gecti; SMOKE_ARCH macOS disinda
reddedildi. lipo ve arm64/x86_64 dilim kosulari yalnizca macOS
kosucusunda sinanabilir.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@Ercaner1988 Ercaner1988 changed the title ci: yayinlanacak eklenti paketini uc sanal kosucuda gercekten calistir ci+feat: paketi uc kosucuda calistir, macOS icin universal ikili Sep 19, 2026
@Ercaner1988
Ercaner1988 merged commit e71bce3 into main Sep 19, 2026
6 checks passed
@Ercaner1988
Ercaner1988 deleted the ci/extension-smoke-test branch September 19, 2026 05:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant