Skip to content

Conversation

@galshubeli
Copy link
Collaborator

No description provided.

@galshubeli galshubeli requested a review from Naseem77 January 8, 2026 15:43
@galshubeli galshubeli self-assigned this Jan 8, 2026
@overcut-ai
Copy link

overcut-ai bot commented Jan 8, 2026

Completed Working on "Code Review"

✅ Workflow completed successfully.


👉 View complete log

@railway-app
Copy link

railway-app bot commented Jan 8, 2026

🚅 Deployed to the QueryWeaver-pr-370 environment in queryweaver

Service Status Web Updated (UTC)
QueryWeaver 🕛 Waiting for status checks (View Logs) Web Jan 8, 2026 at 3:45 pm

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 8, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


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.

@github-actions
Copy link

github-actions bot commented Jan 8, 2026

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Scanned Files

None

@railway-app railway-app bot temporarily deployed to queryweaver / QueryWeaver-pr-370 January 8, 2026 15:44 Destroyed
@railway-app railway-app bot temporarily deployed to queryweaver / QueryWeaver-pr-370 January 8, 2026 15:45 Destroyed
@galshubeli galshubeli merged commit 8427655 into staging Jan 8, 2026
10 checks passed
@galshubeli galshubeli deleted the fix-demo-rules branch January 8, 2026 15:48
Copy link

@overcut-ai overcut-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Totals by importance

  • BLOCKER: 0
  • CRITICAL: 0
  • MAJOR: 1
  • MINOR: 0
  • SUGGESTION: 0
  • PRAISE: 0

Key themes

  1. Demo graph guard can be bypassed because prefix checks happen before graph IDs are sanitized (api/routes/graphs.py).

Actionable next steps

  • Normalize or sanitize graph IDs prior to prefix validation so demo-prefixed graphs are always treated as read-only regardless of whitespace or encoding tricks.

"""Update user rules for the specified graph."""
try:
# Prevent modifying rules for demo databases
if GENERAL_PREFIX and graph_id.startswith(GENERAL_PREFIX):
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[major]: The guard checks graph_id.startswith(GENERAL_PREFIX) before the value goes through _graph_name, which trims whitespace. A request such as /graphs/%20demo_* would bypass this guard yet _graph_name would resolve it to the demo DB, so demo rules remain editable. Please sanitize (or use the sanitized value) before checking the prefix to ensure demo IDs are always blocked.

Sign up for free to 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.

3 participants