-
-
Notifications
You must be signed in to change notification settings - Fork 3.5k
feat(server): add doc keyword search tool #12837
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: canary
Are you sure you want to change the base?
Conversation
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the WalkthroughThis change introduces a new "docKeywordSearch" tool that enables full-text keyword-based document search within a workspace, integrating with the indexer service and enforcing access control. The update includes backend service methods, tool construction, parser integration, and corresponding test cases to support and validate document keyword search functionality. Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant CopilotProvider
participant AccessController
participant IndexerService
User->>CopilotProvider: Request docKeywordSearch tool
CopilotProvider->>AccessController: Check workspace read access
AccessController-->>CopilotProvider: Access granted/denied
CopilotProvider->>IndexerService: searchDocsByKeyword(workspaceId, query)
IndexerService-->>CopilotProvider: [SearchDocResult[]]
CopilotProvider-->>User: Return filtered document search results
Assessment against linked issues
Possibly related PRs
Suggested reviewers
Poem
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Introduce keyword-based full-text search for documents within a workspace, including service methods, API exports, Copilot integration, and tests.
- Add
SearchDocResult
interface and implementsearchDocsByDocIds
andsearchDocsByKeyword
inIndexerService
. - Export
SearchDocResult
in the indexer plugin and integrate keyword search into Copilot tools and provider. - Add tests and update snapshots for the new search methods.
Reviewed Changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 1 comment.
Show a summary per file
File | Description |
---|---|
packages/backend/server/src/plugins/indexer/service.ts | Define SearchDocResult and new search methods in service |
packages/backend/server/src/plugins/indexer/index.ts | Export SearchDocResult from index |
packages/backend/server/src/plugins/indexer/tests/service.spec.ts | Add tests for searchDocsByDocIds and searchDocsByKeyword |
packages/backend/server/src/plugins/indexer/tests/snapshots/service.spec.ts.md | Update snapshots for new search tests |
packages/backend/server/src/plugins/copilot/tools/keyword-search.ts | Implement Copilot keyword-search tool builder |
packages/backend/server/src/plugins/copilot/tools/index.ts | Export keyword-search tool |
packages/backend/server/src/plugins/copilot/providers/utils.ts | Import SearchDocResult for text parsing |
packages/backend/server/src/plugins/copilot/providers/provider.ts | Register keywordSearch tool in Copilot provider |
Comments suppressed due to low confidence (1)
packages/backend/server/src/plugins/copilot/providers/provider.ts:154
- [nitpick] The tool option key
'keywordSearch'
uses camelCase, while the tool is registered under snake_case'keyword_search'
. Consider aligning naming for consistency.
case 'keywordSearch': {
packages/backend/server/src/plugins/copilot/providers/provider.ts
Outdated
Show resolved
Hide resolved
packages/backend/server/src/plugins/copilot/tools/keyword-search.ts
Outdated
Show resolved
Hide resolved
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## canary #12837 +/- ##
==========================================
+ Coverage 55.95% 56.00% +0.05%
==========================================
Files 2653 2654 +1
Lines 125676 125902 +226
Branches 19961 19970 +9
==========================================
+ Hits 70326 70516 +190
- Misses 53044 53079 +35
- Partials 2306 2307 +1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 4
🧹 Nitpick comments (5)
packages/backend/server/src/plugins/indexer/index.ts (2)
12-13
: Extraneous runtime symbol inimports
statement
SearchDocResult
is a compile-time type, so importing it withtype
is correct; however, adding it to the value-spaceimports
list slightly increases bundle size (tsc will erase it but Babel may not). You could drop it from the default import list and rely solely on the re-export below.-import { IndexerService, type SearchDocResult } from './service'; +import { IndexerService } from './service';
28-29
: Consider re-exporting only types viaexport type
Re-exporting the runtime
IndexerService
twice is harmless but noisy. A cleaner option:-export { IndexerService, type SearchDocResult }; +export { type SearchDocResult };
IndexerService
is already re-exported through the Nest module on line 24.packages/backend/server/src/plugins/copilot/providers/provider.ts (1)
154-163
: Duplicate provider look-ups inside tight loop
moduleRef.get(AccessController …)
andmoduleRef.get(IndexerService …)
are invoked every time the “keywordSearch” tool is requested, even though the provider instances are singletons. Move these calls outside the switch (or cache them per–method) to avoid unnecessary DI look-ups:- case 'keywordSearch': { - const ac = this.moduleRef.get(AccessController, { strict: false }); - const indexerService = this.moduleRef.get(IndexerService, { strict: false }); + case 'keywordSearch': { + const ac = this.moduleRef.get(AccessController, { strict: false }); + const indexerService = this.moduleRef.get(IndexerService, { strict: false });(illustrative – refactor by hoisting both calls above the
for
loop).packages/backend/server/src/plugins/copilot/providers/utils.ts (1)
515-520
: Links use baredocId
; prepend a routable URIDown-stream renderers will treat
[title](id)
as a relative link, which is
probably not what you want. Prefix with the canonical document route or a
custom scheme (e.g.affine://doc/{id}
) so that the front-end can recognise
and open the link unambiguously.-return acc + `\n\n[${result.title}](${result.docId})\n\n`; +return acc + `\n\n[${result.title}](/workspace/doc/${result.docId})\n\n`;packages/backend/server/src/plugins/indexer/service.ts (1)
442-467
: Consider usingmust
+terms
for docId filteringWrapping a
should
array inside amust
works, but a simpler and more
efficient query is available:{ type: SearchQueryType.match, field: 'docId', match: docIds, // ← array }or translate directly to an ES
terms
query. This avoids executing N
individualmatch
clauses.
Not blocking, but worth revisiting for large workspaces.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
packages/backend/server/src/plugins/indexer/__tests__/__snapshots__/service.spec.ts.snap
is excluded by!**/*.snap
📒 Files selected for processing (8)
packages/backend/server/src/plugins/copilot/providers/provider.ts
(3 hunks)packages/backend/server/src/plugins/copilot/providers/utils.ts
(7 hunks)packages/backend/server/src/plugins/copilot/tools/index.ts
(1 hunks)packages/backend/server/src/plugins/copilot/tools/keyword-search.ts
(1 hunks)packages/backend/server/src/plugins/indexer/__tests__/__snapshots__/service.spec.ts.md
(1 hunks)packages/backend/server/src/plugins/indexer/__tests__/service.spec.ts
(1 hunks)packages/backend/server/src/plugins/indexer/index.ts
(2 hunks)packages/backend/server/src/plugins/indexer/service.ts
(2 hunks)
🧰 Additional context used
🧬 Code Graph Analysis (3)
packages/backend/server/src/plugins/copilot/providers/provider.ts (2)
packages/backend/server/src/plugins/indexer/index.ts (1)
IndexerService
(28-28)packages/backend/server/src/plugins/copilot/tools/keyword-search.ts (2)
buildKeywordSearchGetter
(8-28)createKeywordSearchTool
(30-47)
packages/backend/server/src/plugins/copilot/tools/keyword-search.ts (3)
packages/backend/server/src/plugins/indexer/index.ts (2)
IndexerService
(28-28)SearchDocResult
(28-28)packages/backend/server/src/plugins/copilot/providers/types.ts (1)
CopilotChatOptions
(150-150)packages/backend/server/src/plugins/indexer/service.ts (1)
SearchDocResult
(105-109)
packages/backend/server/src/plugins/indexer/service.ts (1)
packages/backend/server/src/plugins/copilot/context/session.ts (1)
docIds
(58-66)
⏰ Context from checks skipped due to timeout of 90000ms (782)
- GitHub Check: Desktop Test (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Desktop bundle check (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop Test (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop bundle check (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Server Test (4, 8)
- GitHub Check: Cloud E2E Test 2/6
- GitHub Check: Cloud E2E Test 4/6
- GitHub Check: Frontend Copilot E2E Test (7, 8)
- GitHub Check: Cloud E2E Test 1/6
- GitHub Check: Frontend Copilot E2E Test (8, 8)
- GitHub Check: Cloud Desktop E2E Test
- GitHub Check: Cloud E2E Test 6/6
- GitHub Check: Frontend Copilot E2E Test (6, 8)
- GitHub Check: Server Test (5, 8)
- GitHub Check: Frontend Copilot E2E Test (4, 8)
- GitHub Check: Server Test (7, 8)
- GitHub Check: Cloud E2E Test 5/6
- GitHub Check: Frontend Copilot E2E Test (5, 8)
- GitHub Check: Server Test (3, 8)
- GitHub Check: Frontend Copilot E2E Test (3, 8)
- GitHub Check: Server Test (6, 8)
- GitHub Check: Frontend Copilot E2E Test (2, 8)
- GitHub Check: Server Copilot Api Test
- GitHub Check: Server Test (0, 8)
- GitHub Check: Server Test (1, 8)
- GitHub Check: Server E2E Test
- GitHub Check: Server Test (2, 8)
- GitHub Check: Server Test with Elasticsearch
- GitHub Check: Check Git Status
- GitHub Check: Unit Test (1)
- GitHub Check: Unit Test (2)
- GitHub Check: Unit Test (3)
- GitHub Check: Unit Test (5)
- GitHub Check: Unit Test (4)
- GitHub Check: test-build-mobile-app / build-ios-web
- GitHub Check: test-build-mobile-app / build-android-web
- GitHub Check: E2E BlockSuite Test (1)
- GitHub Check: y-octo binding test on x86_64-apple-darwin
- GitHub Check: y-octo binding test on x86_64-pc-windows-msvc
- GitHub Check: Run native tests
- GitHub Check: E2E Test (6)
- GitHub Check: E2E Test (3)
- GitHub Check: y-octo binding test on aarch64-pc-windows-msvc
- GitHub Check: E2E BlockSuite Test (4)
- GitHub Check: E2E Test (9)
- GitHub Check: E2E BlockSuite Test (10)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, firefox)
- GitHub Check: E2E Test (8)
- GitHub Check: E2E Test (1)
- GitHub Check: E2E BlockSuite Test (3)
- GitHub Check: E2E Test (2)
- GitHub Check: E2E BlockSuite Test (5)
- GitHub Check: E2E Mobile Test (1)
- GitHub Check: loom thread test
- GitHub Check: E2E BlockSuite Test (7)
- GitHub Check: fuzzing
- GitHub Check: E2E BlockSuite Test (8)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, webkit)
- GitHub Check: Build AFFiNE native (aarch64-pc-windows-msvc)
- GitHub Check: E2E BlockSuite Test (2)
- GitHub Check: E2E Test (4)
- GitHub Check: E2E Mobile Test (4)
- GitHub Check: E2E BlockSuite Test (9)
- GitHub Check: E2E BlockSuite Test (6)
- GitHub Check: E2E Test (10)
- GitHub Check: E2E Mobile Test (2)
- GitHub Check: E2E Test (5)
- GitHub Check: E2E Mobile Test (3)
- GitHub Check: E2E Mobile Test (5)
- GitHub Check: E2E Test (7)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, firefox)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, webkit)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, chromium)
- GitHub Check: Analyze (javascript, affine)
- GitHub Check: Analyze (typescript, blocksuite)
- GitHub Check: Desktop Test (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Desktop bundle check (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop Test (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop bundle check (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Server Test (4, 8)
- GitHub Check: Cloud E2E Test 3/6
- GitHub Check: Cloud E2E Test 2/6
- GitHub Check: Cloud E2E Test 4/6
- GitHub Check: Frontend Copilot E2E Test (7, 8)
- GitHub Check: Cloud E2E Test 1/6
- GitHub Check: Frontend Copilot E2E Test (8, 8)
- GitHub Check: Cloud Desktop E2E Test
- GitHub Check: Cloud E2E Test 6/6
- GitHub Check: Frontend Copilot E2E Test (6, 8)
- GitHub Check: Server Test (5, 8)
- GitHub Check: Frontend Copilot E2E Test (4, 8)
- GitHub Check: Server Test (7, 8)
- GitHub Check: Cloud E2E Test 5/6
- GitHub Check: Frontend Copilot E2E Test (5, 8)
- GitHub Check: Server Test (3, 8)
- GitHub Check: Frontend Copilot E2E Test (3, 8)
- GitHub Check: Server Test (6, 8)
- GitHub Check: Frontend Copilot E2E Test (2, 8)
- GitHub Check: Server Copilot Api Test
- GitHub Check: Server Test (0, 8)
- GitHub Check: Server Test (1, 8)
- GitHub Check: Server E2E Test
- GitHub Check: Server Test (2, 8)
- GitHub Check: Server Test with Elasticsearch
- GitHub Check: Check Git Status
- GitHub Check: Unit Test (1)
- GitHub Check: Unit Test (2)
- GitHub Check: Unit Test (3)
- GitHub Check: Unit Test (5)
- GitHub Check: Unit Test (4)
- GitHub Check: test-build-mobile-app / build-ios-web
- GitHub Check: test-build-mobile-app / build-android-web
- GitHub Check: E2E BlockSuite Test (1)
- GitHub Check: y-octo binding test on x86_64-apple-darwin
- GitHub Check: y-octo binding test on x86_64-pc-windows-msvc
- GitHub Check: E2E Test (6)
- GitHub Check: E2E Test (3)
- GitHub Check: y-octo binding test on aarch64-pc-windows-msvc
- GitHub Check: E2E BlockSuite Test (4)
- GitHub Check: E2E Test (9)
- GitHub Check: E2E BlockSuite Test (10)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, firefox)
- GitHub Check: E2E Test (8)
- GitHub Check: E2E Test (1)
- GitHub Check: E2E BlockSuite Test (3)
- GitHub Check: E2E Test (2)
- GitHub Check: E2E BlockSuite Test (5)
- GitHub Check: E2E Mobile Test (1)
- GitHub Check: loom thread test
- GitHub Check: E2E BlockSuite Test (7)
- GitHub Check: fuzzing
- GitHub Check: E2E BlockSuite Test (8)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, webkit)
- GitHub Check: Build AFFiNE native (aarch64-pc-windows-msvc)
- GitHub Check: E2E BlockSuite Test (2)
- GitHub Check: E2E Test (4)
- GitHub Check: E2E Mobile Test (4)
- GitHub Check: E2E BlockSuite Test (9)
- GitHub Check: E2E BlockSuite Test (6)
- GitHub Check: E2E Test (10)
- GitHub Check: E2E Mobile Test (2)
- GitHub Check: E2E Test (5)
- GitHub Check: E2E Mobile Test (3)
- GitHub Check: E2E Mobile Test (5)
- GitHub Check: E2E Test (7)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, firefox)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, webkit)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, chromium)
- GitHub Check: Analyze (javascript, affine)
- GitHub Check: Analyze (typescript, blocksuite)
- GitHub Check: Desktop Test (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Desktop bundle check (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop Test (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop bundle check (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Server Test (4, 8)
- GitHub Check: Cloud E2E Test 3/6
- GitHub Check: Cloud E2E Test 2/6
- GitHub Check: Cloud E2E Test 4/6
- GitHub Check: Frontend Copilot E2E Test (7, 8)
- GitHub Check: Cloud E2E Test 1/6
- GitHub Check: Frontend Copilot E2E Test (8, 8)
- GitHub Check: Cloud Desktop E2E Test
- GitHub Check: Cloud E2E Test 6/6
- GitHub Check: Frontend Copilot E2E Test (6, 8)
- GitHub Check: Server Test (5, 8)
- GitHub Check: Frontend Copilot E2E Test (4, 8)
- GitHub Check: Server Test (7, 8)
- GitHub Check: Cloud E2E Test 5/6
- GitHub Check: Frontend Copilot E2E Test (5, 8)
- GitHub Check: Server Test (3, 8)
- GitHub Check: Frontend Copilot E2E Test (3, 8)
- GitHub Check: Server Test (6, 8)
- GitHub Check: Frontend Copilot E2E Test (2, 8)
- GitHub Check: Server Copilot Api Test
- GitHub Check: Server Test (0, 8)
- GitHub Check: Server Test (1, 8)
- GitHub Check: Server E2E Test
- GitHub Check: Server Test (2, 8)
- GitHub Check: Server Test with Elasticsearch
- GitHub Check: Check Git Status
- GitHub Check: Unit Test (1)
- GitHub Check: Unit Test (2)
- GitHub Check: Unit Test (3)
- GitHub Check: Unit Test (5)
- GitHub Check: Unit Test (4)
- GitHub Check: test-build-mobile-app / build-ios-web
- GitHub Check: test-build-mobile-app / build-android-web
- GitHub Check: E2E BlockSuite Test (1)
- GitHub Check: y-octo binding test on x86_64-apple-darwin
- GitHub Check: y-octo binding test on x86_64-pc-windows-msvc
- GitHub Check: E2E Test (6)
- GitHub Check: E2E Test (3)
- GitHub Check: y-octo binding test on aarch64-pc-windows-msvc
- GitHub Check: E2E BlockSuite Test (4)
- GitHub Check: E2E Test (9)
- GitHub Check: E2E BlockSuite Test (10)
- GitHub Check: E2E Test (8)
- GitHub Check: E2E Test (1)
- GitHub Check: E2E BlockSuite Test (3)
- GitHub Check: E2E Test (2)
- GitHub Check: E2E BlockSuite Test (5)
- GitHub Check: E2E Mobile Test (1)
- GitHub Check: loom thread test
- GitHub Check: E2E BlockSuite Test (7)
- GitHub Check: fuzzing
- GitHub Check: E2E BlockSuite Test (8)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, webkit)
- GitHub Check: Build AFFiNE native (aarch64-pc-windows-msvc)
- GitHub Check: E2E BlockSuite Test (2)
- GitHub Check: E2E Test (4)
- GitHub Check: E2E Mobile Test (4)
- GitHub Check: E2E BlockSuite Test (9)
- GitHub Check: E2E BlockSuite Test (6)
- GitHub Check: E2E Test (10)
- GitHub Check: E2E Mobile Test (2)
- GitHub Check: E2E Test (5)
- GitHub Check: E2E Mobile Test (3)
- GitHub Check: E2E Mobile Test (5)
- GitHub Check: E2E Test (7)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, firefox)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, webkit)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, chromium)
- GitHub Check: Analyze (javascript, affine)
- GitHub Check: Analyze (typescript, blocksuite)
- GitHub Check: Desktop Test (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Desktop bundle check (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop Test (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop bundle check (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Server Test (4, 8)
- GitHub Check: Cloud E2E Test 3/6
- GitHub Check: Cloud E2E Test 2/6
- GitHub Check: Cloud E2E Test 4/6
- GitHub Check: Frontend Copilot E2E Test (7, 8)
- GitHub Check: Cloud E2E Test 1/6
- GitHub Check: Frontend Copilot E2E Test (8, 8)
- GitHub Check: Cloud Desktop E2E Test
- GitHub Check: Cloud E2E Test 6/6
- GitHub Check: Frontend Copilot E2E Test (6, 8)
- GitHub Check: Server Test (5, 8)
- GitHub Check: Frontend Copilot E2E Test (4, 8)
- GitHub Check: Server Test (7, 8)
- GitHub Check: Cloud E2E Test 5/6
- GitHub Check: Frontend Copilot E2E Test (5, 8)
- GitHub Check: Server Test (3, 8)
- GitHub Check: Frontend Copilot E2E Test (3, 8)
- GitHub Check: Server Test (6, 8)
- GitHub Check: Frontend Copilot E2E Test (2, 8)
- GitHub Check: Server Copilot Api Test
- GitHub Check: Server Test (0, 8)
- GitHub Check: Server Test (1, 8)
- GitHub Check: Server E2E Test
- GitHub Check: Server Test (2, 8)
- GitHub Check: Server Test with Elasticsearch
- GitHub Check: Check Git Status
- GitHub Check: Unit Test (1)
- GitHub Check: Unit Test (2)
- GitHub Check: Unit Test (3)
- GitHub Check: Unit Test (5)
- GitHub Check: Unit Test (4)
- GitHub Check: test-build-mobile-app / build-ios-web
- GitHub Check: test-build-mobile-app / build-android-web
- GitHub Check: E2E BlockSuite Test (1)
- GitHub Check: y-octo binding test on x86_64-apple-darwin
- GitHub Check: y-octo binding test on x86_64-pc-windows-msvc
- GitHub Check: E2E Test (6)
- GitHub Check: E2E Test (3)
- GitHub Check: y-octo binding test on aarch64-pc-windows-msvc
- GitHub Check: E2E BlockSuite Test (4)
- GitHub Check: E2E Test (9)
- GitHub Check: E2E BlockSuite Test (10)
- GitHub Check: E2E Test (8)
- GitHub Check: E2E Test (1)
- GitHub Check: E2E BlockSuite Test (3)
- GitHub Check: E2E Test (2)
- GitHub Check: E2E BlockSuite Test (5)
- GitHub Check: E2E Mobile Test (1)
- GitHub Check: loom thread test
- GitHub Check: E2E BlockSuite Test (7)
- GitHub Check: fuzzing
- GitHub Check: E2E BlockSuite Test (8)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, webkit)
- GitHub Check: Build AFFiNE native (aarch64-pc-windows-msvc)
- GitHub Check: E2E BlockSuite Test (2)
- GitHub Check: E2E Test (4)
- GitHub Check: E2E Mobile Test (4)
- GitHub Check: E2E BlockSuite Test (9)
- GitHub Check: E2E BlockSuite Test (6)
- GitHub Check: E2E Test (10)
- GitHub Check: E2E Mobile Test (2)
- GitHub Check: E2E Test (5)
- GitHub Check: E2E Mobile Test (3)
- GitHub Check: E2E Mobile Test (5)
- GitHub Check: E2E Test (7)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, firefox)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, webkit)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, chromium)
- GitHub Check: Analyze (javascript, affine)
- GitHub Check: Analyze (typescript, blocksuite)
- GitHub Check: Desktop Test (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Desktop bundle check (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop Test (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop bundle check (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Server Test (4, 8)
- GitHub Check: Cloud E2E Test 3/6
- GitHub Check: Cloud E2E Test 2/6
- GitHub Check: Cloud E2E Test 4/6
- GitHub Check: Frontend Copilot E2E Test (7, 8)
- GitHub Check: Cloud E2E Test 1/6
- GitHub Check: Frontend Copilot E2E Test (8, 8)
- GitHub Check: Cloud Desktop E2E Test
- GitHub Check: Cloud E2E Test 6/6
- GitHub Check: Frontend Copilot E2E Test (6, 8)
- GitHub Check: Server Test (5, 8)
- GitHub Check: Frontend Copilot E2E Test (4, 8)
- GitHub Check: Server Test (7, 8)
- GitHub Check: Cloud E2E Test 5/6
- GitHub Check: Frontend Copilot E2E Test (5, 8)
- GitHub Check: Server Test (3, 8)
- GitHub Check: Frontend Copilot E2E Test (3, 8)
- GitHub Check: Server Test (6, 8)
- GitHub Check: Frontend Copilot E2E Test (2, 8)
- GitHub Check: Server Copilot Api Test
- GitHub Check: Server Test (0, 8)
- GitHub Check: Server Test (1, 8)
- GitHub Check: Server E2E Test
- GitHub Check: Server Test (2, 8)
- GitHub Check: Server Test with Elasticsearch
- GitHub Check: Check Git Status
- GitHub Check: Unit Test (1)
- GitHub Check: Unit Test (2)
- GitHub Check: Unit Test (3)
- GitHub Check: Unit Test (5)
- GitHub Check: Unit Test (4)
- GitHub Check: test-build-mobile-app / build-ios-web
- GitHub Check: test-build-mobile-app / build-android-web
- GitHub Check: E2E BlockSuite Test (1)
- GitHub Check: y-octo binding test on x86_64-apple-darwin
- GitHub Check: y-octo binding test on x86_64-pc-windows-msvc
- GitHub Check: E2E Test (6)
- GitHub Check: E2E Test (3)
- GitHub Check: y-octo binding test on aarch64-pc-windows-msvc
- GitHub Check: E2E BlockSuite Test (4)
- GitHub Check: E2E Test (9)
- GitHub Check: E2E BlockSuite Test (10)
- GitHub Check: E2E Test (8)
- GitHub Check: E2E Test (1)
- GitHub Check: E2E BlockSuite Test (3)
- GitHub Check: E2E Test (2)
- GitHub Check: E2E BlockSuite Test (5)
- GitHub Check: E2E Mobile Test (1)
- GitHub Check: loom thread test
- GitHub Check: E2E BlockSuite Test (7)
- GitHub Check: fuzzing
- GitHub Check: E2E BlockSuite Test (8)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, webkit)
- GitHub Check: Build AFFiNE native (aarch64-pc-windows-msvc)
- GitHub Check: E2E BlockSuite Test (2)
- GitHub Check: E2E Test (4)
- GitHub Check: E2E Mobile Test (4)
- GitHub Check: E2E BlockSuite Test (9)
- GitHub Check: E2E BlockSuite Test (6)
- GitHub Check: E2E Test (10)
- GitHub Check: E2E Mobile Test (2)
- GitHub Check: E2E Test (5)
- GitHub Check: E2E Mobile Test (3)
- GitHub Check: E2E Mobile Test (5)
- GitHub Check: E2E Test (7)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, firefox)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, webkit)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, chromium)
- GitHub Check: Analyze (javascript, affine)
- GitHub Check: Analyze (typescript, blocksuite)
- GitHub Check: Desktop Test (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Desktop bundle check (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop Test (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop bundle check (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Server Test (4, 8)
- GitHub Check: Cloud E2E Test 3/6
- GitHub Check: Cloud E2E Test 2/6
- GitHub Check: Cloud E2E Test 4/6
- GitHub Check: Frontend Copilot E2E Test (7, 8)
- GitHub Check: Cloud E2E Test 1/6
- GitHub Check: Frontend Copilot E2E Test (8, 8)
- GitHub Check: Cloud Desktop E2E Test
- GitHub Check: Cloud E2E Test 6/6
- GitHub Check: Frontend Copilot E2E Test (6, 8)
- GitHub Check: Server Test (5, 8)
- GitHub Check: Frontend Copilot E2E Test (4, 8)
- GitHub Check: Server Test (7, 8)
- GitHub Check: Cloud E2E Test 5/6
- GitHub Check: Frontend Copilot E2E Test (5, 8)
- GitHub Check: Server Test (3, 8)
- GitHub Check: Frontend Copilot E2E Test (3, 8)
- GitHub Check: Server Test (6, 8)
- GitHub Check: Frontend Copilot E2E Test (2, 8)
- GitHub Check: Server Copilot Api Test
- GitHub Check: Server Test (0, 8)
- GitHub Check: Server Test (1, 8)
- GitHub Check: Server E2E Test
- GitHub Check: Server Test (2, 8)
- GitHub Check: Server Test with Elasticsearch
- GitHub Check: Check Git Status
- GitHub Check: Unit Test (1)
- GitHub Check: Unit Test (2)
- GitHub Check: Unit Test (3)
- GitHub Check: Unit Test (5)
- GitHub Check: Unit Test (4)
- GitHub Check: test-build-mobile-app / build-ios-web
- GitHub Check: test-build-mobile-app / build-android-web
- GitHub Check: E2E BlockSuite Test (1)
- GitHub Check: y-octo binding test on x86_64-apple-darwin
- GitHub Check: y-octo binding test on x86_64-pc-windows-msvc
- GitHub Check: E2E Test (6)
- GitHub Check: E2E Test (3)
- GitHub Check: y-octo binding test on aarch64-pc-windows-msvc
- GitHub Check: E2E BlockSuite Test (4)
- GitHub Check: E2E Test (9)
- GitHub Check: E2E BlockSuite Test (10)
- GitHub Check: E2E Test (8)
- GitHub Check: E2E Test (1)
- GitHub Check: E2E BlockSuite Test (3)
- GitHub Check: E2E Test (2)
- GitHub Check: E2E BlockSuite Test (5)
- GitHub Check: E2E Mobile Test (1)
- GitHub Check: loom thread test
- GitHub Check: E2E BlockSuite Test (7)
- GitHub Check: fuzzing
- GitHub Check: E2E BlockSuite Test (8)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, webkit)
- GitHub Check: Build AFFiNE native (aarch64-pc-windows-msvc)
- GitHub Check: E2E BlockSuite Test (2)
- GitHub Check: E2E Test (4)
- GitHub Check: E2E Mobile Test (4)
- GitHub Check: E2E BlockSuite Test (9)
- GitHub Check: E2E BlockSuite Test (6)
- GitHub Check: E2E Test (10)
- GitHub Check: E2E Mobile Test (2)
- GitHub Check: E2E Test (5)
- GitHub Check: E2E Mobile Test (3)
- GitHub Check: E2E Mobile Test (5)
- GitHub Check: E2E Test (7)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, firefox)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, webkit)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, chromium)
- GitHub Check: Analyze (javascript, affine)
- GitHub Check: Analyze (typescript, blocksuite)
- GitHub Check: Desktop Test (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Desktop bundle check (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop Test (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop bundle check (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Server Test (4, 8)
- GitHub Check: Cloud E2E Test 3/6
- GitHub Check: Cloud E2E Test 2/6
- GitHub Check: Cloud E2E Test 4/6
- GitHub Check: Frontend Copilot E2E Test (7, 8)
- GitHub Check: Cloud E2E Test 1/6
- GitHub Check: Frontend Copilot E2E Test (8, 8)
- GitHub Check: Cloud Desktop E2E Test
- GitHub Check: Cloud E2E Test 6/6
- GitHub Check: Frontend Copilot E2E Test (6, 8)
- GitHub Check: Server Test (5, 8)
- GitHub Check: Frontend Copilot E2E Test (4, 8)
- GitHub Check: Server Test (7, 8)
- GitHub Check: Cloud E2E Test 5/6
- GitHub Check: Frontend Copilot E2E Test (5, 8)
- GitHub Check: Server Test (3, 8)
- GitHub Check: Frontend Copilot E2E Test (3, 8)
- GitHub Check: Server Test (6, 8)
- GitHub Check: Frontend Copilot E2E Test (2, 8)
- GitHub Check: Server Copilot Api Test
- GitHub Check: Server Test (0, 8)
- GitHub Check: Server Test (1, 8)
- GitHub Check: Server E2E Test
- GitHub Check: Server Test (2, 8)
- GitHub Check: Server Test with Elasticsearch
- GitHub Check: Check Git Status
- GitHub Check: Unit Test (1)
- GitHub Check: Unit Test (2)
- GitHub Check: Unit Test (3)
- GitHub Check: Unit Test (5)
- GitHub Check: Unit Test (4)
- GitHub Check: test-build-mobile-app / build-ios-web
- GitHub Check: test-build-mobile-app / build-android-web
- GitHub Check: E2E BlockSuite Test (1)
- GitHub Check: y-octo binding test on x86_64-apple-darwin
- GitHub Check: y-octo binding test on x86_64-pc-windows-msvc
- GitHub Check: E2E Test (6)
- GitHub Check: E2E Test (3)
- GitHub Check: y-octo binding test on aarch64-pc-windows-msvc
- GitHub Check: E2E BlockSuite Test (4)
- GitHub Check: E2E Test (9)
- GitHub Check: E2E BlockSuite Test (10)
- GitHub Check: E2E Test (8)
- GitHub Check: E2E Test (1)
- GitHub Check: E2E BlockSuite Test (3)
- GitHub Check: E2E Test (2)
- GitHub Check: E2E BlockSuite Test (5)
- GitHub Check: E2E Mobile Test (1)
- GitHub Check: loom thread test
- GitHub Check: E2E BlockSuite Test (7)
- GitHub Check: fuzzing
- GitHub Check: E2E BlockSuite Test (8)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, webkit)
- GitHub Check: Build AFFiNE native (aarch64-pc-windows-msvc)
- GitHub Check: E2E BlockSuite Test (2)
- GitHub Check: E2E Test (4)
- GitHub Check: E2E Mobile Test (4)
- GitHub Check: E2E BlockSuite Test (9)
- GitHub Check: E2E BlockSuite Test (6)
- GitHub Check: E2E Test (10)
- GitHub Check: E2E Mobile Test (2)
- GitHub Check: E2E Test (5)
- GitHub Check: E2E Mobile Test (3)
- GitHub Check: E2E Mobile Test (5)
- GitHub Check: E2E Test (7)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, firefox)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, webkit)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, chromium)
- GitHub Check: Analyze (javascript, affine)
- GitHub Check: Analyze (typescript, blocksuite)
- GitHub Check: Desktop Test (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Desktop bundle check (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop Test (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop bundle check (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Server Test (4, 8)
- GitHub Check: Cloud E2E Test 3/6
- GitHub Check: Cloud E2E Test 2/6
- GitHub Check: Cloud E2E Test 4/6
- GitHub Check: Frontend Copilot E2E Test (7, 8)
- GitHub Check: Cloud E2E Test 1/6
- GitHub Check: Frontend Copilot E2E Test (8, 8)
- GitHub Check: Cloud Desktop E2E Test
- GitHub Check: Cloud E2E Test 6/6
- GitHub Check: Frontend Copilot E2E Test (6, 8)
- GitHub Check: Server Test (5, 8)
- GitHub Check: Frontend Copilot E2E Test (4, 8)
- GitHub Check: Server Test (7, 8)
- GitHub Check: Cloud E2E Test 5/6
- GitHub Check: Frontend Copilot E2E Test (5, 8)
- GitHub Check: Server Test (3, 8)
- GitHub Check: Frontend Copilot E2E Test (3, 8)
- GitHub Check: Server Test (6, 8)
- GitHub Check: Frontend Copilot E2E Test (2, 8)
- GitHub Check: Server Copilot Api Test
- GitHub Check: Server Test (0, 8)
- GitHub Check: Server Test (1, 8)
- GitHub Check: Server E2E Test
- GitHub Check: Server Test (2, 8)
- GitHub Check: Server Test with Elasticsearch
- GitHub Check: Check Git Status
- GitHub Check: Unit Test (1)
- GitHub Check: Unit Test (2)
- GitHub Check: Unit Test (3)
- GitHub Check: Unit Test (5)
- GitHub Check: Unit Test (4)
- GitHub Check: test-build-mobile-app / build-ios-web
- GitHub Check: test-build-mobile-app / build-android-web
- GitHub Check: E2E BlockSuite Test (1)
- GitHub Check: y-octo binding test on x86_64-apple-darwin
- GitHub Check: y-octo binding test on x86_64-pc-windows-msvc
- GitHub Check: E2E Test (6)
- GitHub Check: E2E Test (3)
- GitHub Check: y-octo binding test on aarch64-pc-windows-msvc
- GitHub Check: E2E BlockSuite Test (4)
- GitHub Check: E2E Test (9)
- GitHub Check: E2E BlockSuite Test (10)
- GitHub Check: E2E Test (8)
- GitHub Check: E2E Test (1)
- GitHub Check: E2E BlockSuite Test (3)
- GitHub Check: E2E Test (2)
- GitHub Check: E2E BlockSuite Test (5)
- GitHub Check: E2E Mobile Test (1)
- GitHub Check: loom thread test
- GitHub Check: E2E BlockSuite Test (7)
- GitHub Check: fuzzing
- GitHub Check: E2E BlockSuite Test (8)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, webkit)
- GitHub Check: Build AFFiNE native (aarch64-pc-windows-msvc)
- GitHub Check: E2E BlockSuite Test (2)
- GitHub Check: E2E Test (4)
- GitHub Check: E2E Mobile Test (4)
- GitHub Check: E2E BlockSuite Test (9)
- GitHub Check: E2E BlockSuite Test (6)
- GitHub Check: E2E Test (10)
- GitHub Check: E2E Mobile Test (2)
- GitHub Check: E2E Test (5)
- GitHub Check: E2E Mobile Test (3)
- GitHub Check: E2E Mobile Test (5)
- GitHub Check: E2E Test (7)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, firefox)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, webkit)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, chromium)
- GitHub Check: Analyze (javascript, affine)
- GitHub Check: Analyze (typescript, blocksuite)
- GitHub Check: Desktop Test (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Desktop bundle check (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop Test (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop bundle check (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Server Test (4, 8)
- GitHub Check: Cloud E2E Test 3/6
- GitHub Check: Cloud E2E Test 2/6
- GitHub Check: Cloud E2E Test 4/6
- GitHub Check: Frontend Copilot E2E Test (7, 8)
- GitHub Check: Cloud E2E Test 1/6
- GitHub Check: Frontend Copilot E2E Test (8, 8)
- GitHub Check: Cloud Desktop E2E Test
- GitHub Check: Cloud E2E Test 6/6
- GitHub Check: Frontend Copilot E2E Test (6, 8)
- GitHub Check: Server Test (5, 8)
- GitHub Check: Frontend Copilot E2E Test (4, 8)
- GitHub Check: Server Test (7, 8)
- GitHub Check: Cloud E2E Test 5/6
- GitHub Check: Frontend Copilot E2E Test (5, 8)
- GitHub Check: Server Test (3, 8)
- GitHub Check: Frontend Copilot E2E Test (3, 8)
- GitHub Check: Server Test (6, 8)
- GitHub Check: Frontend Copilot E2E Test (2, 8)
- GitHub Check: Server Copilot Api Test
- GitHub Check: Server Test (0, 8)
- GitHub Check: Server Test (1, 8)
- GitHub Check: Server E2E Test
- GitHub Check: Server Test (2, 8)
- GitHub Check: Server Test with Elasticsearch
- GitHub Check: Check Git Status
- GitHub Check: Unit Test (1)
- GitHub Check: Unit Test (2)
- GitHub Check: Unit Test (3)
- GitHub Check: Unit Test (5)
- GitHub Check: Unit Test (4)
- GitHub Check: test-build-mobile-app / build-ios-web
- GitHub Check: test-build-mobile-app / build-android-web
- GitHub Check: E2E BlockSuite Test (1)
- GitHub Check: y-octo binding test on x86_64-apple-darwin
- GitHub Check: y-octo binding test on x86_64-pc-windows-msvc
- GitHub Check: E2E Test (6)
- GitHub Check: E2E Test (3)
- GitHub Check: y-octo binding test on aarch64-pc-windows-msvc
- GitHub Check: E2E BlockSuite Test (4)
- GitHub Check: E2E Test (9)
- GitHub Check: E2E BlockSuite Test (10)
- GitHub Check: E2E Test (8)
- GitHub Check: E2E Test (1)
- GitHub Check: E2E BlockSuite Test (3)
- GitHub Check: E2E Test (2)
- GitHub Check: E2E BlockSuite Test (5)
- GitHub Check: E2E Mobile Test (1)
- GitHub Check: loom thread test
- GitHub Check: E2E BlockSuite Test (7)
- GitHub Check: fuzzing
- GitHub Check: E2E BlockSuite Test (8)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, webkit)
- GitHub Check: Build AFFiNE native (aarch64-pc-windows-msvc)
- GitHub Check: E2E BlockSuite Test (2)
- GitHub Check: E2E Test (4)
- GitHub Check: E2E Mobile Test (4)
- GitHub Check: E2E BlockSuite Test (9)
- GitHub Check: E2E BlockSuite Test (6)
- GitHub Check: E2E Test (10)
- GitHub Check: E2E Mobile Test (2)
- GitHub Check: E2E Test (5)
- GitHub Check: E2E Mobile Test (3)
- GitHub Check: E2E Mobile Test (5)
- GitHub Check: E2E Test (7)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, firefox)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, webkit)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, chromium)
- GitHub Check: Analyze (javascript, affine)
- GitHub Check: Analyze (typescript, blocksuite)
- GitHub Check: Desktop Test (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Desktop bundle check (windows-latest, windows, x64, x86_64-pc-windows-msvc, true)
- GitHub Check: Desktop Test (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop Test (macos-latest, macos, arm64, aarch64-apple-darwin, true)
- GitHub Check: Desktop bundle check (ubuntu-latest, linux, x64, x86_64-unknown-linux-gnu, true)
- GitHub Check: Desktop bundle check (macos-latest, macos, x64, x86_64-apple-darwin, false)
- GitHub Check: Server Test (4, 8)
- GitHub Check: Cloud E2E Test 3/6
- GitHub Check: Cloud E2E Test 2/6
- GitHub Check: Cloud E2E Test 4/6
- GitHub Check: Frontend Copilot E2E Test (7, 8)
- GitHub Check: Cloud E2E Test 1/6
- GitHub Check: Frontend Copilot E2E Test (8, 8)
- GitHub Check: Cloud Desktop E2E Test
- GitHub Check: Cloud E2E Test 6/6
- GitHub Check: Frontend Copilot E2E Test (6, 8)
- GitHub Check: Server Test (5, 8)
- GitHub Check: Frontend Copilot E2E Test (4, 8)
- GitHub Check: Server Test (7, 8)
- GitHub Check: Cloud E2E Test 5/6
- GitHub Check: Frontend Copilot E2E Test (5, 8)
- GitHub Check: Server Test (3, 8)
- GitHub Check: Frontend Copilot E2E Test (3, 8)
- GitHub Check: Server Test (6, 8)
- GitHub Check: Frontend Copilot E2E Test (2, 8)
- GitHub Check: Server Copilot Api Test
- GitHub Check: Server Test (0, 8)
- GitHub Check: Server Test (1, 8)
- GitHub Check: Server E2E Test
- GitHub Check: Server Test (2, 8)
- GitHub Check: Server Test with Elasticsearch
- GitHub Check: Check Git Status
- GitHub Check: Unit Test (1)
- GitHub Check: Unit Test (2)
- GitHub Check: Unit Test (3)
- GitHub Check: Unit Test (5)
- GitHub Check: Unit Test (4)
- GitHub Check: test-build-mobile-app / build-ios-web
- GitHub Check: test-build-mobile-app / build-android-web
- GitHub Check: E2E BlockSuite Test (1)
- GitHub Check: y-octo binding test on x86_64-apple-darwin
- GitHub Check: y-octo binding test on x86_64-pc-windows-msvc
- GitHub Check: E2E Test (6)
- GitHub Check: E2E Test (3)
- GitHub Check: y-octo binding test on aarch64-pc-windows-msvc
- GitHub Check: E2E BlockSuite Test (4)
- GitHub Check: E2E Test (9)
- GitHub Check: E2E BlockSuite Test (10)
- GitHub Check: E2E Test (8)
- GitHub Check: E2E Test (1)
- GitHub Check: E2E BlockSuite Test (3)
- GitHub Check: E2E Test (2)
- GitHub Check: E2E BlockSuite Test (5)
- GitHub Check: E2E Mobile Test (1)
- GitHub Check: loom thread test
- GitHub Check: E2E BlockSuite Test (7)
- GitHub Check: fuzzing
- GitHub Check: E2E BlockSuite Test (8)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, webkit)
- GitHub Check: Build AFFiNE native (aarch64-pc-windows-msvc)
- GitHub Check: E2E BlockSuite Test (2)
- GitHub Check: E2E Test (4)
- GitHub Check: E2E Mobile Test (4)
- GitHub Check: E2E BlockSuite Test (9)
- GitHub Check: E2E BlockSuite Test (6)
- GitHub Check: E2E Test (10)
- GitHub Check: E2E Mobile Test (2)
- GitHub Check: E2E Test (5)
- GitHub Check: E2E Mobile Test (3)
- GitHub Check: E2E Mobile Test (5)
- GitHub Check: E2E Test (7)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, firefox)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, webkit)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, chromium)
- GitHub Check: Analyze (javascript, affine)
- GitHub Check: Analyze (typescript, blocksuite)
🔇 Additional comments (4)
packages/backend/server/src/plugins/copilot/tools/index.ts (1)
1-1
: LGTM – new tool exposedRe-exporting the keyword-search tool makes it discoverable to callers; no further action needed.
packages/backend/server/src/plugins/copilot/providers/provider.ts (1)
154-163
:buildKeywordSearchGetter
signature mismatch risk
buildKeywordSearchGetter
returns
(options: CopilotChatOptions, query?: string) => Promise<…>
.Here you bind
options
(searchDocs.bind(null, options)
), yielding
(query?: string) => …
, which matchescreateKeywordSearchTool
’s expectation.Fine for now, but if the builder’s signature ever changes, this implicit contract will silently break. Consider declaring an explicit type alias shared by both builder and creator to lock the API.
packages/backend/server/src/plugins/indexer/__tests__/__snapshots__/service.spec.ts.md (1)
525-558
: Snapshot chunk acknowledgedNew snapshots reflect the added doc-ID & keyword search APIs. No concerns.
packages/backend/server/src/plugins/indexer/__tests__/service.spec.ts (1)
2303-2346
: Potential false-positive in keyword search test
doc3
is written only to the block table yetsearchDocsByKeyword
does not expect it in results. If implementation ever switches to block-only lookup, the test will wrongly pass. Explicitly assert thatdoc3
is absent to make the intention clear:t.false(result.some(d => d.docId === docId3));
packages/backend/server/src/plugins/copilot/tools/keyword-search.ts
Outdated
Show resolved
Hide resolved
6071569
to
96e2e56
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🧹 Nitpick comments (2)
packages/backend/server/src/plugins/copilot/tools/doc-keyword-search.ts (2)
41-44
: Consider stricter query validationA blank string passes Zod but is immediately rejected by
searchDocs
. Add a.min(1)
(or.trim()
) to the schema to fail fast and simplify downstream checks.
46-50
: Do not swallow search errors silently
catch { return 'Failed to search documents.' }
hides useful debugging info.
Log the error (or re-throw) so operators can trace failures, and return an empty array instead of a string to keep the return type consistent.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
packages/backend/server/src/plugins/indexer/__tests__/__snapshots__/service.spec.ts.snap
is excluded by!**/*.snap
📒 Files selected for processing (10)
.docker/selfhost/schema.json
(1 hunks)packages/backend/server/src/plugins/copilot/providers/provider.ts
(3 hunks)packages/backend/server/src/plugins/copilot/providers/utils.ts
(7 hunks)packages/backend/server/src/plugins/copilot/tools/doc-keyword-search.ts
(1 hunks)packages/backend/server/src/plugins/copilot/tools/index.ts
(1 hunks)packages/backend/server/src/plugins/indexer/__tests__/__snapshots__/service.spec.ts.md
(1 hunks)packages/backend/server/src/plugins/indexer/__tests__/service.spec.ts
(1 hunks)packages/backend/server/src/plugins/indexer/index.ts
(2 hunks)packages/backend/server/src/plugins/indexer/service.ts
(2 hunks)packages/frontend/admin/src/config.json
(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (9)
- packages/frontend/admin/src/config.json
- packages/backend/server/src/plugins/indexer/tests/snapshots/service.spec.ts.md
- .docker/selfhost/schema.json
- packages/backend/server/src/plugins/indexer/index.ts
- packages/backend/server/src/plugins/indexer/tests/service.spec.ts
- packages/backend/server/src/plugins/copilot/providers/provider.ts
- packages/backend/server/src/plugins/copilot/tools/index.ts
- packages/backend/server/src/plugins/indexer/service.ts
- packages/backend/server/src/plugins/copilot/providers/utils.ts
🧰 Additional context used
🧬 Code Graph Analysis (1)
packages/backend/server/src/plugins/copilot/tools/doc-keyword-search.ts (3)
packages/backend/server/src/plugins/indexer/index.ts (2)
IndexerService
(28-28)SearchDocResult
(28-28)packages/backend/server/src/plugins/copilot/providers/types.ts (1)
CopilotChatOptions
(150-150)packages/backend/server/src/plugins/indexer/service.ts (1)
SearchDocResult
(105-109)
⏰ Context from checks skipped due to timeout of 90000ms (49)
- GitHub Check: test-build-mobile-app / build-android-web
- GitHub Check: test-build-mobile-app / build-ios-web
- GitHub Check: y-octo binding test on aarch64-pc-windows-msvc
- GitHub Check: y-octo binding test on x86_64-pc-windows-msvc
- GitHub Check: loom thread test
- GitHub Check: Build AFFiNE native (aarch64-pc-windows-msvc)
- GitHub Check: y-octo binding test on x86_64-apple-darwin
- GitHub Check: E2E Mobile Test (5)
- GitHub Check: E2E Mobile Test (4)
- GitHub Check: E2E Mobile Test (2)
- GitHub Check: fuzzing
- GitHub Check: Build AFFiNE native (x86_64-pc-windows-msvc)
- GitHub Check: E2E Mobile Test (3)
- GitHub Check: E2E Mobile Test (1)
- GitHub Check: Build Server native
- GitHub Check: Build @affine/electron renderer
- GitHub Check: E2E Test (7)
- GitHub Check: E2E Test (3)
- GitHub Check: E2E Test (10)
- GitHub Check: E2E Test (9)
- GitHub Check: E2E Test (8)
- GitHub Check: Run native tests
- GitHub Check: E2E Test (4)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, firefox)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, webkit)
- GitHub Check: E2E Test (5)
- GitHub Check: E2E Test (2)
- GitHub Check: E2E Test (6)
- GitHub Check: E2E BlockSuite Cross Browser Test (2, chromium)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, webkit)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, firefox)
- GitHub Check: E2E BlockSuite Test (10)
- GitHub Check: E2E Test (1)
- GitHub Check: E2E BlockSuite Test (9)
- GitHub Check: E2E BlockSuite Cross Browser Test (1, chromium)
- GitHub Check: E2E BlockSuite Test (5)
- GitHub Check: E2E BlockSuite Test (8)
- GitHub Check: E2E BlockSuite Test (3)
- GitHub Check: E2E BlockSuite Test (6)
- GitHub Check: E2E BlockSuite Test (7)
- GitHub Check: E2E BlockSuite Test (4)
- GitHub Check: E2E BlockSuite Test (1)
- GitHub Check: E2E BlockSuite Test (2)
- GitHub Check: Analyze (typescript, blocksuite)
- GitHub Check: Analyze (javascript, affine)
- GitHub Check: Analyze (typescript, affine)
- GitHub Check: Analyze (javascript, blocksuite)
- GitHub Check: Typecheck
- GitHub Check: Lint
🔇 Additional comments (1)
packages/backend/server/src/plugins/copilot/tools/doc-keyword-search.ts (1)
26-32
: Verify that permission filtering preserves result shape
ac.docs(docs, 'Doc.Read')
is fed an array ofSearchDocResult
; ensure it returns the same objects (incl.title
,summary
).
If it instead returns only IDs, the tool will violate its declared return type and the caller will lose metadata.
packages/backend/server/src/plugins/copilot/tools/doc-keyword-search.ts
Outdated
Show resolved
Hide resolved
b0f4193
to
ea4a630
Compare
ea4a630
to
733375d
Compare
close AI-185
PR Dependency Tree
This tree was auto-generated by Charcoal
Summary by CodeRabbit