Commit Graph
997 Commits
Author SHA1 Message Date
Philipinho 84aea058f3 fix(editor): guard unresolved page mentions and bare anchor links
A page mention without a slug rendered as a link ending in -null; it now
renders as plain text. A link whose href is a bare #fragment scrolls to
the target on the current page instead of opening about:blank.
2026-09-07 05:03:28 +01:00
Philipinho caf049a181 Merge branch 'main' into sandboxed 2026-08-19 22:14:50 +01:00
Philipinho ab43031375 fix race issue 2026-08-19 21:46:01 +01:00
Michael LohrandPhilipinho 8c2c49ea6d fix: handle empty password, missing port, and TLS in Redis URL parsing (#2021)
* fix: handle empty password, missing port, and TLS in Redis URL parsing
---------

Co-authored-by: Philipinho <16838612+Philipinho@users.noreply.github.com>
2026-08-19 21:05:44 +01:00
Philip Okugbe 8913d20aa0 chore: package updates (#2412) 2026-08-19 19:59:00 +01:00
Philip Okugbe 232beda471 feat(ee): turbopuffer ai vector search driver (#2402)
* feat(ai): add AI_VECTOR_DRIVER and turbopuffer configuration

* feat(ai): carry workspace and target space ids on vector lifecycle events

* feat(ai): add vector driver interface and turbopuffer request helpers

* feat(ai): add pgvector driver behind the vector driver interface

* refactor(ai): route vector reads and writes through the vector driver

* feat(ai): add turbopuffer vector driver

* feat(ai): rebuild turbopuffer namespaces when the embedding model changes

* feat(ai): warm the vector namespace cache on session start

* fix(ai): harden turbopuffer misconfiguration and reset failure paths

* fix(ai): collapse blank-line runs in extracted page text

* fix(ai): skip full re-embed when ai search is re-enabled within the delete grace window

* sync

* fix(ai): store real embedding dimensions instead of serialized vector length

* fix(ai): filter search hits by the page's current space at query time

* fix(ai): retry the page moved-to-space vector patch job

* sync

* feat(ai): pre-warm the vector namespace

* fix(ai): pass AI_VECTOR_DRIVER through the client build config
2026-08-17 21:18:16 +01:00
Philip Okugbe 911c1057d6 feat(server): add global encryption module (AES-256-GCM) (#2400)
Provides an injectable EncryptionService that encrypts/decrypts strings
with AES-256-GCM using a key derived from APP_SECRET with domain
separation.
2026-08-16 12:35:37 +01:00
Philipinho d136864ef1 sync 2026-08-16 11:46:50 +01:00
Philipinho 4ac1c43c0c sync 2026-08-16 02:19:33 +01:00
Philipinho db16bd3015 fix: hide import in cloud 2026-08-14 14:55:17 +01:00
Philipinho 09cb50246e synced 2026-08-14 13:48:49 +01:00
Philipinho 0f0ebdd0bf Merge branch 'main' into sandboxed 2026-08-14 02:10:49 +01:00
Philip Okugbe c093c18bf3 fix(client): keep space switcher dropdown inside its popover (#2392) 2026-08-14 02:08:28 +01:00
Philipinho 8ba4792e25 fix text color and highlight 2026-08-14 01:27:04 +01:00
Philip Okugbe ea59912c7e feat(editor): auto-detect text direction for RTL support (#2389) 2026-08-12 23:48:03 +01:00
Philipinho 06d7e24676 chore(import): silence sandbox boot preamble in production 2026-08-12 22:09:20 +01:00
Philipinho 3219bd7160 chore(import): label sandbox worker boot logs 2026-08-12 21:56:40 +01:00
Philipinho 8b73343b6c feat(import): run confluence api import in sandboxed worker 2026-08-12 21:30:42 +01:00
Philipinho 809f6eb3be fix(queue): expose queue producers through a global module 2026-08-12 21:17:07 +01:00
Philipinho 5d8e9fde8b feat(queue): add dedicated confluence import queue name 2026-08-12 20:48:41 +01:00
Philipinho dacaaf5629 refactor(page): move next page position query into page repo 2026-08-12 20:47:58 +01:00
Philipinho 1dd7d79453 refactor(import): move file task processor into app-only module 2026-08-12 20:46:52 +01:00
Philipinho ecc6b974b5 refactor(queue): extract shared bull config and queue registrations 2026-08-12 20:46:04 +01:00
Philipinho db3ff54da1 fix base node 2026-08-12 16:47:32 +01:00
Philipinho defc1f4ba5 Merge branch 'main' into confluence-importer 2026-08-12 15:06:08 +01:00
Philip Okugbe 9414a38215 feat: page attachments endpoint and modal (#2386)
* feat: page attachments endpoint

* feat: attachments modal
2026-08-12 14:04:33 +01:00
Philipinho 089286f6cf fix: delete pnpm cache 2026-08-12 12:33:34 +01:00
Philip Okugbe 737cd67965 feat: compare two page versions (#2385) 2026-08-12 12:31:02 +01:00
Philip Okugbe a0b2ac6ae3 feat: footnotes (#2384)
* feat: footnotes

* feat: proper DOCX support
2026-08-12 12:30:30 +01:00
Philipinho 50e81ade57 sync 2026-08-11 14:59:58 +01:00
Philipinho 228fe14cd8 fix: arbitrary colors in dark mode 2026-08-11 14:32:28 +01:00
Philipinho 2fe13daa09 Merge branch 'main' into confluence-importer 2026-08-10 18:10:54 +01:00
Philip Okugbe 7439da2f6e chore: package updates (#2383)
* update

* update versions

* package updates
2026-08-10 17:56:12 +01:00
Philip Okugbe 305fd40686 fix: browser tab showing url instead of page title (#2382) 2026-08-10 17:38:03 +01:00
Philipinho 4bd51d7404 fix: self-reference parent page 2026-08-10 17:37:12 +01:00
Philipinho 44086cbb01 sync 2026-08-10 16:54:11 +01:00
Philip Okugbe 89378ee766 chore: package updates (#2378)
* chore: package updates

* remove stale overrides
2026-08-06 23:41:36 +01:00
Philipinho a81e5c42ec sync 2026-08-03 23:05:28 +01:00
Philipinho 65af1cc2a4 sync 2026-08-03 16:25:50 +01:00
Philipinho 231f0deeb0 fix highlight color 2026-08-03 02:13:45 +01:00
Philipinho b9d8612ecd Merge branch 'main' into confluence-importer 2026-08-02 22:30:06 +01:00
Philip Okugbe 56ac42767a fix: stale placeholder decorations on empty paragraphs (#2374) 2026-08-02 21:07:50 +01:00
Philip Okugbe cd34594b5d fix: placeholder bug (#2373)
* fix placeholder check

* tiptap v3.29.2

* add s3 max socket env
2026-08-01 11:45:25 +01:00
Philip Okugbe 70d2ff8685 fix: increase s3 client max socket limit (#2355) 2026-07-21 22:59:25 +01:00
Philipinho 0ba2d78660 chore: update pnpm and axios 2026-07-20 20:46:02 +01:00
Philip Okugbe 3ed505d2be fix: toolbar flicker on navigation (#2352) 2026-07-20 20:36:03 +01:00
Philip Okugbe a55057db37 feat: collab hocuspocus v4 upgrade (#2351)
* WIP 1

* complete v4 migration

* add flushDelay

* feat: multiplexing

* fix: survive hocuspocus v4 message timeout

* fix: searchTerm type error
2026-07-20 20:34:09 +01:00
Philipinho e76c138e4c sync 2026-07-09 21:39:17 +01:00
Philipinho e146cfd075 fix: supported comment nodes 2026-07-09 21:33:40 +01:00
Philipinho e28df6ad88 fix 2026-07-04 14:11:44 +01:00