Skip to content

v1.99.0

Choose a tag to compare

@patrykomiotek patrykomiotek released this 27 Apr 11:44
· 602 commits to main since this release
0674c3a

1.99.0 (2026-04-27)

Bug Fixes

  • add use server directive and missing tests for public link queries (4619dd7)
  • ai-usage: attribute embedding usage to user and project (bf0ecc9)
  • align fresh-install defaults with Scaleway embedding stack (3357f18)
  • auth: sync LiteLLM membership for default team on signup (c7e74a9)
  • build: import Prisma types from browser entry in document types (8827376)
  • correct Presidio healthcheck, regex anchors and env var name (580ea57)
  • defer PUBLIC_LINK_TOKEN_SECRET validation to runtime to unblock build (89a8944)
  • documents: adapt getUserFiles action to new paginated query return type (cc505bf)
  • documents: improve active sort indicator visibility and checkbox alignment (0516166)
  • e2e: add reLogin beforeAll to p1-34 to restore session before share tests (3bbb84b)
  • e2e: replace heading check with waitForURL in p1-34 openShareDialog (ee6dfaa)
  • e2e: update knowledge base tests to match new breadcrumb navigation structure (4db965e)
  • e2e: use ChatsPage thread list instead of sidebar in p1-34 (9050b06)
  • e2e: wait for networkidle before checking share button in p1-34 (8c924bf)
  • e2e: wait for sidebar thread-item instead of heading in p1-34 (7f8dc0b)
  • fix e2e seed and document preview tests (c0d145d)
  • fix public thread share UX, e2e tests and seed cleanup (e2cf5b2)
  • harden PII masking — timeout, logging, Langfuse output, image pin (903a83e)
  • harden presidio spec guard and expand PII system prompt placeholders (711d47a)
  • improve PublicShareDialog button layout and colors (b6c4caa)
  • knowledge: align mobile breakpoint with Tailwind md (767px instead of 768px) (01bc4a8)
  • knowledge: auto-expand ancestor folders when navigating to a subfolder (993304f)
  • knowledge: clear stale breadcrumbs on folder change and add aria-current to nav items (24bf6c4)
  • knowledge: fix SSR hydration mismatch in useIsMobile by deferring matchMedia to useEffect (bd9a2bd)
  • knowledge: memoize folderTree to prevent infinite useEffect loop (44c141c)
  • knowledge: prevent stale breadcrumb updates on rapid folder navigation (8acad26)
  • knowledge: remove unused viewMode prop from Breadcrumbs and add missing test coverage (cc96f54)
  • knowledge: show folder-specific empty state message when inside a subfolder (105075d)
  • move stopPropagation from overlay to ToolbarActionsMenu wrapper in FileCard (1c1c1e9)
  • pass TARGET_ENV=test and PUBLIC_LINK_TOKEN_SECRET to e2e server (f54e078)
  • presidio: bind only to [::] for dual-stack listening (a38e518)
  • presidio: dual-bind gunicorn on IPv4 + IPv6 for Railway (45998c9)
  • presidio: rename railway config and scope paths to service root (8dd8335)
  • rebuild PII alias map from analyzer results, skip anonymizer HTTP call (e1acf5e)
  • remove excess padding wrapper in knowledge layout causing content overflow (8b01d86)
  • remove redundant index on public_id in thread_public_links migration (379d3f6)
  • replace plaintext password cookie with HMAC-signed token for public thread links (d9000f2)
  • review feedback + self-contain backfill-teams-for-orgs script (0b1b5d8)
  • route misdetected TEXT files to correct viewer by file extension (abb6ed0)
  • skip PUBLIC_LINK_TOKEN_SECRET validation in e2e test environment (6cfcd62)
  • stopPropagation on toolbar and doc link, reset PDF scale on nav (9efa2b4)
  • sync package-lock.json after adding react-pdf dependency (bd62f12)
  • teams: drop type re-export from 'use server' query file (b7642bc)
  • teams: drop type re-export from 'use server' query file (c6e4cb4)
  • test: strengthen rejection test to verify crumbs are cleared on error (efd30d0)
  • throw on missing BETTER_AUTH_SECRET in non-development environments (b8dd2e9)
  • update settings registry tests to include shared-threads entry (17996d7)
  • use dedicated PUBLIC_LINK_TOKEN_SECRET for public link HMAC signing (ba5640f)
  • wrap JSON.parse in pii-session-store.get with try/catch for corrupted data (69af4e6)

Features

  • add create-public-link-command with tests (a8a625c)
  • add document preview viewers (PDF, DOCX, Markdown, text, image, unsupported) (103c3c1)
  • add DocumentPreviewHeader and DocumentPreviewMetadata components (0c512be)
  • add DocumentPreviewSlideOver main component (d60771d)
  • add get-public-thread-query with KMS decrypt and tests (f9ad692)
  • add get-user-public-links-query and get-public-link-query (8dde20d)
  • add i18n keys for document-preview slideover (f3a8ebe)
  • add onPreviewFile prop to UserFilesTable and FileListView (e7dd37d)
  • add onPreviewFile support to GridView and FileCard (c54dc18)
  • add password visibility toggle to PublicShareDialog and PasswordGateForm (0e12897)
  • add PII masking via Presidio with Redis alias map and SSE unmasking (7d3d5af)
  • add Presidio PII analyzer and anonymizer sidecars with PL recognizers (a9d29f3)
  • add PresidioClient for PII anonymization with fail-closed behavior (9f473ac)
  • add public thread page with password gate (dc3f2f3)
  • add PublicLinkDto and PublicThreadResult types (645c810)
  • add PublicShareDialog component with tests (ee042db)
  • add Python PII recognizers with checksum validation and Langfuse masking metrics (a6b7a9a)
  • add rate limiting for public thread routes in proxy (793c486)
  • add revoke-public-link-command with tests (273d740)
  • add shared-threads settings page (7c2c7fb)
  • add StreamUnmasker for SSE chunk-aware PII token replacement (461aead)
  • add thread-public-links server actions (1513270)
  • add ThreadPublicLink prisma model and migration (36736cc)
  • add translations for public thread share (1674089)
  • add useDocumentPreview hook with keyboard navigation (ddc03dd)
  • assistants: add AssistantsGridSkeleton component (8fed7d4)
  • assistants: replace spinner with AssistantsGridSkeleton on initial load (5c5f0a1)
  • auth: provision default Better-Auth team on signup (141d97a)
  • chats: replace spinner with ChatsListSkeleton on first load in ChatsPage (2ba12c8)
  • deep-thinking: add GPT-OSS reasoning mode toggle (7eb84df)
  • disallow indexing of public thread share pages (4b5dd9a)
  • documents: add DocumentsTableWithFilters client component (183e57a)
  • documents: add file type and embedding status filter dropdowns (cf2a619)
  • documents: add i18n keys for sorting, filtering, pagination (8f4811c)
  • documents: add sort dropdown, filtered empty state, skeleton loaders (7ad40cb)
  • documents: add sort/filter/pagination types (076798e)
  • documents: add sortable column headers to UserFilesTable (30e34ce)
  • documents: code review fixes, a11y improvements, and unit tests (64d30d2)
  • documents: convert documents-list page to async server component with searchParams (748c618)
  • documents: extend getUserFilesQuery with sort, filter, pagination (57d4fd6)
  • documents: sync URL params to context and fix empty-state logic (cc7a0ab)
  • documents: wire sorting/filtering/pagination into documents-list UI (e1ed32a)
  • files: add hasLoadedOnce flag to FilesContext (01195af)
  • full action dropdown and styled title in grid card view (d940bb5)
  • hover highlight and link styling on file table rows (6cbf27c)
  • i18n: add breadcrumb translation keys for knowledge base navigation (9a5fe2a)
  • icons (38c5f41)
  • improve public thread page UX with markdown, copy feedback and AlertDialog (3fcebc2)
  • install react-pdf for document preview (a543412)
  • integrate DocumentPreviewSlideOver into FileListWrapper (36f9c54)
  • integrate PII masking into assistant-stream (mask before LLM, unmask in SSE) (90a68fc)
  • integrate PublicShareDialog into ThreadDropdownMenu (257c52b)
  • knowledge: add DocumentsGridSkeleton and show correct skeleton per layout mode (fc9638f)
  • knowledge: add DocumentsTableSkeleton component (8ee16b4)
  • knowledge: enhance breadcrumbs with home icon, overflow dropdown, mobile support and i18n (8954234)
  • knowledge: replace spinner with DocumentsTableSkeleton on initial load (13da218)
  • projects: replace spinner with AssistantsGridSkeleton on first load in ProjectsPage (e267d5f)
  • scaleway key manager + reranker, rename SCW envs (ca9528d)
  • scaleway migration — litellm models, S3, content-based routing (797bb06)
  • sidebar: add ThreadsListSkeleton component (245a099)
  • sidebar: replace spinner with ThreadsListSkeleton on first load in NewMainSidebarBody (0417992)
  • sidebar: replace spinner with ThreadsListSkeleton on initial load (fe3ac5d)
  • teams: add LiteLLM team fields to Team model (0e57498)
  • teams: audit-log + backfill script + CSV usage export (ca56f62)
  • teams: per-team budget / rate-limits / model whitelist UI (a52f8c7)
  • teams: provision LiteLLM team key on Better Auth team lifecycle (9223be4)
  • teams: route chat requests through the active team's LiteLLM key (4c8830e)
  • teams: team-scoped LiteLLM key for external API + MTD spend column (9a3c10d)
  • thread: add public share button to thread header (aff09c8)
  • threads: add isInitialLoad flag to threadsSlice (76cab48)
  • track Presidio PII detections as security events (fe571fd)
  • tui: move Skeleton component to tui, re-export from common-ui (22ea226)
  • unmask PII aliases in MCP tool args before external API calls (1010c25)

Reverts

  • remove committed docs, keep plans locally only (44e0c53)