Files
npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7andWill Pfleger 0b9eebcbee feat(ci): add relay E2E testing job and persona event tests
The 184 ignored Rust E2E tests in sprout-test-client were never run in
CI — the relay only got exercised indirectly through Playwright. This
adds a dedicated relay-e2e job and shared infra script so relay protocol
correctness is tested directly.

Changes:
- scripts/start-relay-for-tests.sh: shared script that starts docker
  compose services, waits for health, applies schema, builds and starts
  the relay, and polls readiness. Used by both the new relay-e2e job and
  the refactored desktop-e2e-integration job.
- .github/workflows/ci.yml: new relay-e2e job (triggers on crates/**
  changes, ~5 min) that runs all ignored E2E tests against the relay.
  desktop-e2e-integration refactored to use the shared script instead of
  inline infra setup.
- crates/sprout-test-client/tests/e2e_persona.rs: 11 new E2E tests for
  kind:30175 persona events covering publish+query, NIP-33 replacement
  semantics, d-tag validation (empty, missing, too long, uppercase,
  special chars, underscore start), valid slug acceptance, and multiple
  personas per author.

Co-authored-by: Will Pfleger <pfleger.will@gmail.com>
Signed-off-by: Will Pfleger <pfleger.will@gmail.com>
2026-06-10 19:54:53 -04:00
..