fix(ci): tag-mt-release.yml явно тригерить release-mt.yml - #12
Merged
Conversation
…sion guard) Живий тест на mt-v0.1.2 показав: push тега через GITHUB_TOKEN НЕ породжує подію `push: tags:` для інших workflow — навмисний anti-recursion guard GitHub Actions. release-mt.yml тому не запускався автоматично; довелось тригерити вручну (gh workflow run --ref mt-v0.1.2). Додано явний `gh workflow run release-mt.yml --ref <tag>` одразу після push тега (permissions: actions: write) — замикає повний ланцюжок merge → bump → tag → release без ручного втручання. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Другий реальний баг з того самого live-fire тесту (mt-v0.1.2): build-napi для x86_64-unknown-linux-musl падав з "cannot produce cdylib ... does not support these crate types" — musl-таргет за замовчуванням fully-static (crt-static), а .node napi-аддон — це завжди динамічна бібліотека (dlopen з Node/Bun), яку статичний musl не підтримує. CLI-бінарник (crates/mt) цей самий таргет навпаки обирав САМЕ заради crt-static (без залежності від системного libc) — тож флаг вимикається лише в кроці build-napi, не зачіпає збірку CLI. Перевірено локально: `RUSTFLAGS="-C target-feature=-crt-static" cargo zigbuild --release --target x86_64-unknown-linux-musl -p mt-napi` — компілюється й лінкується чисто, результат — валідний ELF shared object (macOS-нога build-napi в тому самому прогоні впала не через цю причину, а через `fail-fast: true`, що скасував її після падіння musl-ноги). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Два реальні баги, знайдені живим тестом повної автоматики на релізі
mt-v0.1.2(перший реальний прогінtag-mt-release.ymlпісля мерджу #11):tag-mt-release.ymlне тригеривrelease-mt.yml. Push тега черезGITHUB_TOKENне породжує подіюpush: tags:для інших workflow (anti-recursion guard GH Actions). Фікс: явнийgh workflow run release-mt.yml --ref <tag>одразу після push тега (permissions: actions: write).build-napiпадав на musl-таргеті.x86_64-unknown-linux-muslза замовчуванням fully-static (crt-static) і не підтримуєcdylib— а napi-аддон (.node) завжди динамічна бібліотека. Фікс:RUSTFLAGS: -C target-feature=-crt-staticлише в кроціbuild-napi(CLI-білд той самий таргет навпаки обирав заради crt-static — не займаємо).Test plan
gh workflow runпідтвердив причину feat: crates/mt-protocol-check — smoke-звʼязок зі специфікацією nitra/mt #1;cargo zigbuildлокально з новимRUSTFLAGSпідтвердив причину feat: специфікація читабельна в проєкті через npm-залежність @7n/mt #2 — компілюється й лінкується в валідний ELF shared object)crates/**🤖 Generated with Claude Code