Local search: path-scoped suggestions, explicit path_prefix wins (#101) - #104
Open
reekitconcept wants to merge 1 commit into
Open
Local search: path-scoped suggestions, explicit path_prefix wins (#101)#104reekitconcept wants to merge 1 commit into
reekitconcept wants to merge 1 commit into
Conversation
Port of the local-scoping fixes from the feature-ai-rag line (#100), without the AI-search parts: - @solr-suggest accepts an optional path_prefix and filters with path_parents, so the livesearch suggestions honor a subtree scope like the search results do (integration test included; pathPrefix argument on the solrSearchSuggestions action). - searchPathPrefix(): an explicit path_prefix URL param wins over the getPathPrefix heuristic, which treats every single-segment path as a language root and silently dropped the prefix for top-level subsites and workspaces. The multilingual path handling neutralizing path_prefix on non-PAM sites (#101 item 3) remains open. Merge pull request #84 from kitconcept/fix-navigation-lint Fix three RUF005 lint violations invisible to CI Fix three RUF005 lint violations invisible to CI The plone/meta backend-lint workflow runs 'ruff check --diff', which only reports violations with a SAFE autofix and exits 0 otherwise - RUF005's fix is classified unsafe, so these three pre-existing violations never failed CI while a plain 'ruff check' reports them. Fixed with behavior-identical tuple unpacking; navigation tests green. Merge pull request #78 from kitconcept/fix-acceptance-tika-orphan Stop tika-acceptance container when stopping the acceptance backend CI: run acceptance jobs when the Makefile changes The acceptance CI run is driven entirely by Makefile targets (ci-images-load, ci-containers-start, ci-test), but the acceptance paths-filter did not include the root Makefile, so Makefile-only changes that affect how the acceptance stack is built/started/tested did not trigger the acceptance jobs. Add 'Makefile' to the acceptance filter. Stop tika-acceptance container when stopping the acceptance backend `make acceptance-backend-dev-start` ran `docker compose up backend-acceptance solr-acceptance`, pulling in tika-acceptance only as a solr-acceptance dependency. docker compose up stops the services it was given on Ctrl-C but leaves such dependencies running, orphaning the tika container. Name tika-acceptance explicitly in the up command so it is stopped too. Merge pull request #77 from kitconcept/retag-solr-image-workflow Add manual workflow to retag the Solr image Add manual workflow to retag the Solr image on ghcr.io Merge pull request #76 from kitconcept/solr-image-release-tag Tag the Solr image with the release number Tag the Solr image with the release number on release-tag pushes Release 2.0.0a14 Merge pull request #75 from kitconcept/overflow-facets Fix grey bars around facets in search Add changeLog Fix grey bars around facets in search Merge pull request #74 from kitconcept/hide-empty-search-tabs Hide empty search tabs container on empty search term Hide empty search tabs container on empty search term Merge pull request #73 from kitconcept/fix-vector-image Fix dense vector field schema and guard CI against solr-only regressions ci: also run backend tests on solr/ changes news entries for vector schema fix and CI guardrails ci: run acceptance and smoke-test solr image on solr/ changes A solr-only change like the broken DenseVectorField attribute slipped through CI because: - main.yml's push trigger and config.yml's acceptance path-filter both excluded solr/**, so the acceptance suite (the only thing that boots Solr) never ran for solr-only PRs. - solr.yml built and pushed the image but did not start it, so a schema that fails to load on core startup still produced a green build. Add solr/** to both filters so acceptance runs on solr-only PRs against the locally-built solr-acceptance service, and add a smoke-test step to solr.yml that boots the freshly built image and pings the plone core before the multi-arch push. fix DenseVectorField param: hnswEfConstruction -> hnswBeamWidth hnswEfConstruction is not a recognized attribute on solr.DenseVectorField in Solr 9.10, causing the plone core to fail to load on startup. The correct attribute name is hnswBeamWidth. Merge pull request #72 from kitconcept/add-dense-vector-field Add dense vector field strore content vector field replace hnswBeamWidth param with hnswEfConstruction, set similarityFunction to dot_product & remove params with default values add dense vector field type and field release 2.0.0a13 Merge pull request #71 from kitconcept/63-vocab-support Add vocabulary support for facet conditions (#63) lint Add upgrade step for registry record schema Add vocabulary support for facet conditions (#63) - Add useVocab/useVocabs hooks with VocabContext for caching and batched fetching - Extend fieldList config to support vocabulary references (name, isMultilingual) - Return vocabulary metadata from backend search endpoint - Wire vocabulary labels into SearchConditions and SearchConditionsField - Hide search prefix box for vocabulary-backed facet fields - Fix useSelector rerenders in SolrSearchAutosuggest and routes - Fix livesearch widget exception during text changes - Fix test_services_navigation.py which used the wrong layer and corrupted ZODB state - Add INSTRUCTIONS.md with documentation for vocabulary support and calculated fields - Add tests for VocabContext, useVocab, useVocabs, and backend vocabulary parsing Merge pull request #70 from kitconcept/extra-contact-fields-person Extra fields for Person content type index fields update schema add job title field add fields to schema Release 2.0.0a12 Merge pull request #69 from kitconcept/add-missing-navtree-with-excluded-backend Add navigation_with_excluded backend service Add navigation_with_excluded service for breadcrumbs with excluded items Add a new navigation expander and REST API endpoint that returns the full navigation tree including items marked as exclude_from_nav. This is needed for displaying breadcrumb titles in global search results where intermediate items may be hidden from navigation. The frontend part was already included, this is to add the backend part which has been missing. Release 2.0.0a11 Merge pull request #67 from kitconcept/add-missing-exports-in-package Add missing exports in package.json to fix eslint errors in consumers Update frontend/packages/volto-solr/package.json Add missing exports in package.json to fix eslint errors in consumers Release 2.0.0a10 Merge pull request #65 from kitconcept/update-core Make sure existing cores get config updates Merge pull request #61 from kitconcept/fhnw-features WIP Add FHNW Solr features: spellcheck, collate, highlighting, and frontend helpers Add .mxdev_cache/ to gitignore Bump collective.solr to >=9.4.0 Update upgrade step to not destroy existing customizations Run make format Add getNavigationExcluded explanation to the readme Add documentation Add exception guard for extra condition config containing != 3 elements Remove unnecessary memoization from solr extra_conditions Use 400 Bad Request instead of 500 in configuration errors Update changelog news - separate issues for both frontend, backend, and root Revert solrconfig params to explicitly submitted params ... for compatibility with collective.solr, which also uses this service. Make sure existing cores get config updates Add highlighting support for title and description fields in search results - Update all ResultItem templates to display highlighted titles when search terms match in the Title field - Add highlighting_description support with fallback to body highlighting - Add tests for highlighting_title and highlighting_description fields Add explicit module entry point to fix namespace package loading The plone.autoinclude loader derives module names from project names using: `wsdist.project_name.replace("-", "_")` For kitconcept.solr this produces the wrong import path: - Project name: kitconcept.solr → PEP 503 normalized: kitconcept-solr - After replace("-", "_"): kitconcept_solr - Actual import path: kitconcept.solr (namespace package with dot) The fix-25 branch (plone/plone.autoinclude#25) addressed this for z3c.autoinclude.plugin entry points but not for plone.autoinclude.plugin. Workaround: explicitly set module = "kitconcept.solr" so the loader uses the specified value instead of deriving it incorrectly. Refs: plone/plone.autoinclude#25 Refs: plone/Products.CMFPlone#4126 Add FHNW Solr features: spellcheck, collate, highlighting, and frontend helpers NOTE: This changeset extends the backend API to support advanced search features (spellcheck, collate, highlighting), and extends the frontend API to allow projects to implement custom UX on top of kitconcept.solr's capabilities. It also fixes a critical bug where filtering by multiple facet conditions failed to correctly disable voided conditions. When using the built-in default search page, both search and suggest work identically as before. Backend: - Add spellcheck with collate support for "did you mean" suggestions - Add highlighting with alternate field support - Add extra conditions filtering (content types, metadata fields) - Fix facet conditions, portal type, and content fields handling - Fix language handling and encoding issues - Fix local search path prefix matching - Update Solr configuration for spellcheck component - Add upgrade step for highlighting field setup Frontend: - Add getCollationMisspellings helper for "did you mean" feature - Add getSuggestions helper for extracting/sorting suggestions - Add navigation_with_excluded Redux action and reducer - Add SearchWidget customization to use SolrSearchWidget - Updated resultItems/index.js to avoid inline re-export pattern Tests: - Add comprehensive spellcheck/collate tests - Add highlighting endpoint tests - Add extra conditions tests - Add utility function tests Release 2.0.0a9 Merge pull request #60 from kitconcept/add-responsibilities-field Add responsibilities field to schema add responsibilities field to schema Merge pull request #59 from kitconcept/davisagli-patch-1 Update instructions for overriding Tika server URL Fix documentation for configuring Tika URL Update instructions for overriding Tika server URL Fixed the method to override Tika server URL in Solr configuration. Release 2.0.0a8 Merge pull request #58 from kitconcept/fix-tikka-vulnerability Fix CVE-2025-66516: Upgrade to Solr 9.10 with external Tika server fix Vale error More accurate release note for the Python package Make upgrade docs clearer that you have to start running a Tika service, and how to configure the connection to it Upgrade to Solr 9.10 with external Tika server (CVE-2025-66516 fix) - Upgrade Solr from 8 to 9.10 - Add external Tika server (3.2.3) to mitigate CVE-2025-66516 - Update solrconfig.xml for Solr 9 compatibility (luceneMatchVersion 9.12) - Configure extraction handler to use external Tika server - Remove deprecated local Tika library loading - Add Makefile targets for solr-activate-and-reindex Merge pull request #57 from kitconcept/publish-solr-image Restore workflow for publishing solr image changelog Restore workflow for publishing solr image Release 2.0.0a7 Merge pull request #55 from kitconcept/schema-intranet-fields Add kitconcept.intranet fields to schema changelog Add kitconcept.intranet fields to schema Release 2.0.0a6 Merge pull request #54 from kitconcept/fix-suggestion-service Fix suggestion service to work with person search Fix suggestion service - Fix query string to match usage as in solr.py - Add _language_settings method to handle language from request parameters - Add permission filtering - Adjust extra solr parameters to override parameters hardcoded in solrconfig.xml (to avoid the need to rebuild solr) Caveat: the followings are not applied, and planned with v3 refactoring: - path_prefix handling - portal_type handling - language filtering and is_multilingual handling are actually handled, but the parameters are not yet passed from the service caller. changes from release Merge pull request #53 from kitconcept/fix-suggestion-widget-component-definition Fix solr search widget inline component definitions Merge pull request #51 from kitconcept/fix-solrsearchwidget-a11y-props Pass in aria props to the input in SolrSearchAutosuggest Fix solr search widget inline functions - shortenURL function should not be defined inline - renderSuggestion function should stay inline but memoized Pass in aria props to the input in SolrSearchAutosuggest Release 2.0.0a4 Merge pull request #52 from kitconcept/fixintranetheader Fixed CSS leak in VLT intranet header Changelog Fixed CSS leak in VLT intranet header Release 2.0.0a3 Fix repository config Merge pull request #50 from kitconcept/fix-broken-css Fix broken css that broke sites due to search class Fix broken css that broke sites due to search class Release 2.0.0a2 Revert deletion of top-level news folder (#45) * Revert deletion of top-level news folder. * Run changelog check when news folder is modified Add support for an autocomplete livesearch widget (#43) * Add support for an autocomplete livesearch widget Using code from the previous ree-add-livesearch branch, and adapting it as needed to the new environment. - add component - add reducers - wire in widget - add missing svgs - add missing dependencies - miscellaneous styling fixes - fix the css of the builtin input - remove the border radius problem from the input (red border radius appeared): - add a gap to the flex layout after the icon. - remove the double slash from the path. - styling fixes for header input -css styling of the input field, fix padding - necessary updates on solrSearchAutosuggest - enhance onChange with a second parameter - enhance css marker - provide {value} as a second parameter to onChange - fix inputRef handling - blur even without an inputRef prop - add state variable to be able to show the last executed search term instead of the current input value - make the input widget submittable - update index.js in components - add queryStateFromParams, queryStateToParams to exports - also provide qs (query-string) for exporting from components - do not use exportDefaultFrom experimental syntax - provide some volto utils via the registry * fix lockfile * fix changelog * fix changelog * fix changelog * fix changelog * fix linting * fix linting * fix linting * fix linting * fix linting * fix className on input, fixes acceptance tests * Fix CI - move frontend changelog into the inner package - move test_suggest.py to its location --------- Co-authored-by: Balázs Reé <ree@greenfinity.hu> Release 2.0.0a1 Update README and project's CHANGELOG Convert to monorepo (#41) * initial * Adding front-end Solr support - porting from previous packages - SolrSearch component - remove customization markers - add routing to use custom options, improved setup - hide search input based on option - add internationalized date formatting - Fix content type filtering in solr sidebar search * Remove "no results" info if the search word is empty Currently we don't do an empty search for all results in the site, but yet we don't want to see the "no results" info message before the search has started. Ported up from DLR. * `allow_local` query parameter To support this, the `allow_local` query parameter is introduced. (Previously, being at the root signified that only global search is allowed, so this parameter was not needed.) * Make solr search language dependant TBD - incorporate changes in SolrSearch.jsx, LanguageSelector.js - add the copy reducer to SolrSearch.jsx - even the resetContent hack is missing, that has to be added too * Fix CI run ... Except, cypress still hangs... - fix tests - fix lint - fix yarn.lock - add changelog - add example cypress test - yarn version * Support fieldList (fl) in the configuration - Updates as needed * Search result items styling - default result item - event result item * show end - image result item * show image type from mime type * separator between info items - news item result item * In progress because the image preview is not yet present. * Better handling of dates in search result types - support "not published yet" message, although not activated yet * Linting * Fix acceptance docker configuration - frontend, backend, solr works with config - adding an "acceptance only" configuration to the volto addon, which we might get rid of later, but ok at this point * Use internet profile rather than intranet for testing - Use plone.volto rather than kitconcept.volto for the acceptance testing, which makes login in tests "more conventional". - otherwise it's no difference, both could make sense. * WIP * WIP * WIP * Add more tests - language dependent tests - fix schema - fix dockerfile * Remove duplicate text field definition in schema.xml * Remove empty line from schema * Fix search for pdf files by enabling tikka from the acceptance tests * Fix highlighting * Add more acceptance tests * Fix CI - Use correct dockerfile - remove redundant ci.yml for now * Revamp solr configuration - use labels from the server - clean up docker file - add documentation about the configuration * Support all preview images - preview image for news - for all content types, if exist - use volto's Image component * Update default icon * Add backwards compatibility support to Volto 16 and lower Image component is only from Volto 17, so we have to add support for the lower versions. This can be removed at some point in the future. * Use an icon per content type in the results - add component for icons - add support for setting up content icons from the Volto config * Prepare for release * Prepare for release * Prepare for release * Prepare for release * Prepare for release * Prepare for release * Prepare for release, remove no longer needed files, move some config to its own config file to match other packages. * Changelog * Release 1.0.0-alpha.2 * Update README.md (#13) * Update README.md * Update README.md Co-authored-by: David Glick <david@glicksoftware.com> --------- Co-authored-by: David Glick <david@glicksoftware.com> * Fix translations for the result tabs (#16) (#17) Co-authored-by: Balázs Reé <ree@greenfinity.hu> * Add support for sidebar facet conditions (#18) * Add support for sidebar facet conditions - add person result type - display phone, email - add missing icons - thumbnail image - fallback avatar - layout selector and grid layout - ResultItemPreviewImage helper - query parameters improvements - refactor conversion between state and query parameters - support search conditions as a query parameter - facet fields UI - optimized rendering - field results - cached selection - sorted values by count, alphabetic - show remaining, already selected values at the end of the list - prefix filter for each field - support Show more for each field - fix semantic-ui dimmer to cover the entire viewport * Add required news doodah * fix linting * fix linting * fix linting * fix linting * fix linting * fix linting * - pass layout to result type templates as a prop * - enable translations on facet search condition labels * - implement base64 conversion of utf, needed for accented characters * rename prefix - contains * fix tests * - fix css for image result type, tile footer * fix linting * Use the branched version of kitconcept.solr for acceptance * - fix margins of preview image in result types * fix counter layout, casued problem with missing (0) counters * Fix dimmer to not block the entire page, center instead * - hide page selector if there is only one page * Show more indicator displayed only if there are more elements * - fix - never provide a * as a fallback for empty SearchableText * - add doEmptySearch option that causes to allow search with empty term This is useful to start search with the facet conditions. * improve scrollbar placement on more list of values * Fix linting Fix linting Fix linting * Update acceptance to use kitconcept.solr==1.0.0a5 * Update solr configuration for acceptance tests * Fix local acceptance testing, HOST env var is needed for Volto 17 setup * Fix results to be shown * Fix updating search on paging or sort order change * Fix sort order * Fix unit tests --------- Co-authored-by: Balázs Reé <ree@greenfinity.hu> * Release 1.0.0-alpha.3 * Send solr request only once [#19] (#20) The solr request to the backend is sent 2 times. This fixes it and only 1 is sent. By the way, this triggered a bug in asyncconnect. There was a race condition and sometimes the results will be ignored completely, that is both of the two updates were ignored. It's beyond the scope to fix asyncconnect, but sending only 1 request instead of the double should fix this. Co-authored-by: Balázs Reé <ree@greenfinity.hu> * Release 1.0.0-alpha.4 * Improve large sidebar counters (#23) (#24) - We need 3 digits, make flatter badge - everything above 999: show 1K etc. - everything about 99K: 99K and that's it.... Co-authored-by: Balázs Reé <ree@greenfinity.hu> * Fix issue and homepage link in package.json * Release 1.0.0-alpha.5 * Fall back to Plone search if backend not installed * fix import * fix workflow * Add flag to site endpoint to indicate if solr is active * Don't use deprecated react-portal, pass state to isBackendAvailable * changelog * lint * lint * Move to native namespace packages * Remove peerDependency on volto * Remove unused files * Remove not needed files * Modernize kitconcept.solr package * Style / Lint fixes kitconcept.solr * Modernize volto-solr package * Use new cookieplone template on this package * Reduce complexity on some backend methods * Refactor acceptance/unit tests to use a shared file * GHA: Fix acceptance matrix * GHA: Fix config paths * Documentation: Add terms to the vocabulary * GHA: Use reusable workflow from plone/meta for documentation * Fix lint * GHA: Fix acceptance docker compose * GHA: Fix image names * GHA: Trigger acceptance tests when docker-compose files were changed * GHA: Fix image build for frontend * GHA: Change input spec-path to spec-pattern * Fix env vars * Use name instead of spec-path in path to store artifacts * Update ESLint settings * Fix checking of backend component --------- Co-authored-by: Balázs Reé <ree@greenfinity.hu> Co-authored-by: Timo Stollenwerk <stollenwerk@kitconcept.com> Co-authored-by: Balázs Reé <95078727+reekitconcept@users.noreply.github.com> Co-authored-by: Victor Fernandez de Alba <sneridagh@gmail.com> Co-authored-by: Timo Stollenwerk <tisto@users.noreply.github.com> Co-authored-by: David Glick <david@glicksoftware.com> Merge pull request #37 from kitconcept/fix-build Update to test with latest Plone 6.1 Black Black Fix release-check Apply latest plone.meta from main branch Remove plone 5.2 workflow which is not actually running the tests Update to test with latest Plone 6.1 Back to development: 1.0.0a7 Preparing release 1.0.0a6 Merge pull request #27 from kitconcept/ree-fix-first-tab-condition Fix first tab condition Fix first tab condition Back to development: 1.0.0a6 Preparing release 1.0.0a5 Add missing changelog (news entry) Merge pull request #23 from kitconcept/ree-implement-sidebar-facets Add support for sidebar facet conditions fix unit tests fix linting Remove dependencies to collective.person Remove unneeded facet_query Remove logging Merge branch 'main' of github.com:kitconcept/kitconcept.solr - fix tab counters to be unaffected by the facet condition Update tests - support empty search to get all results Update tests Get a plus one value so that the client can use for Has More detection Add support for sidebar facet conditions - add dependency to collective.person - support contact_phone, contact_email from Person content type - implement support for sidebar facet conditions - select-able facet field value conditions - containment search in facet field values, case insensitice - support "show more" - implement support for layouts in facet tabs - save state in url, gracefully ignore invalid base64 from the query Also: - add injection prevention - add a "devtest" target to tox to allow parametrize pytest - fix linting - line_length = 79 to black, satisfies both black and pyflakes Merge pull request #21 from kitconcept/ree-solr-security-fix Fix solr search security problem with individual users Preparing release 1.0.0a5 [ci skip] Add 'make release' command to Makefile Fix solr search security problem with individual users - Mangle : to $ in roles and users, as collective.solr does this when indexing to solr - Add tests for this case - Add other security tests Merge pull request #19 from kitconcept/fix-18 Fix generic setup profile titles Back to development: 1.0.0a5 Preparing release 1.0.0a4 Update changelog Support Plone 5.2 / also refactor reindex helpers (#17) * Support Plone 5.2 - remove Plone dependencies so the package can work with Plone 5.2 - make constraints work in an alternate way between versions - unpin plone.restapi - test Plone 5.2 on the CI - currently install only, as test framework conflicts with 5.2 * Refactor reindex helpers in an importable way * Github action updates for 5.2 --------- Co-authored-by: Balázs Reé <ree@greenfinity.hu> Fix generic setup profile titles #18 Back to development: 1.0.0a4 Preparing release 1.0.0a3 Update path to customers' images Add DLR and FZJ in credits section. (#13) * Add DLR and FZJ in credits section. * Update README. --------- Co-authored-by: Érico Andrei <ericof@gmail.com> Back to development: 1.0.0a3 Preparing release 1.0.0a2 Increase version of collective.solr (#15) Needed for `image_scales` to be serialized correctly. Co-authored-by: Balázs Reé <ree@greenfinity.hu> Back to development: 1.0.0a2 Preparing release 1.0.0a1 Revamp solr configuration (#11) - restructure service response to return facet labels with the counts as well - add keep_full_solr_response option, prune payload by default - add documentation In addition: - fix makefile, `make solr-start` etc. to work Co-authored-by: Balázs Reé <ree@greenfinity.hu> Merge pull request #10 from kitconcept/issue-5-cleanup Prepare package for release Pin to version 6.0.6 Add a constraints.txt file Update README Clean up changelog GHA: Use tag 1.0.0 Use a higher timeout to allow the CI to build the Solr image Use is_responsive as function instead of fixture Improve codecoverage Fix i18n support Remove (unused Homepage content-type) Handle ProtocolError and ConnectionTimeout exceptions Update README, setup.py Fix tests Remove circular dependency check as collective.solr introduces one with Products.CMFPlone Prepare package for release Merge pull request #8 from kitconcept/fix-image-scales Add image_scales and image_field to result fields Add image_scales and image_field to result fields Merge pull request #7 from kitconcept/ree-solr-support-body-text Add search supportive indexers - body_text - fixes highlighting Add search supportive indexers - body_text - fixes highlighting - body_text - this enables highlighting The following are disabled: - SearchableText for image - index News item attachment Merge pull request #6 from kitconcept/ree-solr-support-fix Fix broken solr schema.xml Fix broken solr schema.xml - fix broken syntax - Add back the correct text field definition together with copyfield - Remove duplicate text field definition Merge pull request #1 from kitconcept/ree-solr-support Advanced solr support Fix CI Merge pull request #4 from kitconcept/issue-3-solr-docker-image Solr image generation using GHA Implement GHA workflow to build and publish ghcr.io/kitconcept/solr Docker image WIP add mime type to solr index WIP add solr index for preview images Support fieldList (fl) in the configuration - Renames as appropriate - Add `end` to the set of queried fields - add tests - Fix lowercase project name (needed in newer docker versions) Fix transaction activation Without this, it would not properly detect if solr is running, in case the service is not yet activated. Add an option to reindex solr without clearing it Add back @ to makefile to suppress output Also fix docker compose script invocation Add full matrix for testing Disable flaky solr test (location attr missing) Fix linting Fix escaping terms in solr queries Fixes specials char in the query. Ported forward from DLR. Support language specific search via the lang parameter Ported from DLR. Fix the activate script lint support context path as an alternative to path_prefix - support context path as an alternative to path_prefix more cleanup Fix lint Advanced solr support - add docker stack - add back-end service - add facets configuration - add activate script Add solr endpoint Add classifiers Add Plone 6 flake8 Black Add gh actions Initial import
reekitconcept
force-pushed
the
kid/local-scope-main
branch
from
July 30, 2026 08:54
247f4e6 to
b58fc67
Compare
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.
Revival of #102 (closed during the delivery consolidation). Fixes #101 items 1 and 2 on the release line — port of the local-scoping fixes from
feature-ai-rag(#103), without the AI-search parts:@solr-suggestaccepts an optionalpath_prefixand filters withpath_parents, so livesearch suggestions honor a subtree scope like the search results do — integration test included (TestSuggestPathPrefix, same test as on the feature line).searchPathPrefix(): an explicitpath_prefixURL param wins over thegetPathPrefixheuristic, which treats every single-segment path as a language root (/de,/en) and silently dropped the prefix for top-level subsites/workspaces.Item 3 of #101 (multilingual handling neutralizing
path_prefixon sites without plone.app.multilingual) remains open.Not to be merged yet — queued for the release line together with #96 and #99.