Skip to content

Syncserver#3

Merged
loyalpartner merged 8 commits intomasterfrom
syncserver
Apr 16, 2026
Merged

Syncserver#3
loyalpartner merged 8 commits intomasterfrom
syncserver

Conversation

@loyalpartner
Copy link
Copy Markdown
Owner

No description provided.

Single-endpoint sync server handling COMMIT and GET_UPDATES via protobuf.
Uses 92 Chromium proto files compiled with prost-build.

- Auth from X-Sync-User-Email header, fallback to anonymous@localhost
- SQLite with WAL mode, single sync_entities table (no sharding)
- Per-user monotonic version counter for conflict detection
- Nigori keystore passphrase initialization on user creation
- Permanent bookmark nodes (root, bar, other, synced) auto-created
- Encryption keys returned for NEW_CLIENT GetUpdates requests
- Progress tokens: v1,{data_type_id},{version} base64-encoded
- /chrome-sync/command/ mirrors /command/ for direct --sync-url usage
- GET / shows HTML table of current users
- .gitignore covers selfsync.db WAL/SHM files
- CI: fmt check, clippy, tests on push/PR to master
- Dockerfile: multi-stage build, slim debian runtime, /data volume
@loyalpartner loyalpartner merged commit eb78b08 into master Apr 16, 2026
1 check passed
loyalpartner added a commit that referenced this pull request Apr 18, 2026
@loyalpartner loyalpartner deleted the syncserver branch April 18, 2026 01:45
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