Files
Bridge-and-Join-s/docs/tasks
fontvielle 1cf069b55b feat(crypto-service): gRPC-каркас сервиса криптографии (КриптоПро JCP)
- services/crypto-service/proto/crypto.proto — protobuf-контракт VerifyXMLDSig/SignXMLDSig/Health, package ru.zetit.bridgeandjoins.crypto.v1
- services/crypto-service/build.gradle.kts — Gradle Java 21 + protobuf-плагин + shadowJar
- services/crypto-service/src/main/java/.../CryptoServer.java — точка входа на UDS (Netty Epoll)
- services/crypto-service/src/main/java/.../CryptoServiceImpl.java — gRPC-биндинг
- services/crypto-service/src/main/java/.../{Verify,Sign,Health}Handler.java — заглушки операций
- services/crypto-service/src/main/java/.../KeystoreProvider.java — абстракция cryptopro/validata/vipnet/stub
- services/crypto-service/Dockerfile — Liberica JDK 21 → shadowJar → slim
- internal/cryptocli/client.go — Go-клиент по UDS, реализует m2mcore.CryptoVerifier (M1 stub)
- internal/cryptocli/client_test.go — тесты на доступность сокета и ErrNotImplemented
- deploy/docker-compose/docker-compose.yml — добавлен сервис crypto-service с UDS-volume

Реальная криптография КриптоПро JCP подключается после получения
лицензии и jar (положить в services/crypto-service/libs/jcp.jar) и
открытия Maven Central через прокси zetit (для grpc-java/santuario).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 00:58:10 +03:00
..

docs/tasks — задачи разработки

Здесь лежат готовые промпты для Claude Code, выполняемые в порядке PR-1 → PR-N. Каждая задача — самостоятельный осмысленный PR в main.

Архитектурный контекст и обоснование решений — в docs/architecture/plan.md (полный план проекта) и docs/architecture/overview.md (краткая выжимка).

Очередь задач

PR Файл Статус Зависит от
PR-1 PR-1-go-models-m2m.md выполнено
PR-2 PR-2-fansy-ddl.md выполнено — (параллельно с PR-1)
PR-3 PR-3-lk-openapi.md выполнено — (параллельно с PR-1)
PR-4 PR-4-m2m-core-skeleton.md выполнено PR-1
PR-5 PR-5-nsd-adapter-skeleton.md выполнено (каркас) PR-1, PR-4
PR-6 PR-6-crypto-service-skeleton.md выполнено (скелет) PR-1

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

На dev-ВМ под dev, в корне репо:

cd /srv/dev/Bridge-and-Join-s
git pull
claude

В сессии Claude Code:

Прочитай docs/tasks/PR-1-go-models-m2m.md и выполни задачу полностью. По завершении сделай commit и push в main (или открой MR, если так принято), обнови статус задачи в docs/tasks/README.md с «готово к запуску» на «выполнено» с указанием sha коммита.

Соглашения

  • Без эмодзи в коде и комментариях.
  • Комментарии в коде — на русском, имена типов и полей — на английском как в XSD/контрактах.
  • Каждый PR проходит make ci зелёным.
  • Перед коммитом — go mod tidy, make fmt, make lint.
  • Сообщение коммита: <тип>(<область>): <короткое описание> + расшифровка в теле.
  • Документация изменений — в README соответствующего модуля (internal/<...>/README.md).