release: parser2 1.1.0 + ship-reader 0.2.0 (полный SHiP action_trace) #3

Merged
ant merged 5 commits from dev into main 2026-05-27 06:36:19 +00:00
Owner

Промоушн dev → main. Merge запускает release.yml: публикация в npm (OIDC trusted publishing, без токенов), тег v1.1.0, GitHub Release, Docker-образ dicoop/parser2.

Что релизится

  • @coopenomics/parser2 1.0.3 → 1.1.0 и @coopenomics/coopos-ship-reader → 0.2.0: ActionEvent теперь несёт полный SHiP action_trace — transaction_id, creator_action_ordinal, context_free, elapsed, console, account_ram_deltas, receipt.auth_sequence. Нужно потребителям (ledger2 cross-link родительского apply по transaction_id+action_ordinal; blockchain-explorer receipt/ram/console/elapsed). Поля извлекаются из SHiP, без заглушек. (PR #1)
  • CI: интеграционный job доведён до зелёного на self-hosted DinD-раннере (docker cp вместо bind-mount, нода в сети job-контейнера по IP, Redis по имени сервиса). (PR #2)

Проверки

  • Полный конвейер зелёный на dev (прогон 187) и на PR #2 (186): lint/typecheck/unit/integration/build. Интеграция отрабатывает end-to-end против живой ноды + SHiP + Redis.
  • 256 unit-тестов зелёные.
Промоушн dev → main. **Merge запускает release.yml**: публикация в npm (OIDC trusted publishing, без токенов), тег v1.1.0, GitHub Release, Docker-образ dicoop/parser2. ## Что релизится - **@coopenomics/parser2 1.0.3 → 1.1.0** и **@coopenomics/coopos-ship-reader → 0.2.0**: ActionEvent теперь несёт полный SHiP action_trace — transaction_id, creator_action_ordinal, context_free, elapsed, console, account_ram_deltas, receipt.auth_sequence. Нужно потребителям (ledger2 cross-link родительского apply по transaction_id+action_ordinal; blockchain-explorer receipt/ram/console/elapsed). Поля извлекаются из SHiP, без заглушек. (PR #1) - **CI**: интеграционный job доведён до зелёного на self-hosted DinD-раннере (docker cp вместо bind-mount, нода в сети job-контейнера по IP, Redis по имени сервиса). (PR #2) ## Проверки - Полный конвейер зелёный на dev (прогон 187) и на PR #2 (186): lint/typecheck/unit/**integration**/build. Интеграция отрабатывает end-to-end против живой ноды + SHiP + Redis. - 256 unit-тестов зелёные.
claude added 4 commits 2026-05-26 16:13:50 +00:00
feat(events): полный SHiP action_trace в ActionEvent (transaction_id, creator_action_ordinal, receipt.auth_sequence, …) (#1)
CI / Lint (push) Successful in 9m20s
CI / Typecheck (push) Failing after 11m9s
CI / Unit tests (push) Has been skipped
CI / Integration tests (push) Has been skipped
CI / Build (push) Has been skipped
fce498ce45
ci: перезапуск прогона на dev — проверка после очистки диска раннера
CI / Lint (push) Successful in 10m48s
CI / Typecheck (push) Successful in 9m32s
CI / Unit tests (push) Successful in 9m46s
CI / Integration tests (push) Failing after 17m48s
CI / Build (push) Has been skipped
9f21c61a75
Прогон 182 упал на стадии cache-restore/install (инфра, не код):
typecheck локально зелёный, паритет пакетов с dev подтверждён.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
ci: поднимать ноду через docker cp вместо bind-mount (DinD)
CI / Lint (push) Successful in 9m26s
CI / Typecheck (push) Successful in 9m28s
CI / Unit tests (push) Successful in 9m33s
CI / Build (push) Has been skipped
CI / Integration tests (push) Failing after 13m2s
d575da529b
Раннер — docker-in-docker (docker.sock хоста в job-контейнере), поэтому
пути bind-mount (-v) резолвятся на ФС хоста: ни mktemp, ни workspace демону
не видны → монтировался пустой каталог, nodeos падал с 'genesis file does
not exist'. Конфиг теперь кладём в контейнер через docker cp (tar по API,
от путей хоста не зависит), config-dir=/mnt/cfg (docker cp не создаёт
родителей, а /mnt/dev/config в образе нет). Проверено локально: chain API
get_info + SHiP 101 Switching Protocols.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
ci: корректная интеграция на DinD-раннере (docker cp + сеть jobа + redis по имени) (#2)
CI / Lint (push) Successful in 9m22s
CI / Typecheck (push) Successful in 9m27s
CI / Unit tests (push) Successful in 9m34s
CI / Integration tests (push) Successful in 9m41s
CI / Build (push) Successful in 9m28s
CI / Typecheck (pull_request) Has been cancelled
CI / Unit tests (pull_request) Has been cancelled
CI / Integration tests (pull_request) Has been cancelled
CI / Build (pull_request) Has been cancelled
CI / Lint (pull_request) Has been cancelled
37efb4834e
Конфиг ноды через docker cp, нода в сети job-контейнера по IP, Redis по имени сервиса. Полный конвейер зелёный (integration 1 passed против живой ноды + SHiP + Redis).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
claude added 1 commit 2026-05-26 16:17:15 +00:00
ci: запускать только на pull_request, убрать триггер push
CI / Lint (pull_request) Successful in 9m21s
CI / Typecheck (pull_request) Successful in 9m29s
CI / Unit tests (pull_request) Successful in 9m32s
CI / Integration tests (pull_request) Successful in 9m43s
CI / Build (pull_request) Successful in 9m31s
05d413b37f
Прогон на push в dev/main дублировал проверку, уже сделанную на PR, и жёг
по ~47 мин на нагруженном раннере. Оставляем только pull_request (main, dev):
ветки в эти ветки попадают через PR, который и валидируется; релиз main
триггерит отдельный release.yml.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
ant approved these changes 2026-05-27 06:36:12 +00:00
ant merged commit 677dc35bde into main 2026-05-27 06:36:19 +00:00
Sign in to join this conversation.