Fix/linux build#11
Merged
Merged
Conversation
The announcements page is a public, crawlable route but its page.tsx is 'use client', so it can't export metadata itself and falls back to the root app/layout.tsx. Add a server-component layout.tsx under app/(home)/announcements/ that exports route-specific metadata (title, description, canonical, OpenGraph, Twitter) in the same shape as the neighboring /blog, /changelog, /contact, /privacy, /terms routes. page.tsx is unchanged. Canonical URL matches app/layout.tsx's metadataBase (https://surfsense.com). Fixes MODSetter#1244
…s components - Updated icon imports and usages in AssistantMessage, CommentItem, CommentSheet, CommentThread, and InboxSidebar components. - Enhanced visual consistency by standardizing the reply icon throughout the chat-related UI elements.
Closes MODSetter#1295 The connector indexing route's `_run_indexing_with_notifications` set the Redis heartbeat key once at the start of indexing and relied on `on_heartbeat_callback` (only fired in Phase 2 per-document loops) to refresh it. The GitHub connector's Phase 1 runs `gitingest` as a blocking subprocess via `asyncio.to_thread`, so for any repo larger than the 2-minute TTL, the key expires before Phase 2 starts. The `cleanup_stale_indexing_notifications_task` then marks the document as failed with the misleading "Sync was interrupted unexpectedly. Please retry." message — even though the indexing thread is still running and gitingest's own subprocess timeout is 900 seconds. Add a background asyncio coroutine that refreshes the Redis key every 60 seconds for the duration of the indexing call. Same pattern already in use at app/tasks/celery_tasks/document_tasks.py:_run_heartbeat_loop, just adapted to use the route's get_heartbeat_redis_client() and _get_heartbeat_key() helpers. Cancellation runs in the `finally` block BEFORE the heartbeat-key delete so the loop cannot race and re-create the key after we have deleted it. The new `HEARTBEAT_REFRESH_INTERVAL = 60` constant mirrors the celery task module's value.
…er addition, improving user feedback on folder limits
…esystemBrowser during data fetching
…ling & preserved incremental UX for local folder mode
…lization, and implement caching for filesystem settings
…port for improved context handling
… bundle size in web
…ocal folder operations
… chokidar for real-time updates on local folder changes
…rsor-based pagination and enhancing path normalization methods
… standardize fallback filename to 'notes.md'
…nsions and enhance folder expansion persistence in the UI
…-metadata-dev feat(announcements): add SEO metadata via server layout.tsx
…e number display, disabling folding, and modifying whitespace rendering options
…r handling for missing parent directories
…ctor-heartbeat fix(connectors): refresh Redis heartbeat during long Phase 1 indexing
…lesystem fix: improve swappable filesystem architecture
…ugin feat: introduce Obsidian vault sync plugin
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Motivation and Context
FIX #
Screenshots
API Changes
Change Type
Testing Performed
Checklist