Commit Graph

114 Commits

Author SHA1 Message Date
cyph3rasi b46be5c076 Reconcile the accepted safe federation helper with E2EE integration hardening and complete PIN-based encrypted DMs
Hop-State: A_06FPC0CGS3F7SJG3BGW0YF0
Hop-Proposal: R_06FPC0BK6YEV7XASNM7C908
Hop-Task: T_06FPAWA3279RBMJAR0BHM10
Hop-Attempt: AT_06FPBZWSBFTB9B5YH9JY9QR
2026-07-15 06:40:06 -07:00
cyph3rasi c1f3afa103 Show the liked post in notifications with text or media preview
Hop-State: A_06FPB5RGJ37K5NPB79MT66G
Hop-Proposal: R_06FPB5QJB3W279N6JSGB8R0
Hop-Task: T_06FPB4PW583MAWM13VA1VT8
Hop-Attempt: AT_06FPB4PW5A561YFQGJBWW1G
2026-07-15 04:43:46 -07:00
cyph3rasi 93be1cffd8 Fix repeating Home feeds with timestamp cursors across local and swarm sources, remote profile pagination, duplicate filtering, and in-flight request guards.
Hop-State: A_06FPACHVKP3PTEY7DT6NW1R
Hop-Proposal: R_06FPACGSH34JXPKH7QHAXAR
Hop-Task: T_06FPABDPSJFCRPZSG0PXS9G
Hop-Attempt: AT_06FPABDPSG9CRMFEZ4WC35R
2026-07-15 02:53:38 -07:00
cyph3rasi 6dd3379fb4 Allow captionless media posts while rejecting truly empty posts
Hop-State: A_06FPA2RFGPJ3QTNYV64F90R
Hop-Proposal: R_06FPA2PG7XQ9EJHPV0AMJHG
Hop-Task: T_06FPA1X78BHAFBEY6GBDNT0
Hop-Attempt: AT_06FPA1X78BRF2NXD1SDAYC0
2026-07-15 02:10:51 -07:00
cyph3rasi 848f6f93e0 Make every Synapsis installation register its exact Stuffbox callback automatically, persist the returned public client identity through PKCE, and remove manual operator client setup.
Hop-State: A_06FP9ZHD1XSYW28M9X8V7QR
Hop-Proposal: R_06FP9ZFX5NN6M3YRB1XHX2R
Hop-Task: T_06FP9XCTDAAN1SZZVBD5G5R
Hop-Attempt: AT_06FP9XCTDBN2JFGK1XC6830
2026-07-15 01:56:47 -07:00
cyph3rasi e1a7f5018f Show NSFW-node posts to authenticated local members in Curated and Swarm feeds
Hop-State: A_06FP9V8EJ8CX3VM4D7DDZJR
Hop-Proposal: R_06FP9V7H6GNGX6CFBQN8HER
Hop-Task: T_06FP9TA4HBBMJPF6SDEMEC0
Hop-Attempt: AT_06FP9TA4HBQJXX3KT14FYN0
2026-07-15 01:38:05 -07:00
cyph3rasi 7f8a97ffe2 Add audio attachments with a paperclip composer control and a styled timeline player
Hop-State: A_06FP9RVYP3SNM80AM7SMF98
Hop-Proposal: R_06FP9RTB5CCV1SZR9B7YSY0
Hop-Task: T_06FP9QHMNTRHD9BZ3B4BVMG
Hop-Attempt: AT_06FP9QHMNV944FQ20714908
2026-07-15 01:27:38 -07:00
cyph3rasi b291c5a453 Blur NSFW profile avatars and banners unless the viewer has enabled NSFW
Hop-State: A_06FP9DH64R0TWDEQST5Z460
Hop-Proposal: R_06FP9DF1AKH8Z9GA7AD24G0
Hop-Task: T_06FP9B65YW8Z4VM9386KDB8
Hop-Attempt: AT_06FP9B65YZ94YY9QS6C6Q38
2026-07-15 00:38:06 -07:00
cyph3rasi b14be97965 Make Stuffbox linking resilient to cross-origin popup isolation and stale callbacks
Hop-State: A_06FP8WHY25K99094H3X60A8
Hop-Proposal: R_06FP8WGCVDDG61H0VZ1XQJR
Hop-Task: T_06FP8V5D2HSJG08NRN6VS3G
Hop-Attempt: AT_06FP8V5D2KATGJNV2M2SGRR
2026-07-14 23:23:56 -07:00
cyph3rasi 1db2933758 Fix NSFW settings by signing client mutations and handling locked identities
Hop-State: A_06FP8RGGWKVFCFAHNJBQWT0
Hop-Proposal: R_06FP8RG166W8E071QG1PYWG
Hop-Task: T_06FP8QVS84N3BR04V6F3GJG
Hop-Attempt: AT_06FP8QVS87X77VCAYKNHKF0
2026-07-14 23:06:16 -07:00
cyph3rasi 1427df4bdc Restrict public swarm participation and propagation to real public ICANN domains
Hop-State: A_06FP8GM0PKJTMF45B7016J0
Hop-Proposal: R_06FP8GKFXXZG84ETVCPS5ZG
Hop-Task: T_06FP8F45T3G4Z4ESW9NZQQR
Hop-Attempt: AT_06FP8F45T3QS81M2ZM4SJ3G
2026-07-14 22:31:47 -07:00
cyph3rasi 988bd8ab38 Prevent email autofill as display name and autosave profile media
Hop-State: A_06FP8EYP9H40CXQH16XPSN8
Hop-Proposal: R_06FP8EY0KW03D22K71DN4KG
Hop-Task: T_06FP8DNXSH7CAHXCHDZ2Z1R
Hop-Attempt: AT_06FP8DNXSKPDEVNXEZRQ5W8
2026-07-14 22:24:30 -07:00
cyph3rasi 67b96d6725 Fix Stuffbox popup completion and preflight storage before file selection
Hop-State: A_06FP87Y83XVM00YY2RB0X2G
Hop-Proposal: R_06FP87XN1TX5B0CW1ZFDEK8
Hop-Task: T_06FP86NZGXSMEX63FZDAS70
Hop-Attempt: AT_06FP86NZGYZEGPH937G3WK8
2026-07-14 21:53:52 -07:00
cyph3rasi 9f0bfb59ab Add Stuffbox account connection, encrypted token lifecycle, direct media uploads, storage settings, and S3 fallback
Hop-State: A_06FP7VQ2F5KZQAY57YEBZV8
Hop-Proposal: R_06FP7VPDD7MJH2Z0013D7SR
Hop-Task: T_06FP7QPNG91NT6WBGJD5MJG
Hop-Attempt: AT_06FP7QPNGAEEAEHP3Q7CNEG
2026-07-14 21:00:27 -07:00
cyph3rasi 752298a405 Defer user-owned S3 setup until first media upload
Hop-State: A_06FP6DP9ENXP2WBSR2YPNA8
Hop-Proposal: R_06FP6DM6S5P96EFX90PH2F8
Hop-Task: T_06FP6C52Z3JHQBQ5XNNHZ3R
Hop-Attempt: AT_06FP6C52Z14V6CZJQTJN4PR
2026-07-14 17:39:22 -07:00
cyph3rasi 0ecb622565 Reconcile validated Turso runtime fix with republished main history
Hop-State: A_06FP6A2CG8PVBRDVQ5WGCN0
Hop-Proposal: R_06FP6A0YW23RY0N7Z5M8DW0
Hop-Task: T_06FP67JVF4BHPYKKC37XKQ8
Hop-Attempt: AT_06FP69RZ96ZMNF9Y5S02MT0
2026-07-14 17:23:33 -07:00
cyph3rasi 60f7dba46c Migrate Synapsis to embedded Turso
CI / smoke (push) Has been cancelled
2026-07-14 15:50:12 -07:00
cyph3rasi 21258edd95 Replace PostgreSQL and Docker deployment with embedded Turso, Drizzle relational queries v2, native systemd deployment on port 43821, and fresh SQLite migrations.
Hop-State: A_06FP5KEDBTB4A9ZT7QB498G
Hop-Proposal: R_06FP5KDWMCKVVMQZT4MVZ28
Hop-Task: T_06FP5DZ7T0G45FG93PT90B8
Hop-Attempt: AT_06FP5DZ7T0PKQW99V27JCV8
2026-07-14 15:44:42 -07:00
cyph3rasi b4a9d82d05 Add docker publish flow, node blocklist & API updates
Replace docker/metadata GH Action with a docker-publish.sh driven workflow (supports auto-versioning, extra tags, multi-arch builds and optional builder). Update docs and READMEs to use the updater and new publish flow. Add server-side swarm/node blocklist support and admin nodes API. Improve auth endpoints (me, logout, switch, session accounts) and support account switching. Extend bots API to support custom LLM provider and optional endpoint. Enforce node blocklist on chat send/receive, refactor link preview handling into dedicated preview modules, and enhance notifications and posts like/repost handlers to accept both signed actions and regular auth flows. Misc: remove admin update UI details, add helper libs (media previews, node-blocklist, reposts, notifications, etc.), and minor housekeeping (pyc, workflow tweaks).
2026-03-10 12:40:05 -07:00
cyph3rasi 044196cfa7 Add auto updates and tighten reply feeds 2026-03-08 19:22:18 -07:00
cyph3rasi 5f21ea8e5d Fix reply consistency and source validation 2026-03-08 18:29:42 -07:00
cyph3rasi 98359886df Fix remote likes, notification reads, and profile tabs 2026-03-08 00:13:14 -08:00
cyph3rasi c5984145dc Fix swarm interaction and reply identity verification 2026-03-07 23:47:17 -08:00
cyph3rasi 830c062fa1 Fix swarm replies and interaction verification 2026-03-07 22:18:16 -08:00
cyph3rasi 1b0b3d8d52 Fix federation flows and add versioned updater 2026-03-07 21:55:55 -08:00
cyph3rasi 5d524a0354 Fix federated interactions and reply threads 2026-03-07 21:27:22 -08:00
cyph3rasi 1e2da4f2da Fix swarm signature verification payloads 2026-03-07 21:03:47 -08:00
cyph3rasi 853c564755 Fix swarm bootstrap for logo-less nodes 2026-03-07 20:54:30 -08:00
cyph3rasi 2acebc15a5 Fix node asset cache busting 2026-03-07 20:32:30 -08:00
cyph3rasi 17baf8e4f0 Fix repost state drift and document workflow 2026-03-07 19:47:49 -08:00
cyph3rasi 28eb46d653 Make user media uploads session-backed 2026-03-07 18:14:02 -08:00
cyph3rasi 70e6b6fdf6 Remove shared storage and restore user-owned uploads 2026-03-07 17:03:50 -08:00
Christomatt a686db38b0 Docker hardening + first-run fixes 2026-02-05 02:49:34 +01:00
Christomatt 38ddbf8bc1 feat: Introduce runtime configuration for domain and enhance S3 storage settings with public base URL and Contabo support. 2026-02-03 01:27:46 +01:00
Christomatt 90dfd62434 feat: store node logo/favicon in postgres instead of S3
- Add logoData and faviconData columns to nodes table
- Create /api/admin/node/upload endpoint for direct DB storage
- Create /api/node/logo and /api/node/favicon endpoints to serve images
- Update admin page to use new upload endpoint
- Remove dependency on admin's personal S3 storage for node assets
2026-02-01 16:29:39 +01:00
Christomatt 0cea2e9e1f fix: type cast for storageEndpoint 2026-02-01 05:04:30 +01:00
Christomatt c0d077e587 fix: use nullish coalescing for storageEndpoint 2026-02-01 04:33:02 +01:00
Christomatt 13b38f0a7b fix: bot avatar generation - decrypt credentials before passing to S3 2026-02-01 04:16:42 +01:00
Christomatt 4323ae90f8 chore: remove outdated install wizard 2026-02-01 03:26:03 +01:00
Christomatt 8ea7fb75eb fix: type error - storageEndpoint null to undefined 2026-02-01 02:58:29 +01:00
Christomatt f55dec9a60 feat: user-owned S3-compatible storage with credential verification 2026-02-01 02:51:52 +01:00
Christomatt df5b61f42a Add Docker deployment setup with health check endpoint
- Add multi-stage Dockerfile with standalone Next.js output
- Add docker-compose.yml with Caddy reverse proxy
- Add nginx configs for local and SSL setups
- Add Caddyfile for automatic HTTPS
- Add docker-entrypoint.sh for runtime config
- Add .env.example and .dockerignore
- Add comprehensive Docker README
- Add /api/health endpoint for container health checks
- Configure next.config.ts for standalone output
2026-01-31 03:53:19 +01:00
Clawd Deploy Bot 50355b740a Security fixes: swarm signature verification and error handling 2026-01-30 16:50:49 +01:00
Christomatt 374bfadc74 feat: Add public key to user profiles in API responses and update user caching logic to store and manage it. 2026-01-30 05:16:49 +01:00
Christomatt 10a54a0ea9 feat: Implement identity lock screen for sensitive user actions and introduce avatar generation. 2026-01-30 04:44:57 +01:00
Christomatt 4c9afa42fe feat: Improve user resolution for chat conversations by handling local domain suffixes and pre-fetching message sender details. 2026-01-29 12:15:13 +01:00
Christomatt 705e7cd23f feat: Add debug logging and enhance error messages for remote chat delivery failures. 2026-01-29 11:17:26 +01:00
Christomatt 1f115d569f feat: Use X-Swarm-Source-Domain header to identify the sender's node domain in chat messages. 2026-01-29 06:58:17 +01:00
Christomatt 645e9a6670 fixed build error 2026-01-29 01:03:03 +01:00
Christomatt 9710a16f83 feat: Implement remote user profile caching and enhance chat conversation list display with updated styling. 2026-01-29 01:00:22 +01:00