Skip to content

feat(platform-server): use grpc notifications#1372

Merged
vitramir merged 2 commits intomainfrom
noa/issue-1371
Mar 16, 2026
Merged

feat(platform-server): use grpc notifications#1372
vitramir merged 2 commits intomainfrom
noa/issue-1371

Conversation

@casey-brooks
Copy link
Contributor

Summary

  • replace socket notification publishing with gRPC client to notifications service
  • add notifications module/config/env/test coverage and update docs/compose
  • refresh proto generation workflow via buf export

Testing

  • pnpm lint
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 1/8 --reporter=json --outputFile /tmp/vitest-shard-1-8.json
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 2/8 --reporter=json --outputFile /tmp/vitest-shard-2-8.json
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 3/8 --reporter=json --outputFile /tmp/vitest-shard-3-8.json
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 4/8 --reporter=json --outputFile /tmp/vitest-shard-4-8.json
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 5/8 --reporter=json --outputFile /tmp/vitest-shard-5-8.json
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 6/8 --reporter=json --outputFile /tmp/vitest-shard-6-8.json
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 7/8 --reporter=json --outputFile /tmp/vitest-shard-7-8.json
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 8/8 --reporter=json --outputFile /tmp/vitest-shard-8-8.json

Closes #1371

@casey-brooks casey-brooks requested a review from a team as a code owner March 6, 2026 04:13
@casey-brooks
Copy link
Contributor Author

Test & Lint Summary

  • pnpm lint (no errors)
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 1/8 --reporter=json --outputFile /tmp/vitest-shard-1-8.json
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 2/8 --reporter=json --outputFile /tmp/vitest-shard-2-8.json
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 3/8 --reporter=json --outputFile /tmp/vitest-shard-3-8.json
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 4/8 --reporter=json --outputFile /tmp/vitest-shard-4-8.json
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 5/8 --reporter=json --outputFile /tmp/vitest-shard-5-8.json
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 6/8 --reporter=json --outputFile /tmp/vitest-shard-6-8.json
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 7/8 --reporter=json --outputFile /tmp/vitest-shard-7-8.json
  • AGENTS_DATABASE_URL=postgresql://agents:agents@localhost:5443/agents RUN_DB_TESTS=true DOCKER_SOCKET=/var/run/docker.sock DOCKER_RUNNER_SOCKET=/var/run/docker.sock pnpm --filter @agyn/platform-server exec vitest run --shard 8/8 --reporter=json --outputFile /tmp/vitest-shard-8-8.json

Tests: passed 833, failed 0, skipped 0

@casey-brooks
Copy link
Contributor Author

Update

  • Fixed CI lint/typecheck error: packages/platform-server/src/notifications/notifications.publisher.ts now builds PublishRequest via create(PublishRequestSchema, ...) to satisfy $typeName requirement.

Test & Lint Summary

  • pnpm -w lint
  • pnpm --filter @agyn/platform-server run typecheck
  • pnpm --filter @agyn/platform-server exec vitest run tests/graph.socket.gateway.bus.test.ts

Tests: 9 passed, 0 failed, 0 skipped
Lint: no errors

@casey-brooks
Copy link
Contributor Author

Update

  • Rebasing onto origin/main resolved conflicts; kept .bufbuild/ and .devspace in .gitignore and updated the docker compose quick-start line in README.md to include Redis/notifications/notifications-gateway with docker-runner on port 50051.
  • Confirmed proto generation script remains buf export ... && buf generate ... and NOTIFICATIONS_GRPC_ADDR config stays in ConfigService.

Test & Lint Summary

  • /root/.nix-profile/bin/pnpm -w lint
  • /root/.nix-profile/bin/pnpm --filter @agyn/platform-server exec vitest run tests/graph.socket.gateway.bus.test.ts

Tests: 9 passed, 0 failed, 0 skipped
Lint: no errors

@casey-brooks
Copy link
Contributor Author

Update

  • Merged origin/main into noa/issue-1371. .gitignore retains .bufbuild/ and .devspace; README keeps notifications gRPC compose entries plus new main additions (Product Demo + platform-ui devspace docs references).

Test & Lint Summary

  • /root/.nix-profile/bin/pnpm -w lint
  • /root/.nix-profile/bin/pnpm --filter @agyn/platform-server exec vitest run tests/graph.socket.gateway.bus.test.ts

Tests: 9 passed, 0 failed, 0 skipped
Lint: no errors

@casey-brooks
Copy link
Contributor Author

Summary

  • Rebased noa/issue-1371 on main and resolved the README conflict, keeping the compose service list for notifications/redis/gateway.
  • Verified gRPC notifications wiring (NOTIFICATIONS_GRPC_ADDR + Notifications module/client/publisher) with no Redis/HTTP publish paths remaining.
  • Local build completed; compose sanity check failed pulling ghcr.io/agynio/notifications-gateway:edge (manifest unknown) even after GHCR login.

Test & Lint Summary

Commands:

  • pnpm build
  • pnpm lint
  • pnpm test
  • pnpm --filter @agyn/platform-server exec vitest run --reporter=json --outputFile=/tmp/vitest-platform-server.json
  • pnpm --filter @agyn/platform-ui exec vitest run --reporter=json --outputFile=/tmp/vitest-platform-ui.json

Results:

  • Platform-server tests: 750 passed / 28 pending / 0 failed (778 total)
  • Platform-ui tests: 479 passed / 0 pending / 0 failed (479 total)
  • Lint: no errors

@vitramir vitramir added this pull request to the merge queue Mar 16, 2026
Merged via the queue into main with commit 012b14b Mar 16, 2026
7 checks passed
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.

Switch platform-server to new Go notifications service via gRPC (remove direct Redis publisher)

2 participants