tlongwell-block
f1b459b1db
fix(db): reconcile schema snapshot with mt migration
...
Relay E2E builds the database from schema/schema.sql via pgschema apply, while the rewrite migration had moved the first-class community_id schema forward. The snapshot was still mostly pre-MT, so it produced unscoped tables such as channels(id) instead of channels(community_id, id).
Make the declarative snapshot match migrations/0001_initial_schema.sql exactly so the schema path and migration path create the same tenant-scoped shape.
Co-authored-by: Mari <95cae996907d7cab9f5dbf43c0f53edeac6ab0b032a6feae4abfd784e467b3f5@sprout-oss.stage.blox.sqprod.co >
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com >
2026-06-26 21:15:25 -04:00
tlongwell-block
46124f3c46
fix(db): add communities to schema snapshot
...
Relay E2E applies schema/schema.sql as declarative desired state before the relay starts. The multi-tenant migration added FKs to communities, but the snapshot did not define the table, so pgschema failed before tests ran.
Co-authored-by: Mari <95cae996907d7cab9f5dbf43c0f53edeac6ab0b032a6feae4abfd784e467b3f5@sprout-oss.stage.blox.sqprod.co >
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com >
2026-06-26 20:43:38 -04:00
tlongwell-block
031b84e255
fix(db): scope archived identities by community
...
Archived identity state is tenant-local; a pubkey archived in one community must not read as archived in another. Thread CommunityId through the archived identity queries and DB wrappers, and bind the composite key used by the migration.
Co-authored-by: Mari <95cae996907d7cab9f5dbf43c0f53edeac6ab0b032a6feae4abfd784e467b3f5@sprout-oss.stage.blox.sqprod.co >
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com >
2026-06-26 20:37:00 -04:00
Will Pfleger
26563968cb
feat(relay): add NIP-ER push scheduler with cross-pod delivery ( #957 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
2026-06-17 10:43:22 -04:00
tlongwell-block
2300248d3b
Add automatic database migrations ( #988 )
...
Signed-off-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@sprout-oss.stage.blox.sqprod.co >
Signed-off-by: npub1t2tgm7d8f995uqvmnm8h88sg3wnpp9a5xysjf6dg3tjmgt3ltulqdp8ehr <5a968df9a7494b4e019b9ecf739e088ba61097b4312124e9a88ae5b42e3f5f3e@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: npub1t2tgm7d8f995uqvmnm8h88sg3wnpp9a5xysjf6dg3tjmgt3ltulqdp8ehr <5a968df9a7494b4e019b9ecf739e088ba61097b4312124e9a88ae5b42e3f5f3e@sprout-oss.stage.blox.sqprod.co >
2026-06-16 08:39:19 -04:00
Will Pfleger
d99ad131f1
refactor: rename sprout backend to buzz ( #958 )
...
Signed-off-by: Will Pfleger <pfleger.will@gmail.com >
Signed-off-by: Will Pfleger <wpfleger@block.xyz >
Signed-off-by: Will Pfleger <wpfleger@squareup.com >
Signed-off-by: Will Pfleger <wpfleger96@gmail.com >
Co-authored-by: npub1mn7jgtj4w2pd0g0zeuhxsa6jy6p0rewxz4kujt98my82ahfmp72sxjexk7 <dcfd242e557282d7a1e2cf2e6877522682f1e5c6156dc92ca7d90eaedd3b0f95@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: npub1fgdl5qqnh3k3f2xkqrvt7cujalhm623x4s7fdjdj5yrtp5fzjl9qrjpucw <4a1bfa0013bc6d14a8d600d8bf6392efefbd2a26ac3c96c9b2a106b0d12297ca@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: npub16v54tttfqacx9ycvc3k0ut0npj564ahcuajzy6qjvh57ntmsf4uq4806j2 <d32955ad69077062930cc46cfe2df30ca9aaf6f8e76422681265e9e9af704d78@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Will Pfleger <wpfleger96@gmail.com >
2026-06-10 19:29:51 -04:00
tlongwell-block
79399d9b8e
feat: NIP-IA identity archival (relay backend + desktop) ( #733 )
...
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com >
2026-05-23 12:03:38 -04:00
tlongwell-block
3cabe94c2b
feat: relay membership with NIP-43 compliance ( #448 )
2026-05-01 19:11:32 -04:00
tlongwell-block
9ab4799766
schema: add partial index on channel_members.pubkey ( #359 )
2026-04-29 09:41:57 -04:00
tlongwell-block
b8d6a5cf8b
feat: NIP-AB device pairing — Phase 1 (core library + CLI) ( #333 )
2026-04-16 14:56:36 -04:00
Bradley Axen
c07b14bd9f
feat: ephemeral channels with TTL-based auto-archiving ( #232 )
...
Co-authored-by: Wes <wesbillman@users.noreply.github.com >
2026-04-07 11:37:51 -07:00
tlongwell-block
67706c93be
NIP-33: d-tag keyed replacement for parameterized replaceable events ( #246 )
2026-04-06 21:15:01 -04:00
Wes
dfe32bfb2c
feat: add hide/close DM support (Slack-style DM management) ( #157 )
...
Co-authored-by: Tyler Longwell <tlongwell@squareup.com >
2026-03-22 09:00:45 -07:00
Alec Thomas
6093fc6066
feat: migrate from MySQL to Postgres with pgschema ( #114 )
...
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
Co-authored-by: Tyler Longwell <tlongwell@squareup.com >
2026-03-19 12:35:22 -04:00