Skip to content

Fix relayer jest config and expand watchdog tests - #214

Open
fredericklamar342-prog wants to merge 4 commits into
karagozemin:masterfrom
fredericklamar342-prog:relayer-watchdog-local
Open

Fix relayer jest config and expand watchdog tests#214
fredericklamar342-prog wants to merge 4 commits into
karagozemin:masterfrom
fredericklamar342-prog:relayer-watchdog-local

Conversation

@fredericklamar342-prog

Copy link
Copy Markdown
Contributor

closes #52

What & Why

One or two paragraph summary of the change and the problem it solves. Link the issue with Closes #… or Refs #….

Touched surface

Tick every layer this PR changes:

  • frontend/ — React + Vite bridge UI
  • packages/sdk/ — shared TypeScript SDK
  • coordinator/ — order book + REST/WS service
  • resolver/ — community resolver runner
  • relayer/ — legacy v1 listener / watchdog (changes here need extra scrutiny)
  • contracts/ — Solidity v2 (HTLCEscrow, ResolverRegistry)
  • soroban/ — Stellar Soroban contracts (oversync-htlc, oversync-resolver-registry)
  • docs/ — documentation only
  • CI / config (.github/workflows/, docker, env.example)

Settlement & refund semantics

Critical for SCF / investor review. If any box is checked, the PR must also update docs/REVIEW_RESPONSE.md and link the updated section in the PR description.

  • Bridge settlement semantics changed (claim path, timelock ordering, preimage handling, hashlock type, asset routing)
  • Refund semantics changed (who can refund, who receives refunds, timelock values, refund-address pinning)
  • Settlement-critical invariant changed (e.g. non-custodial guarantee, no-admin-escape-hatch, permissionless refund)
  • None of the above — this PR cannot move, hold, or release user funds

Tests run

Tick the matches your change and paste the outcome below. Commands mirror the matrix in CONTRIBUTING.md.

  • pnpm --filter @oversync/sdk build && pnpm --filter @oversync/sdk exec tsc --noEmit
  • pnpm --filter @oversync/sdk test
  • pnpm --filter @oversync/coordinator exec tsc --noEmit && pnpm --filter @oversync/coordinator test
  • pnpm --filter @oversync/resolver exec tsc --noEmit && pnpm --filter @oversync/resolver test
  • pnpm --filter @oversync/frontend exec tsc --noEmit && pnpm --filter @oversync/frontend test
  • pnpm --filter @oversync/contracts compile && pnpm --filter @oversync/contracts exec hardhat test test/v2/HTLCEscrow.test.ts test/v2/ResolverRegistry.test.ts
  • cd soroban && stellar contract build && cargo test --release
  • (cd contracts && forge test --match-path "test/foundry/*" -v) (Solidity fuzz / invariant)
  • pnpm test:e2e (cross-chain differential harness)
  • node scripts/verify-addresses.mjs — required if addresses, configs, or env.example change
  • node scripts/check-evidence-links.mjs — advisory; required if docs links change

Free-form outcome:

# commands actually run + result (all green / specific failures + how fixed)

UI / evidence artefacts

Required if the PR changes the frontend, observability, dashboards, or any docs that claim status, metrics, or addresses. Otherwise write n/a.

  • Frontend visible change → screenshot or short clip attached (swap flow, refund dialog, history banner, wallet confirm)
  • Coordinator API changecurl snippet + JSON response sample pasted below
  • Metrics / KPI change → updated snapshot in docs/examples/metrics-snapshot.example.json (or new JSON in PR)
  • Status table / README change → updated row(s) pasted below with the source link
  • None of the above — no UI-observable artefact

Secrets, logging, and PII risk

  • No secrets, private keys, RPC credentials, .env content, wallet mnemonics, or preimages added to the repo
  • No new console.* / logger.* line that prints secrets, preimages, signed payloads, or PII
  • No new Vite/build flag that exposes devtools output in production (the VITE_* and esbuild.drop policy still holds)
  • None of the above — explain why this PR cannot be a secrets / logging risk:

Public proof links (SCF / investor evidence)

Only required for SCF tranche PRs or investor evidence packs. Otherwise write n/a.

  • Sepolia Etherscan contract / tx link(s):
  • Stellar Expert contract / tx link(s):
  • Dashboard URL (coordinator /metrics, /health, public Grafana):
  • CI run URL (https://github.com/karagozemin/OverSync/actions/runs/…):
  • Screenshots, screen recordings, or PR-comment artefacts:

Breaking change & rollback

  • Breaking change? Yes / No — describe caller impact, data migrations, revert safety:
  • Migration or feature flag required? Yes / No — describe the path:

Reviewer checklist (for the PR author to self-verify)

  • PR description and code comments are in English
  • Linked issue or milestone
  • No unrelated drive-by changes (reformatting, dep bumps, etc.)
  • Tests touch the same files as the source change
  • PR is reversible: a single git revert restores prior state

@vercel

vercel Bot commented Jun 30, 2026

Copy link
Copy Markdown

Someone is attempting to deploy a commit to the karagoz's projects Team on Vercel.

A member of the Team first needs to authorize it.

@karagozemin

Copy link
Copy Markdown
Owner

Thanks for the PR. I rechecked the merge ref from the maintainer account, but it is not merge-ready yet.

Commands run:

pnpm --filter @oversync/relayer test
pnpm --filter @oversync/relayer build

Results:

sh: vitest: command not found

and the build fails with:

src/refund-watchdog.test.ts(14,68): error TS2307: Cannot find module '@oversync/sdk/logging' or its corresponding type declarations.\n```\n\nThe PR adds a Jest config, but `relayer/package.json` still runs Vitest, and the new test file is included in the relayer TypeScript build without resolving `@oversync/sdk/logging`. Please align the test runner/package deps and make `pnpm --filter @oversync/relayer build` pass.

@karagozemin

Copy link
Copy Markdown
Owner

Thanks for the update. I rechecked the latest merge ref from the maintainer account, but it still is not merge-ready.

Command run:

git diff --check master...pr-214-merge

Result: the command fails before tests/build because relayer/test/relay-submission-tracker.test.ts contains trailing whitespace on essentially every line, starting at line 1.

Please normalize that file line endings/whitespace and push again. After that I will rerun:

git diff --check master...pr-214-merge
pnpm --filter @oversync/relayer test
pnpm --filter @oversync/relayer build

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.

[Wave 6 16/17] Redact secrets from coordinator and resolver logs

2 participants