-
Notifications
You must be signed in to change notification settings - Fork 518
Integrate find #1834
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: main
Are you sure you want to change the base?
Integrate find #1834
Conversation
frontend is now calling the search endpoint
I am adding the path params to the search endpoint. This allows searching in subdocs.
I did a mistake in the env variables file
pagination is no longer supported by Find
handle filtering on sub-docs
I am fixing a bug about dupplicated documents
I update the changelog
I am removing dead code
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
Integrates Find-powered document search into the Docs UI/API, removing the previous infinite-scroll pagination approach and adding optional path-based scoping for “current doc” searches.
Changes:
- Frontend doc search now calls a dedicated
documents/search/endpoint via a newuseSearchDocshook and removes infinite pagination. - Backend search endpoint proxies to the configured Find indexer, adds optional
pathfiltering, and returns a simplified{count, results}response. - Development environment variables are updated to enable the indexer and store OIDC tokens in session.
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| src/frontend/apps/impress/src/features/docs/doc-search/components/DocSearchSubPageContent.tsx | Switches “current doc” search to Find-backed useSearchDocs with path scoping. |
| src/frontend/apps/impress/src/features/docs/doc-search/components/DocSearchModal.tsx | Removes legacy filter props from search content components (target selection remains). |
| src/frontend/apps/impress/src/features/docs/doc-search/components/DocSearchContent.tsx | Replaces infinite query + InView pagination with useSearchDocs. |
| src/frontend/apps/impress/src/features/docs/doc-management/api/useDocs.tsx | Removes title query param support from the list-docs hook params builder. |
| src/frontend/apps/impress/src/features/docs/doc-management/api/searchDocs.tsx | Adds new React Query hook + request param construction for Find search endpoint. |
| src/backend/core/services/search_indexers.py | Extends indexer search call to accept a path filter and forwards it to Find. |
| src/backend/core/api/viewsets.py | Refactors search logic, removes pagination for Find-backed results, and adds path plumbing. |
| src/backend/core/api/serializers.py | Updates search query serializer to drop pagination params and add optional path. |
| env.d/development/common | Enables token storage and enables the indexer in dev env. |
| docs/search.md | Minor wording correction in search configuration docs. |
| CHANGELOG.md | Adds an “integrate Find search” entry under Unreleased. |
Comments suppressed due to low confidence (1)
src/backend/core/api/serializers.py:985
pathis not trimmed, so a value like' 'will pass validation even though it’s effectively blank. To matchqbehavior and avoid confusing/ineffective filters, settrim_whitespace=Trueforpath(and keepallow_blank=False).
q = serializers.CharField(required=True, allow_blank=False, trim_whitespace=True)
path = serializers.CharField(required=False, allow_blank=False)
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
src/frontend/apps/impress/src/features/docs/doc-search/components/DocSearchSubPageContent.tsx
Show resolved
Hide resolved
src/frontend/apps/impress/src/features/docs/doc-management/api/searchDocs.tsx
Show resolved
Hide resolved
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.
Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.
Purpose
integrate Find to Docs
Proposal
useSeachDocshook in charged of calling the search endpoint.pathparams to handle the sub-docs filtering.This does not include new tests.
External contributions
Thank you for your contribution! 🎉
Please ensure the following items are checked before submitting your pull request:
git commit --signoff(DCO compliance)git commit -S)<gitmoji>(type) title description## [Unreleased]section (if noticeable change)