-
-
Notifications
You must be signed in to change notification settings - Fork 0
feat:Set GET and POST /v1/serp/{path} to serp_v1_serp__path__post #627
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
Conversation
WalkthroughUpdated OpenAPI spec: both GET and POST operations under /v1/serp/{path} now share the operationId serp_v1_serp__path__post, replacing the previous serp_v1_serp__path__get for GET. No other changes. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Possibly related PRs
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 inconclusive)
✅ Passed checks (2 passed)
✨ Finishing touches🧪 Generate unit tests
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. Comment |
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
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (4)
src/libs/Jina/Generated/Jina.Models.SerpV1SerpPathPostResponse.Json.g.csis excluded by!**/generated/**src/libs/Jina/Generated/Jina.Models.SerpV1SerpPathPostResponse.g.csis excluded by!**/generated/**src/libs/Jina/Generated/Jina.Models.SerpV1SerpPathPostResponse2.Json.g.csis excluded by!**/generated/**src/libs/Jina/Generated/Jina.Models.SerpV1SerpPathPostResponse2.g.csis excluded by!**/generated/**
📒 Files selected for processing (1)
src/libs/Jina/openapi.yaml(2 hunks)
| - serp | ||
| summary: Serp | ||
| operationId: serp_v1_serp__path__get | ||
| operationId: serp_v1_serp__path__post |
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.
🧩 Analysis chain
Duplicate operationId across GET and POST breaks SDK generation; fix GET to use its own operationId.
Both GET and POST under /v1/serp/{path} share serp_v1_serp__path__post. operationId must be unique; many generators will overwrite one method or fail.
Apply this diff:
/v1/serp/{path}:
get:
tags:
- serp
summary: Serp
- operationId: serp_v1_serp__path__post
+ operationId: serp_v1_serp__path__get
...
post:
tags:
- serp
summary: Serp
operationId: serp_v1_serp__path__postRun to detect any remaining duplicates:
Also applies to: 330-330
🏁 Script executed:
#!/bin/bash
set -euo pipefail
pip -q install pyyaml >/dev/null
python - <<'PY'
import yaml, collections
from pathlib import Path
doc = yaml.safe_load(Path('src/libs/Jina/openapi.yaml').read_text())
ops=[]
for path, node in (doc.get('paths') or {}).items():
for method, op in node.items():
if method.lower() in {'get','post','put','patch','delete','head','options','trace'}:
oid = (op or {}).get('operationId')
ops.append((oid, path, method.upper()))
dups = [oid for oid, c in collections.Counter(o for o,_,_ in ops).items() if c>1]
if dups:
print('Duplicate operationIds found:')
for oid in dups:
for o,p,m in ops:
if o==oid:
print(f' {oid}: {m} {p}')
raise SystemExit(1)
print('No duplicate operationIds.')
PYLength of output: 126
Duplicate operationId across GET and POST — change GET to serp_v1_serp__path__get.
GET and POST under /v1/serp/{path} both use operationId serp_v1_serp__path__post; operationId must be unique or SDK generators will fail/overwrite.
File: src/libs/Jina/openapi.yaml (GET: line 306, POST: line 330)
Apply this diff:
/v1/serp/{path}:
get:
tags:
- serp
summary: Serp
- operationId: serp_v1_serp__path__post
+ operationId: serp_v1_serp__path__get
...
post:
tags:
- serp
summary: Serp
operationId: serp_v1_serp__path__post📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| operationId: serp_v1_serp__path__post | |
| operationId: serp_v1_serp__path__get |
🤖 Prompt for AI Agents
In src/libs/Jina/openapi.yaml around line 306, the GET operation for
/v1/serp/{path} currently uses the duplicate operationId
"serp_v1_serp__path__post"; update that operationId to "serp_v1_serp__path__get"
to ensure uniqueness (and check nearby POST at line ~330 remains
"serp_v1_serp__path__post"), then run any OpenAPI validators or SDK generators
to confirm no naming collisions and update any code references if they rely on
the old operationId.
Summary by CodeRabbit