fix: update search query validation to disallow empty queries - #705

Merged
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit
Jan 22, 2026
Merged

fix: update search query validation to disallow empty queries#705
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit

Conversation

@Bekiboo

@BekibooBekiboo commented Jan 22, 2026

Copy link
Copy Markdown
Collaborator

Description of change

Changed from not allowing less than 2 characters to not allowing empty search.

Issue Number

Closes#692

Type of change

  • Fix (a change which fixes an issue)

How the change has been tested

Change NOT tested yet

Change checklist

  • I have ensured that the CI Checks pass locally
  • I have removed any unnecessary logic
  • My code is well documented
  • I have signed my commits
  • My code follows the pattern of the application
  • I have self reviewed my code

Summary by CodeRabbit

Bug Fixes

  • Reduced search query minimum length requirement from 2 characters to 1 character across all search features, including user search and name-based queries. This enables users to perform more flexible and granular searches.
  • Updated validation error messaging to provide clearer feedback when search input requirements aren't satisfied.

✏️ Tip: You can customize this high-level summary in your review settings.

@BekibooBekiboo self-assigned this Jan 22, 2026
@coderabbitai

coderabbitaiBot commented Jan 22, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

This PR relaxes the minimum search query length requirement from 2 to 1 character across the Pictique API's user search endpoints and service methods. Error messages are correspondingly updated. The change enables users to initiate searches with single-character queries.

Changes

Cohort / File(s)Summary
Controller
platforms/pictique-api/src/controllers/UserController.ts
Reduced minimum search query length validation from 2 to 1 characters in search and searchByEnameOrName endpoints; updated error message from "Search query must be at least 2 characters long" to "Search query cannot be empty"
Service
platforms/pictique-api/src/services/UserService.ts
Lowered search query validation threshold from 2 to 1 character across multiple methods: searchUsers, getSearchUsersCount, getSearchSuggestions, searchUsersByEnameOrName, getSearchUsersByEnameOrNameCount; updated inline comments to reflect new 1-character rule

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~4 minutes

Possibly related PRs

  • Fix/pictique search #342: Modifies the same search validation logic in UserController.ts and UserService.ts, establishing the 2-character minimum that this PR relaxes.
  • fix: search #341: Updates search query validation across identical files, enforcing stricter constraints on the search functionality.

Poem

🐰 One character now unlocks the way,
No longer must users two letters convey!
A query so brief, just a single hop through,
Pictique's search gleams, refreshed and brand new! ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Title check✅ PassedThe title accurately describes the main change: updating search validation to disallow empty queries rather than queries shorter than 2 characters.
Description check✅ PassedThe description follows the template with all required sections (change description, issue number, type of change, testing, and checklist) mostly complete, though testing was not performed.
Linked Issues check✅ PassedThe code changes successfully implement the requirement from issue #692: relaxing search validation from minimum 2 characters to allowing 1-character queries while still blocking empty queries.
Out of Scope Changes check✅ PassedAll changes are scoped to search validation logic in UserController and UserService, directly addressing the issue requirement with no unrelated modifications.
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Bekiboo
Bekiboo marked this pull request as ready for review January 22, 2026 06:21
@Bekiboo
Bekiboo requested a review from coodos as a code ownerJanuary 22, 2026 06:21
@coodos
coodos merged commit 8a4a37e into mainJan 22, 2026
4 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] Pictique: user search fails when query is shorter than 2 characters

2 participants

@Bekiboo@coodos
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

fix: update search query validation to disallow empty queries - #705

Merged
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit
Jan 22, 2026
Merged

fix: update search query validation to disallow empty queries#705
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit

Conversation

@Bekiboo

@BekibooBekiboo commented Jan 22, 2026

Copy link
Copy Markdown
Collaborator

Description of change

Changed from not allowing less than 2 characters to not allowing empty search.

Issue Number

Closes#692

Type of change

  • Fix (a change which fixes an issue)

How the change has been tested

Change NOT tested yet

Change checklist

  • I have ensured that the CI Checks pass locally
  • I have removed any unnecessary logic
  • My code is well documented
  • I have signed my commits
  • My code follows the pattern of the application
  • I have self reviewed my code

Summary by CodeRabbit

Bug Fixes

  • Reduced search query minimum length requirement from 2 characters to 1 character across all search features, including user search and name-based queries. This enables users to perform more flexible and granular searches.
  • Updated validation error messaging to provide clearer feedback when search input requirements aren't satisfied.

✏️ Tip: You can customize this high-level summary in your review settings.

@BekibooBekiboo self-assigned this Jan 22, 2026
@coderabbitai

coderabbitaiBot commented Jan 22, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

This PR relaxes the minimum search query length requirement from 2 to 1 character across the Pictique API's user search endpoints and service methods. Error messages are correspondingly updated. The change enables users to initiate searches with single-character queries.

Changes

Cohort / File(s)Summary
Controller
platforms/pictique-api/src/controllers/UserController.ts
Reduced minimum search query length validation from 2 to 1 characters in search and searchByEnameOrName endpoints; updated error message from "Search query must be at least 2 characters long" to "Search query cannot be empty"
Service
platforms/pictique-api/src/services/UserService.ts
Lowered search query validation threshold from 2 to 1 character across multiple methods: searchUsers, getSearchUsersCount, getSearchSuggestions, searchUsersByEnameOrName, getSearchUsersByEnameOrNameCount; updated inline comments to reflect new 1-character rule

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~4 minutes

Possibly related PRs

  • Fix/pictique search #342: Modifies the same search validation logic in UserController.ts and UserService.ts, establishing the 2-character minimum that this PR relaxes.
  • fix: search #341: Updates search query validation across identical files, enforcing stricter constraints on the search functionality.

Poem

🐰 One character now unlocks the way,
No longer must users two letters convey!
A query so brief, just a single hop through,
Pictique's search gleams, refreshed and brand new! ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Title check✅ PassedThe title accurately describes the main change: updating search validation to disallow empty queries rather than queries shorter than 2 characters.
Description check✅ PassedThe description follows the template with all required sections (change description, issue number, type of change, testing, and checklist) mostly complete, though testing was not performed.
Linked Issues check✅ PassedThe code changes successfully implement the requirement from issue #692: relaxing search validation from minimum 2 characters to allowing 1-character queries while still blocking empty queries.
Out of Scope Changes check✅ PassedAll changes are scoped to search validation logic in UserController and UserService, directly addressing the issue requirement with no unrelated modifications.
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Bekiboo
Bekiboo marked this pull request as ready for review January 22, 2026 06:21
@Bekiboo
Bekiboo requested a review from coodos as a code ownerJanuary 22, 2026 06:21
@coodos
coodos merged commit 8a4a37e into mainJan 22, 2026
4 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] Pictique: user search fails when query is shorter than 2 characters

2 participants

@Bekiboo@coodos
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

fix: update search query validation to disallow empty queries - #705

Merged
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit
Jan 22, 2026
Merged

fix: update search query validation to disallow empty queries#705
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit

Conversation

@Bekiboo

@BekibooBekiboo commented Jan 22, 2026

Copy link
Copy Markdown
Collaborator

Description of change

Changed from not allowing less than 2 characters to not allowing empty search.

Issue Number

Closes#692

Type of change

  • Fix (a change which fixes an issue)

How the change has been tested

Change NOT tested yet

Change checklist

  • I have ensured that the CI Checks pass locally
  • I have removed any unnecessary logic
  • My code is well documented
  • I have signed my commits
  • My code follows the pattern of the application
  • I have self reviewed my code

Summary by CodeRabbit

Bug Fixes

  • Reduced search query minimum length requirement from 2 characters to 1 character across all search features, including user search and name-based queries. This enables users to perform more flexible and granular searches.
  • Updated validation error messaging to provide clearer feedback when search input requirements aren't satisfied.

✏️ Tip: You can customize this high-level summary in your review settings.

@BekibooBekiboo self-assigned this Jan 22, 2026
@coderabbitai

coderabbitaiBot commented Jan 22, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

This PR relaxes the minimum search query length requirement from 2 to 1 character across the Pictique API's user search endpoints and service methods. Error messages are correspondingly updated. The change enables users to initiate searches with single-character queries.

Changes

Cohort / File(s)Summary
Controller
platforms/pictique-api/src/controllers/UserController.ts
Reduced minimum search query length validation from 2 to 1 characters in search and searchByEnameOrName endpoints; updated error message from "Search query must be at least 2 characters long" to "Search query cannot be empty"
Service
platforms/pictique-api/src/services/UserService.ts
Lowered search query validation threshold from 2 to 1 character across multiple methods: searchUsers, getSearchUsersCount, getSearchSuggestions, searchUsersByEnameOrName, getSearchUsersByEnameOrNameCount; updated inline comments to reflect new 1-character rule

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~4 minutes

Possibly related PRs

  • Fix/pictique search #342: Modifies the same search validation logic in UserController.ts and UserService.ts, establishing the 2-character minimum that this PR relaxes.
  • fix: search #341: Updates search query validation across identical files, enforcing stricter constraints on the search functionality.

Poem

🐰 One character now unlocks the way,
No longer must users two letters convey!
A query so brief, just a single hop through,
Pictique's search gleams, refreshed and brand new! ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Title check✅ PassedThe title accurately describes the main change: updating search validation to disallow empty queries rather than queries shorter than 2 characters.
Description check✅ PassedThe description follows the template with all required sections (change description, issue number, type of change, testing, and checklist) mostly complete, though testing was not performed.
Linked Issues check✅ PassedThe code changes successfully implement the requirement from issue #692: relaxing search validation from minimum 2 characters to allowing 1-character queries while still blocking empty queries.
Out of Scope Changes check✅ PassedAll changes are scoped to search validation logic in UserController and UserService, directly addressing the issue requirement with no unrelated modifications.
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Bekiboo
Bekiboo marked this pull request as ready for review January 22, 2026 06:21
@Bekiboo
Bekiboo requested a review from coodos as a code ownerJanuary 22, 2026 06:21
@coodos
coodos merged commit 8a4a37e into mainJan 22, 2026
4 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] Pictique: user search fails when query is shorter than 2 characters

2 participants

@Bekiboo@coodos
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

fix: update search query validation to disallow empty queries - #705

Merged
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit
Jan 22, 2026
Merged

fix: update search query validation to disallow empty queries#705
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit

Conversation

@Bekiboo

@BekibooBekiboo commented Jan 22, 2026

Copy link
Copy Markdown
Collaborator

Description of change

Changed from not allowing less than 2 characters to not allowing empty search.

Issue Number

Closes#692

Type of change

  • Fix (a change which fixes an issue)

How the change has been tested

Change NOT tested yet

Change checklist

  • I have ensured that the CI Checks pass locally
  • I have removed any unnecessary logic
  • My code is well documented
  • I have signed my commits
  • My code follows the pattern of the application
  • I have self reviewed my code

Summary by CodeRabbit

Bug Fixes

  • Reduced search query minimum length requirement from 2 characters to 1 character across all search features, including user search and name-based queries. This enables users to perform more flexible and granular searches.
  • Updated validation error messaging to provide clearer feedback when search input requirements aren't satisfied.

✏️ Tip: You can customize this high-level summary in your review settings.

@BekibooBekiboo self-assigned this Jan 22, 2026
@coderabbitai

coderabbitaiBot commented Jan 22, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

This PR relaxes the minimum search query length requirement from 2 to 1 character across the Pictique API's user search endpoints and service methods. Error messages are correspondingly updated. The change enables users to initiate searches with single-character queries.

Changes

Cohort / File(s)Summary
Controller
platforms/pictique-api/src/controllers/UserController.ts
Reduced minimum search query length validation from 2 to 1 characters in search and searchByEnameOrName endpoints; updated error message from "Search query must be at least 2 characters long" to "Search query cannot be empty"
Service
platforms/pictique-api/src/services/UserService.ts
Lowered search query validation threshold from 2 to 1 character across multiple methods: searchUsers, getSearchUsersCount, getSearchSuggestions, searchUsersByEnameOrName, getSearchUsersByEnameOrNameCount; updated inline comments to reflect new 1-character rule

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~4 minutes

Possibly related PRs

  • Fix/pictique search #342: Modifies the same search validation logic in UserController.ts and UserService.ts, establishing the 2-character minimum that this PR relaxes.
  • fix: search #341: Updates search query validation across identical files, enforcing stricter constraints on the search functionality.

Poem

🐰 One character now unlocks the way,
No longer must users two letters convey!
A query so brief, just a single hop through,
Pictique's search gleams, refreshed and brand new! ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Title check✅ PassedThe title accurately describes the main change: updating search validation to disallow empty queries rather than queries shorter than 2 characters.
Description check✅ PassedThe description follows the template with all required sections (change description, issue number, type of change, testing, and checklist) mostly complete, though testing was not performed.
Linked Issues check✅ PassedThe code changes successfully implement the requirement from issue #692: relaxing search validation from minimum 2 characters to allowing 1-character queries while still blocking empty queries.
Out of Scope Changes check✅ PassedAll changes are scoped to search validation logic in UserController and UserService, directly addressing the issue requirement with no unrelated modifications.
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Bekiboo
Bekiboo marked this pull request as ready for review January 22, 2026 06:21
@Bekiboo
Bekiboo requested a review from coodos as a code ownerJanuary 22, 2026 06:21
@coodos
coodos merged commit 8a4a37e into mainJan 22, 2026
4 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] Pictique: user search fails when query is shorter than 2 characters

2 participants

@Bekiboo@coodos
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

fix: update search query validation to disallow empty queries - #705

Merged
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit
Jan 22, 2026
Merged

fix: update search query validation to disallow empty queries#705
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit

Conversation

@Bekiboo

@BekibooBekiboo commented Jan 22, 2026

Copy link
Copy Markdown
Collaborator

Description of change

Changed from not allowing less than 2 characters to not allowing empty search.

Issue Number

Closes#692

Type of change

  • Fix (a change which fixes an issue)

How the change has been tested

Change NOT tested yet

Change checklist

  • I have ensured that the CI Checks pass locally
  • I have removed any unnecessary logic
  • My code is well documented
  • I have signed my commits
  • My code follows the pattern of the application
  • I have self reviewed my code

Summary by CodeRabbit

Bug Fixes

  • Reduced search query minimum length requirement from 2 characters to 1 character across all search features, including user search and name-based queries. This enables users to perform more flexible and granular searches.
  • Updated validation error messaging to provide clearer feedback when search input requirements aren't satisfied.

✏️ Tip: You can customize this high-level summary in your review settings.

@BekibooBekiboo self-assigned this Jan 22, 2026
@coderabbitai

coderabbitaiBot commented Jan 22, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

This PR relaxes the minimum search query length requirement from 2 to 1 character across the Pictique API's user search endpoints and service methods. Error messages are correspondingly updated. The change enables users to initiate searches with single-character queries.

Changes

Cohort / File(s)Summary
Controller
platforms/pictique-api/src/controllers/UserController.ts
Reduced minimum search query length validation from 2 to 1 characters in search and searchByEnameOrName endpoints; updated error message from "Search query must be at least 2 characters long" to "Search query cannot be empty"
Service
platforms/pictique-api/src/services/UserService.ts
Lowered search query validation threshold from 2 to 1 character across multiple methods: searchUsers, getSearchUsersCount, getSearchSuggestions, searchUsersByEnameOrName, getSearchUsersByEnameOrNameCount; updated inline comments to reflect new 1-character rule

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~4 minutes

Possibly related PRs

  • Fix/pictique search #342: Modifies the same search validation logic in UserController.ts and UserService.ts, establishing the 2-character minimum that this PR relaxes.
  • fix: search #341: Updates search query validation across identical files, enforcing stricter constraints on the search functionality.

Poem

🐰 One character now unlocks the way,
No longer must users two letters convey!
A query so brief, just a single hop through,
Pictique's search gleams, refreshed and brand new! ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Title check✅ PassedThe title accurately describes the main change: updating search validation to disallow empty queries rather than queries shorter than 2 characters.
Description check✅ PassedThe description follows the template with all required sections (change description, issue number, type of change, testing, and checklist) mostly complete, though testing was not performed.
Linked Issues check✅ PassedThe code changes successfully implement the requirement from issue #692: relaxing search validation from minimum 2 characters to allowing 1-character queries while still blocking empty queries.
Out of Scope Changes check✅ PassedAll changes are scoped to search validation logic in UserController and UserService, directly addressing the issue requirement with no unrelated modifications.
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Bekiboo
Bekiboo marked this pull request as ready for review January 22, 2026 06:21
@Bekiboo
Bekiboo requested a review from coodos as a code ownerJanuary 22, 2026 06:21
@coodos
coodos merged commit 8a4a37e into mainJan 22, 2026
4 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] Pictique: user search fails when query is shorter than 2 characters

2 participants

@Bekiboo@coodos
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

fix: update search query validation to disallow empty queries - #705

Merged
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit
Jan 22, 2026
Merged

fix: update search query validation to disallow empty queries#705
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit

Conversation

@Bekiboo

@BekibooBekiboo commented Jan 22, 2026

Copy link
Copy Markdown
Collaborator

Description of change

Changed from not allowing less than 2 characters to not allowing empty search.

Issue Number

Closes#692

Type of change

  • Fix (a change which fixes an issue)

How the change has been tested

Change NOT tested yet

Change checklist

  • I have ensured that the CI Checks pass locally
  • I have removed any unnecessary logic
  • My code is well documented
  • I have signed my commits
  • My code follows the pattern of the application
  • I have self reviewed my code

Summary by CodeRabbit

Bug Fixes

  • Reduced search query minimum length requirement from 2 characters to 1 character across all search features, including user search and name-based queries. This enables users to perform more flexible and granular searches.
  • Updated validation error messaging to provide clearer feedback when search input requirements aren't satisfied.

✏️ Tip: You can customize this high-level summary in your review settings.

@BekibooBekiboo self-assigned this Jan 22, 2026
@coderabbitai

coderabbitaiBot commented Jan 22, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

This PR relaxes the minimum search query length requirement from 2 to 1 character across the Pictique API's user search endpoints and service methods. Error messages are correspondingly updated. The change enables users to initiate searches with single-character queries.

Changes

Cohort / File(s)Summary
Controller
platforms/pictique-api/src/controllers/UserController.ts
Reduced minimum search query length validation from 2 to 1 characters in search and searchByEnameOrName endpoints; updated error message from "Search query must be at least 2 characters long" to "Search query cannot be empty"
Service
platforms/pictique-api/src/services/UserService.ts
Lowered search query validation threshold from 2 to 1 character across multiple methods: searchUsers, getSearchUsersCount, getSearchSuggestions, searchUsersByEnameOrName, getSearchUsersByEnameOrNameCount; updated inline comments to reflect new 1-character rule

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~4 minutes

Possibly related PRs

  • Fix/pictique search #342: Modifies the same search validation logic in UserController.ts and UserService.ts, establishing the 2-character minimum that this PR relaxes.
  • fix: search #341: Updates search query validation across identical files, enforcing stricter constraints on the search functionality.

Poem

🐰 One character now unlocks the way,
No longer must users two letters convey!
A query so brief, just a single hop through,
Pictique's search gleams, refreshed and brand new! ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Title check✅ PassedThe title accurately describes the main change: updating search validation to disallow empty queries rather than queries shorter than 2 characters.
Description check✅ PassedThe description follows the template with all required sections (change description, issue number, type of change, testing, and checklist) mostly complete, though testing was not performed.
Linked Issues check✅ PassedThe code changes successfully implement the requirement from issue #692: relaxing search validation from minimum 2 characters to allowing 1-character queries while still blocking empty queries.
Out of Scope Changes check✅ PassedAll changes are scoped to search validation logic in UserController and UserService, directly addressing the issue requirement with no unrelated modifications.
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Bekiboo
Bekiboo marked this pull request as ready for review January 22, 2026 06:21
@Bekiboo
Bekiboo requested a review from coodos as a code ownerJanuary 22, 2026 06:21
@coodos
coodos merged commit 8a4a37e into mainJan 22, 2026
4 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] Pictique: user search fails when query is shorter than 2 characters

2 participants

@Bekiboo@coodos
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

fix: update search query validation to disallow empty queries - #705

Merged
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit
Jan 22, 2026
Merged

fix: update search query validation to disallow empty queries#705
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit

Conversation

@Bekiboo

@BekibooBekiboo commented Jan 22, 2026

Copy link
Copy Markdown
Collaborator

Description of change

Changed from not allowing less than 2 characters to not allowing empty search.

Issue Number

Closes#692

Type of change

  • Fix (a change which fixes an issue)

How the change has been tested

Change NOT tested yet

Change checklist

  • I have ensured that the CI Checks pass locally
  • I have removed any unnecessary logic
  • My code is well documented
  • I have signed my commits
  • My code follows the pattern of the application
  • I have self reviewed my code

Summary by CodeRabbit

Bug Fixes

  • Reduced search query minimum length requirement from 2 characters to 1 character across all search features, including user search and name-based queries. This enables users to perform more flexible and granular searches.
  • Updated validation error messaging to provide clearer feedback when search input requirements aren't satisfied.

✏️ Tip: You can customize this high-level summary in your review settings.

@BekibooBekiboo self-assigned this Jan 22, 2026
@coderabbitai

coderabbitaiBot commented Jan 22, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

This PR relaxes the minimum search query length requirement from 2 to 1 character across the Pictique API's user search endpoints and service methods. Error messages are correspondingly updated. The change enables users to initiate searches with single-character queries.

Changes

Cohort / File(s)Summary
Controller
platforms/pictique-api/src/controllers/UserController.ts
Reduced minimum search query length validation from 2 to 1 characters in search and searchByEnameOrName endpoints; updated error message from "Search query must be at least 2 characters long" to "Search query cannot be empty"
Service
platforms/pictique-api/src/services/UserService.ts
Lowered search query validation threshold from 2 to 1 character across multiple methods: searchUsers, getSearchUsersCount, getSearchSuggestions, searchUsersByEnameOrName, getSearchUsersByEnameOrNameCount; updated inline comments to reflect new 1-character rule

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~4 minutes

Possibly related PRs

  • Fix/pictique search #342: Modifies the same search validation logic in UserController.ts and UserService.ts, establishing the 2-character minimum that this PR relaxes.
  • fix: search #341: Updates search query validation across identical files, enforcing stricter constraints on the search functionality.

Poem

🐰 One character now unlocks the way,
No longer must users two letters convey!
A query so brief, just a single hop through,
Pictique's search gleams, refreshed and brand new! ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Title check✅ PassedThe title accurately describes the main change: updating search validation to disallow empty queries rather than queries shorter than 2 characters.
Description check✅ PassedThe description follows the template with all required sections (change description, issue number, type of change, testing, and checklist) mostly complete, though testing was not performed.
Linked Issues check✅ PassedThe code changes successfully implement the requirement from issue #692: relaxing search validation from minimum 2 characters to allowing 1-character queries while still blocking empty queries.
Out of Scope Changes check✅ PassedAll changes are scoped to search validation logic in UserController and UserService, directly addressing the issue requirement with no unrelated modifications.
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Bekiboo
Bekiboo marked this pull request as ready for review January 22, 2026 06:21
@Bekiboo
Bekiboo requested a review from coodos as a code ownerJanuary 22, 2026 06:21
@coodos
coodos merged commit 8a4a37e into mainJan 22, 2026
4 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] Pictique: user search fails when query is shorter than 2 characters

2 participants

@Bekiboo@coodos
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

fix: update search query validation to disallow empty queries - #705

Merged
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit
Jan 22, 2026
Merged

fix: update search query validation to disallow empty queries#705
coodos merged 1 commit into
mainfrom
fix/pictique-search-character-limit

Conversation

@Bekiboo

@BekibooBekiboo commented Jan 22, 2026

Copy link
Copy Markdown
Collaborator

Description of change

Changed from not allowing less than 2 characters to not allowing empty search.

Issue Number

Closes#692

Type of change

  • Fix (a change which fixes an issue)

How the change has been tested

Change NOT tested yet

Change checklist

  • I have ensured that the CI Checks pass locally
  • I have removed any unnecessary logic
  • My code is well documented
  • I have signed my commits
  • My code follows the pattern of the application
  • I have self reviewed my code

Summary by CodeRabbit

Bug Fixes

  • Reduced search query minimum length requirement from 2 characters to 1 character across all search features, including user search and name-based queries. This enables users to perform more flexible and granular searches.
  • Updated validation error messaging to provide clearer feedback when search input requirements aren't satisfied.

✏️ Tip: You can customize this high-level summary in your review settings.

@BekibooBekiboo self-assigned this Jan 22, 2026
@coderabbitai

coderabbitaiBot commented Jan 22, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

This PR relaxes the minimum search query length requirement from 2 to 1 character across the Pictique API's user search endpoints and service methods. Error messages are correspondingly updated. The change enables users to initiate searches with single-character queries.

Changes

Cohort / File(s)Summary
Controller
platforms/pictique-api/src/controllers/UserController.ts
Reduced minimum search query length validation from 2 to 1 characters in search and searchByEnameOrName endpoints; updated error message from "Search query must be at least 2 characters long" to "Search query cannot be empty"
Service
platforms/pictique-api/src/services/UserService.ts
Lowered search query validation threshold from 2 to 1 character across multiple methods: searchUsers, getSearchUsersCount, getSearchSuggestions, searchUsersByEnameOrName, getSearchUsersByEnameOrNameCount; updated inline comments to reflect new 1-character rule

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~4 minutes

Possibly related PRs

  • Fix/pictique search #342: Modifies the same search validation logic in UserController.ts and UserService.ts, establishing the 2-character minimum that this PR relaxes.
  • fix: search #341: Updates search query validation across identical files, enforcing stricter constraints on the search functionality.

Poem

🐰 One character now unlocks the way,
No longer must users two letters convey!
A query so brief, just a single hop through,
Pictique's search gleams, refreshed and brand new! ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Title check✅ PassedThe title accurately describes the main change: updating search validation to disallow empty queries rather than queries shorter than 2 characters.
Description check✅ PassedThe description follows the template with all required sections (change description, issue number, type of change, testing, and checklist) mostly complete, though testing was not performed.
Linked Issues check✅ PassedThe code changes successfully implement the requirement from issue #692: relaxing search validation from minimum 2 characters to allowing 1-character queries while still blocking empty queries.
Out of Scope Changes check✅ PassedAll changes are scoped to search validation logic in UserController and UserService, directly addressing the issue requirement with no unrelated modifications.
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Bekiboo
Bekiboo marked this pull request as ready for review January 22, 2026 06:21
@Bekiboo
Bekiboo requested a review from coodos as a code ownerJanuary 22, 2026 06:21
@coodos
coodos merged commit 8a4a37e into mainJan 22, 2026
4 checks passed
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] Pictique: user search fails when query is shorter than 2 characters

2 participants

@Bekiboo@coodos