Skip to content

Releases: rucorp/mock-services

mock-services 0.9.1

Choose a tag to compare

@github-actions github-actions released this 17 Oct 00:56
f891297

mock-services 0.9.1 — 2026-10-17

Патч без изменений протокольного поведения адаптеров: политика CI для
тегов-релизов и промо-превью репозитория.

Что нового

  • Промо-превью (og:image): assets/social-preview-ru.png — русскоязычная
    hero-картинка 1280×640 (< 1 МБ) с воспроизводимым typeset-источником
    assets/hero.html (бренд indigo, шрифт Inter). Баннер добавлен в README.md.
    Превью загружается вручную в Settings → Social preview репозитория.

Изменения

  • CI: push тега v* теперь прогоняет джобы test и docker на GitHub-hosted
    ubuntu-24.04 вместо self-hosted CI_RUNNER. Релизный гейт и публикация образа
    больше не зависят от доступности self-hosted раннера. На PR и push в main
    поведение прежнее.

Состав релиза

10 сервисов: tbank-mock, kassa-mock (Ferma), yookassa-mock, atol-mock,
alfa-mock, sber-mock, vtb-mock, first-ofd-mock, kontur-ofd-mock,
taxcom-mock; общее ядро, три compose-файла, Dockerfile, документация и OpenAPI.

Артефакты

  • Архив: mock-services-0.9.1.zip — слепок репозитория на теге (+ .sha256),
    вложения релиза; внутренние документы и служебные скрипты в слепок не попадают
    (.gitattributes export-ignore).
  • Образ: ghcr.io/rucorp/mock-services:0.9.1 — диджест на странице GHCR.
  • Документация: https://axiiom.ru/mock-services/

Полный список изменений — в CHANGELOG.md, раздел [0.9.1].

mock-services 0.9.0

Choose a tag to compare

@github-actions github-actions released this 16 Oct 23:19
14ec919

mock-services 0.9.0 — 2026-10-17

Релиз после наведения порядка в публичном репозитории: внутренние документы
выведены из продукта, добавлены community-файлы, исправлена подсказка в
tbank-mock. Протокольное поведение адаптеров не менялось.

Что нового

  • Community-файлы: .github/pull_request_template.md (единая схема отчёта PR),
    CODE_OF_CONDUCT.md (Contributor Covenant 2.1) и SUPPORT.md — куда обращаться
    по вопросам, безопасности и документации. Community health GitHub: 62% → 87%.
  • Метаданные репозитория: расширено описание, добавлены 20 topics, домашняя
    страница — https://axiiom.ru/mock-services/, включено авто-удаление смерженных
    веток.

Исправления

  • tbank-mock: подсказка HTTP 401 управляющей поверхности больше не ссылается
    на удалённый docs/rfc/RFC-001-multi-tenant-sandboxes.md, а ведёт на SECURITY.md,
    раздел «Изоляция песочниц». Закрыто регресс-тестом.

Состав релиза

10 сервисов: tbank-mock, kassa-mock (Ferma), yookassa-mock, atol-mock,
alfa-mock, sber-mock, vtb-mock, first-ofd-mock, kontur-ofd-mock,
taxcom-mock; общее ядро, три compose-файла, Dockerfile, документация и OpenAPI.

Артефакты

  • Архив: mock-services-0.9.0.zip — слепок репозитория на теге (+ .sha256),
    вложения релиза; внутренние документы и служебные скрипты в слепок не попадают
    (.gitattributes export-ignore).
  • Образ: ghcr.io/rucorp/mock-services:0.9.0 — диджест на странице GHCR.
  • Документация: https://axiiom.ru/mock-services/

Полный список изменений — в CHANGELOG.md, раздел [0.9.0].

mock-services 0.8.0

Choose a tag to compare

@github-actions github-actions released this 16 Oct 10:54
dff0898

mock-services 0.8.0 — 2026-10-16

Первый релиз после большой предрелизной волны: десятый сервис (Такском), финальные волны безопасности, публичная документация на домене компании и чистовые лицензионные шапки.

Что нового

  • Такском — десятый мок-сервис (taxcom-mock, :3109): read-only кабинет/ОФД по API v2 — Login + Integrator-ID → Session-Token, договоры/личные кабинеты, документы за 10 суток с курсором; честные коды ошибок и DX-подсказки.
  • Безопасность: управляющие токены вне URL (заголовки/cookie), hosted-режим fail-closed по умолчанию, graceful shutdown всех сервисов, контейнерный харденинг всех compose-контуров.
  • Документация: публичный сайт — https://axiiom.ru/mock-services/ (источник — этот репозиторий); гайды «интеграция за 10 минут» по всем 10 провайдерам, OpenAPI 3.1.
  • Лицензия: шапки документов приведены к Apache-2.0, добавлен CI-страж; NOTICE и SPDX — без изменений.
  • CI/релиз: полный гейт — для PR с кодом и тегов; релиз по тегу собирает образ (GHCR), архив-слепок и ноты.

Состав релиза

10 сервисов: tbank-mock, kassa-mock (Ferma), yookassa-mock, atol-mock, alfa-mock, sber-mock, vtb-mock, first-ofd-mock, kontur-ofd-mock, taxcom-mock; общее ядро, три compose-файла, Dockerfile, документация и OpenAPI.

Артефакты

  • Архив: mock-services-0.8.0.zip — слепок репозитория на теге (+ .sha256), вложения релиза.
  • Образ: ghcr.io/rucorp/mock-services:0.8.0 — диджест на странице GHCR.
  • Документация: https://axiiom.ru/mock-services/

Полный список изменений — в CHANGELOG.md, раздел [0.8.0].

v0.7.0 — стейджинг-стенд одной командой, runtime-образ без dev-скриптов

Choose a tag to compare

@bestdeejay-design bestdeejay-design released this 14 Oct 17:24
368e3a4

mock-services — тестовые моки банков и касс РФ по официальным протоколам

Публичный тестовый контур для интеграторов: имитирует банк-эквайринг и облачные кассы/ОФД
по официальным протоколам, чтобы тестировать платёжную и фискальную интеграцию до договора
с провайдером
— с честными схемами, кодами ошибок, сценариями отказов, виртуальными часами
и изоляцией песочниц. Ноль зависимостей (Node ≥ 18), образ на Node 22, Apache-2.0.

Что внутри (9 адаптеров)

Сервис Порт Что имитирует
tbank-mock 3100 Т-Банк эквайринг: Init/Confirm/Cancel, СБП QR, рекурренты, Мультирасчеты (acqapi), чарджбэки e2e
kassa-mock 3101 Облачная касса Ferma: полная матрица 54-ФЗ (продажи/возвраты/коррекции, авансы, маркировка, очередь ОФД, смены ККТ, Z-отчёты)
yookassa-mock 3102 ЮKassa REST /v3: Basic Auth + Idempotence-Key, two-stage платежи, возвраты, confirmation-страница, вебхуки
atol-mock 3103 АТОЛ Онлайн direct API v4: ФФД 1.05, шесть операций фискализации, идемпотентность, callback
alfa-mock 3104 Альфа-Банк интернет-эквайринг REST: register/deposit/reverse/refund, ACS 3DS1/3DS2, GET-callback с HMAC-SHA256
sber-mock 3105 Сбербанк Ecom REST: JSON-шлюз, карта/ACS, callback POST без подписи
vtb-mock 3106 ВТБ SMB E-commerce: OAuth 2.0, orders/refunds, десятичные рубли, callback {type, object}
first-ofd-mock 3107 Первый ОФД (облачная касса OKassa): getToken → Bearer, асинхронная очередь чеков
kontur-ofd-mock 3108 Контур.ОФД: чтение фискальных документов (Sid + API key), пагинация, копейки

В каждом адаптере: сценарии отказов (X-Mock-Scenario), виртуальные часы (/mock/time),
мульти-песочницы (RFC-001), журнал «как мок понял ваш запрос» (/admin/journal),
OpenAPI 3.1 (/openapi.json), DX-ошибки «код + поле + подсказка».

Как запустить

Требуется Docker (или Node ≥ 18 без Docker — npm run start:<сервис> из репозитория).

# 1. Скачать образ (тег; для воспроизводимости — digest)
docker pull ghcr.io/rucorp/mock-services:0.7.0
docker pull ghcr.io/rucorp/mock-services@sha256:f877d3d9ebae35e36cda98573046aca5f85c0103b737856b94a04b5e45ab2484

# 2а. Полный стенд из образа — все 9 сервисов (файл из тега релиза)
curl -fsSLO https://raw.githubusercontent.com/rucorp/mock-services/v0.7.0/docker-compose.include.yml
docker compose -f docker-compose.include.yml --profile mock up -d

# 2б. Один сервис одной командой
docker run -p 3100:3100 ghcr.io/rucorp/mock-services:0.7.0 node services/tbank-mock/server.js

# 2в. Лёгкий стенд «банк + касса» для стейджинга (tbank :3100 + Ferma :3101)
curl -fsSLO https://raw.githubusercontent.com/rucorp/mock-services/v0.7.0/docker-compose.staging.yml
docker compose -f docker-compose.staging.yml up -d

# 3. Проверить: http://localhost:3100/health (банк), http://localhost:3101/healthz (касса)

По умолчанию порты слушают только 127.0.0.1. Перед размещением на общем хосте обязательно
задайте MOCK_OPERATOR_TOKEN/MOCK_ADMIN_TOKEN и прочитайте SECURITY.md — все креды в
дефолтах синтетические и только для тестов.

Где документация

  • Интеграция «за 10 минут» по каждому провайдеру: docs/integration/ (tbank-eacq, ferma-ofd, yookassa, atol, alfa, sber, vtb, first-ofd, kontur-ofd)
  • README сервисов (маршруты, env-переменные, границы мока): services/<имя>-mock/
  • Общий README (быстрый старт, матрица возможностей, дорожная карта): README.md
  • OpenAPI 3.1 — в образе по /openapi.json каждого сервиса и в docs/openapi/
  • Безопасность: SECURITY.md

Что нового в 0.7.0 (относительно 0.6.0)

  • Added: docker-compose.staging.yml (#107) — самодостаточный стенд «банк + касса» из pinned-образа одной командой, без клонирования репозитория.
  • Added: девятый адаптер kontur-ofd-mock :3108 (#97) — Контур.ОФД, чтение фискальных документов.
  • Changed: runtime-образ без dev-скриптов (#106) — из scripts/ в образе только healthcheck; selftest'ы, протоколы, integration-гайды и OpenAPI в образе остались.
  • Fixed: приоритет X-Sandbox-Token/X-Owner-Token над Authorization: Bearer в owned-режиме (#98) — исправлены 401 у адаптеров, чей контракт сам использует Bearer.
  • Changed: CI — docker-джоб на self-hosted раннере с порт-ремапом 3910–3917, закрыт MS-22: MOCK_*_PUBLIC_BASE_URL следует за хост-портом (#103).

Полный список — CHANGELOG.md.

Участие и правила для ИИ-агентов

  • Как внести вклад: CONTRIBUTING.md — баг-репорт, расхождение с протоколом провайдера, новый адаптер.
  • Правила для ИИ-агентов (Arena, Claude Code и др.): AGENTS.md — обязательные прогоны, стили, что нельзя ломать.
  • Баги и расхождения с протоколом — через шаблоны issues.

Версионирование

SemVer, Keep a Changelog. Тег 0.7.0 мутабельный —
для прод-пинов используйте digest (см. «Обновление релиза» в CONTRIBUTING.md).
Протоколы воспроизводятся по публичной документации провайдеров; товарные знаки принадлежат их владельцам.