Skip to content

Require explicit pg-sync source URLs#4576

Open
KyleAMathews wants to merge 8 commits into
mainfrom
require-pg-sync-url
Open

Require explicit pg-sync source URLs#4576
KyleAMathews wants to merge 8 commits into
mainfrom
require-pg-sync-url

Conversation

@KyleAMathews

Copy link
Copy Markdown
Contributor

Summary

  • require url for the observe_pg_sync Horton tool and the server pg-sync register route
  • remove the server-side default Electric shape URL fallback from the pg-sync bridge manager
  • fix pg-sync observed stream URLs so relative bridge stream paths are normalized to absolute server URLs before opening the source DB

Testing

  • pnpm vitest run packages/agents/test/observe-pg-sync-tool.test.ts packages/agents-runtime/test/runtime-server-client-pg-sync.test.ts packages/agents-runtime/test/process-wake.test.ts packages/agents-server/test/pg-sync-bridge-manager.test.ts --reporter=basic

@github-actions

github-actions Bot commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Electric Agents Desktop Builds

Build artifacts for commit cd8c467.

Platform Status Artifact
macOS Apple Silicon Passed DMG
macOS Intel Passed DMG
Windows x64 Passed Installer
Linux x64 Passed AppImage / deb

Workflow run

@github-actions

github-actions Bot commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Electric Agents Mobile Build

Local mobile checks ran for commit cd8c467.

The EAS Android preview build was skipped because the mobile-eas-build label is not present.
Add the mobile-eas-build label to this PR to produce an installable preview build.

Workflow run

@codecov

codecov Bot commented Jun 11, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 96.25000% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 56.74%. Comparing base (176bec8) to head (cd8c467).
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
packages/agents-runtime/src/setup-context.ts 75.00% 1 Missing ⚠️
...ckages/agents-server/src/pg-sync-bridge-manager.ts 98.00% 1 Missing ⚠️
packages/agents-server/src/wake-registry.ts 50.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4576      +/-   ##
==========================================
- Coverage   58.35%   56.74%   -1.61%     
==========================================
  Files         370      327      -43     
  Lines       40674    38000    -2674     
  Branches    11553    10953     -600     
==========================================
- Hits        23735    21564    -2171     
+ Misses      16865    16401     -464     
+ Partials       74       35      -39     
Flag Coverage Δ
packages/agents 71.36% <100.00%> (-0.02%) ⬇️
packages/agents-mcp ?
packages/agents-mobile 75.49% <ø> (ø)
packages/agents-runtime 82.49% <94.44%> (+0.02%) ⬆️
packages/agents-server 75.02% <96.55%> (+0.16%) ⬆️
packages/agents-server-ui 6.25% <ø> (ø)
packages/electric-ax 46.42% <ø> (ø)
packages/experimental ?
packages/react-hooks ?
packages/start ?
packages/typescript-client ?
packages/y-electric ?
typescript 56.74% <96.25%> (-1.61%) ⬇️
unit-tests 56.74% <96.25%> (-1.61%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

KyleAMathews and others added 7 commits June 11, 2026 14:05
Exclude per-request metadata (wakeId, principal, tenant) from the
sourceRef hash so re-registrations reuse the same bridge and stream,
and fetch the shape log once before registering so bad URLs fail the
registration with Electric's error instead of dying silently in the
bridge retry loop. Add Horton prompt guidance for the now-required
shape URL.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Electric returns 200 on non-shape paths like its root, so an ok status
alone can't validate a source URL. The probe now requires the
electric-handle header and suggests the /v1/shape path when missing.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.

1 participant