Skip to content

refactor(ci): composite action для npm-publish кроків пакетів - #201

Merged
vitaliytv merged 3 commits into
mainfrom
claude/split-workflow-npm-8ef18f
Jul 24, 2026
Merged

refactor(ci): composite action для npm-publish кроків пакетів#201
vitaliytv merged 3 commits into
mainfrom
claude/split-workflow-npm-8ef18f

Conversation

@vitaliytv

Copy link
Copy Markdown
Member

Summary

  • Виносить повторювані JS-DevTools/npm-publish@v4.1.5 кроки для 8 з 9 пакетів (llm-lib platform-пакети + 5 плагінів) у новий composite action .github/actions/publish-npm-package.
  • Крок Publish package (npm/package.json) лишається прямим uses: JS-DevTools/npm-publish@v4.1.5 — цього вимагає канонічна policy-перевірка npm_module.npm_publish_yml (deep-subset проти шаблону).
  • Розбиття на окремі workflow-файли по кожному npm-пакету свідомо не робилось: OIDC trusted publishing на npm привʼязаний до імені файлу workflow (n-ga.mdc), тож новий файл на пакет зламав би автентифікацію публікації, доки не переналаштувати trusted publisher на npmjs.org для кожного нового імені.
  • ID кроків (steps.publish-*), continue-on-error та подальші if-умови (push release-коміту, fail-gate) не змінені — поведінка identична, лише прибрано дублювання.

Test plan

  • npx @7n/rules lint --no-fix — чисто, без порушень.
  • Наступний push у npm/**/llm-lib/**/plugins/** на main підтвердить, що composite action коректно публікує пакети (перевірити перший реальний прогін npm-publish після мержу).

🤖 Generated with Claude Code

vitaliytv and others added 3 commits July 24, 2026 11:07
…типологія 1/2a/2b/3, задачі T1-T10

Фіксує рішення brainstorm-сесії: три копії тір/ACP-логіки (llm-lib JS,
llm-cascade Rust, tauri-components) зводяться до одного Rust-крейта
llm-lib (нині llm-cascade) з napi-проєкцією для Node і tauri-командами
для webview. Типологія викликів: 1 ACP (cursor/codex/pi), 2a OpenAI-
сумісний sync, 2b batch (v1 — емуляція, перший споживач doc-files),
3 pi-npm (Node-only). MIN/AVG/MAX — спільний Tier-інтерфейс усіх типів.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Дублювання 8 з 9 JS-DevTools/npm-publish кроків у npm-publish.yml
винесено в .github/actions/publish-npm-package — окремий workflow-файл
на пакет неможливий, бо OIDC trusted publishing на npm привʼязаний до
імені файлу workflow. Крок publish npm/package.json лишився прямим
uses:, бо канонічна npm_publish_yml policy-перевірка вимагає саме його.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…амість переліку id

Два 9-умовні if (push release-коміту, fail-gate) замінено одним кроком
Collect publish outcomes, що читає toJSON(steps) і фільтрує id з
префіксом "publish-". Новий пакет тепер автоматично враховується в
push/fail-gate — не треба синхронно правити дві умови й error-message
при кожному додаванні/видаленні publish-кроку.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@vitaliytv
vitaliytv merged commit a402d16 into main Jul 24, 2026
7 checks passed
@vitaliytv
vitaliytv deleted the claude/split-workflow-npm-8ef18f branch August 15, 2026 04:38
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