Skip to content

demo"; echo PWNED_INJECTION_SUCCEEDED; ##15

Closed
chethanuk wants to merge 5 commits into
mainfrom
test/injection-demo
Closed

demo"; echo PWNED_INJECTION_SUCCEEDED; ##15
chethanuk wants to merge 5 commits into
mainfrom
test/injection-demo

Conversation

@chethanuk

@chethanuk chethanuk commented Jul 21, 2026

Copy link
Copy Markdown
Owner

Test only. Demonstrates GitHub Actions script injection. Do not merge.

Summary by CodeRabbit

  • Documentation
    • Simplified README quick-start instructions across supported languages.
    • Added links to dedicated installation, configuration, CLI, integration, and troubleshooting documentation.
    • Added guidance for configuring CC-Switch with compatible providers in English, Japanese, and Chinese.
  • Chores
    • Improved CI efficiency by canceling outdated workflow runs when newer runs are triggered.
    • Added workflow examples demonstrating safer handling of pull request content in automation.

lizhengfeng101 and others added 5 commits July 21, 2026 17:12
…baba#424)

Reduce the large content overlap between the README files and the docs
site (pages/src/content/docs). Add a Documentation section linking to
open-codereview.ai/docs, and collapse the Commands, Review Rules, and
Configuration Reference sections into one-line summaries plus links.
This makes the docs site the single source of truth for reference
content and cuts the multi-language maintenance burden.

Applied consistently across all five localized READMEs (en/zh/ja/ko/ru).
Every push to a PR started a new CI run while the previous one kept
running to completion on the self-hosted pool. Only the newest commit
matters, so the earlier runs were holding runners for results nobody
would read.

Adds a top-level concurrency group keyed on the PR number, falling back
to the ref for push-to-main. This follows the pattern OpenSandbox uses
across its CI workflows, and is byte-identical to the block already
running in ocr-review.yml, so it reuses the repo's existing idiom
rather than introducing a second one.

Left the other workflows alone deliberately. deploy-pages.yml already
sets cancel-in-progress: false, and release.yml must never cancel:
aborting mid npm-publish would leave the platform packages published
while the meta package's optionalDependencies reference versions that
were never pushed, and npm publish is not reversible.

Verified with actionlint v1.7.12 (clean across all four workflows) and
by exercising both paths live on a fork: a superseded pull_request run
cancelled in 38s, and a superseded push-to-main run cancelled while a
run from a commit without the block, on the same branch, stayed queued.

Closes alibaba#422
Migrate the CC-Switch note removed from the README in alibaba#426 into the
docs Configuration page (en, zh, ja).

Signed-off-by: shaurya2k06 <shaurya2k06@gmail.com>
@coderabbitai

coderabbitai Bot commented Jul 21, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

The PR adds CI concurrency cancellation and a pull request injection demonstration workflow, simplifies localized README quick starts into documentation links, and documents CC-Switch configuration in English, Japanese, and Chinese.

Changes

CI workflow controls

Layer / File(s) Summary
CI concurrency settings
.github/workflows/ci.yml
Workflow runs are grouped by workflow and pull request or ref, with superseded runs canceled automatically.

Pull request injection demonstration

Layer / File(s) Summary
Workflow injection comparison
.github/workflows/zz-injection-demo.yml
A pull request workflow compares direct shell interpolation of the title with environment-variable passing.

Documentation restructuring

Layer / File(s) Summary
Localized quick-start simplification
README.ja-JP.md, README.ko-KR.md, README.ru-RU.md, README.zh-CN.md
Installation and LLM setup details are shortened to npm quick starts and links to external guides.
README documentation indexes
README.md, README.*.md
Long integration and reference sections are replaced with links to official documentation pages.
CC-Switch configuration guidance
pages/src/content/docs/*/configuration.md
Configuration pages document local proxy URLs, provider commands, arbitrary API keys, and retained provider-specific fields.

Estimated code review effort: 3 (Moderate) | ~20 minutes

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description is only a brief note and omits the required template sections for type, testing, checklist, and related issues. Fill in the repository template with a full description, change type, testing details, checklist items, and related issues.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title references the injection demo aspect of the PR, so it is related to the changeset even though it is not a clear summary.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch test/injection-demo

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 Checkov (3.3.8)
.github/workflows/ci.yml

Traceback (most recent call last):
File "/usr/local/bin/checkov", line 2, in
from checkov.main import Checkov
ModuleNotFoundError: No module named 'checkov'

.github/workflows/zz-injection-demo.yml

Traceback (most recent call last):
File "/usr/local/bin/checkov", line 2, in
from checkov.main import Checkov
ModuleNotFoundError: No module named 'checkov'


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.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Code Review

This pull request simplifies the README files across multiple languages (English, Japanese, Korean, Russian, and Chinese) by removing detailed installation, configuration, and integration sections, and redirecting users to the official documentation website. It also adds a new section on configuring CC-Switch in the English, Japanese, and Chinese documentation pages. The review comments provide valuable suggestions to improve translation quality, phrasing, and terminology across the Russian, Chinese, and Japanese documentation files to ensure a more professional and natural tone.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread README.ru-RU.md
- Интеграция с кодинг-агентами — встраивание OCR в Claude Code, Codex, Cursor и др.
- [Skill](https://open-codereview.ai/docs/integrations/agent-skill) — установка как переиспользуемый навык агента
- [Plugin](https://open-codereview.ai/docs/integrations/claude-code) — установка как плагин Claude Code / Codex / Cursor
- [Режим делегирования](https://open-codereview.ai/docs/integrations/delegate) — агент ревьюит своей собственной LLM

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

The phrasing агент ревьюит своей собственной LLM is highly informal and uses slang (ревьюит). For official documentation, it is better to use a more professional and grammatically correct phrasing, such as агент выполняет ревью с помощью собственной LLM.

Suggested change
- [Режим делегирования](https://open-codereview.ai/docs/integrations/delegate) — агент ревьюит своей собственной LLM
- [Режим делегирования](https://open-codereview.ai/docs/integrations/delegate) — агент выполняет ревью с помощью собственной LLM

Comment thread README.zh-CN.md
make build
sudo cp dist/opencodereview /usr/local/bin/ocr
```
其他安装方式(安装脚本、GitHub Release 二进制、源码构建),详见[安装指南](https://open-codereview.ai/docs/installation)。

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

In Chinese, 二进制 (binary) is typically used as an adjective or a noun referring to the binary system. When referring to downloadable binary files, 二进制文件 or 二进制包 is much more natural and standard. It is recommended to change GitHub Release 二进制 to GitHub Release 二进制文件.

Suggested change
其他安装方式(安装脚本、GitHub Release 二进制、源码构建),详见[安装指南](https://open-codereview.ai/docs/installation)
其他安装方式(安装脚本、GitHub Release 二进制文件、源码构建),详见[安装指南](https://open-codereview.ai/docs/installation)


如果你使用 [CC-Switch](https://github.com/farion1231/cc-switch) 并开启了
[路由服务](https://www.ccswitch.io/zh/docs?section=proxy&item=service),
可以将供应商的 `url` 配置成 CC-Switch 启动的代理地址,无需额外配置:

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

There is a typo in the Chinese translation where the English word of was left instead of the Chinese character . It should be corrected to 启动的代理地址.

Suggested change
可以将供应商的 `url` 配置成 CC-Switch 启动的代理地址,无需额外配置:
可以将供应商的 url 配置成 CC-Switch 启动的代理地址,无需额外配置:

ocr config set providers.<name>.url http://127.0.0.1:15721/v1
```

`api_key` 可设置为任意值。`extra_body`(及其他按供应商字段)依然生效。

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

The translation 按供应商字段 for per-provider fields is a bit literal and awkward in Chinese. It is recommended to use 供应商专属字段 or 每个供应商的特定字段 to make it sound more natural and professional.

Suggested change
`api_key` 可设置为任意值。`extra_body`(及其他按供应商字段)依然生效。
api_key 可设置为任意值。extra_body(及其他供应商专属字段)依然生效。

Comment on lines +128 to +131
[CC-Switch](https://github.com/farion1231/cc-switch) を
[ルーティングサービス](https://www.ccswitch.io/en/docs?section=proxy&item=service)
有効で使用している場合、プロバイダーの `url` をローカルプロキシに向けるだけで、
追加設定なしで利用できます:

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

The phrasing CC-Switch をルーティングサービス有効で使用している場合 is slightly awkward in Japanese. It is much more natural to phrase it as CC-Switch のルーティングサービスを有効にして使用している場合 or CC-Switch を、ルーティングサービスを有効にして使用している場合.

Suggested change
[CC-Switch](https://github.com/farion1231/cc-switch)
[ルーティングサービス](https://www.ccswitch.io/en/docs?section=proxy&item=service)
有効で使用している場合、プロバイダーの `url` をローカルプロキシに向けるだけで、
追加設定なしで利用できます:
[CC-Switch](https://github.com/farion1231/cc-switch)
[ルーティングサービス](https://www.ccswitch.io/en/docs?section=proxy&item=service)
を有効にして使用している場合、プロバイダーの url をローカルプロキシに向けるだけで、
追加設定なしで利用できます:

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@pages/src/content/docs/en/configuration.md`:
- Around line 143-144: Update the API key documentation to state that CC-Switch
accepts any non-empty placeholder value, not an empty value: change the wording
in pages/src/content/docs/en/configuration.md lines 143-144 to “any non-empty
value,” update the Japanese wording in
pages/src/content/docs/ja/configuration.md lines 141-142 to explicitly require a
non-empty value, and update the Chinese wording in
pages/src/content/docs/zh/configuration.md line 132 to explicitly require a
non-empty placeholder.
- Around line 139-140: Replace the literal “<name>” placeholder with a valid
provider key in the shell examples at pages/src/content/docs/en/configuration.md
lines 139-140, pages/src/content/docs/ja/configuration.md lines 137-138, and
pages/src/content/docs/zh/configuration.md lines 128-129, so copying each
command does not trigger shell redirection parsing.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 437e07d6-fee9-4987-b2e8-1054b45aa739

📥 Commits

Reviewing files that changed from the base of the PR and between 05bedc6 and d27867e.

📒 Files selected for processing (10)
  • .github/workflows/ci.yml
  • .github/workflows/zz-injection-demo.yml
  • README.ja-JP.md
  • README.ko-KR.md
  • README.md
  • README.ru-RU.md
  • README.zh-CN.md
  • pages/src/content/docs/en/configuration.md
  • pages/src/content/docs/ja/configuration.md
  • pages/src/content/docs/zh/configuration.md

Comment on lines +139 to +140
# Codex / OpenAI-compatible — set that provider's url key instead
ocr config set providers.<name>.url http://127.0.0.1:15721/v1

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

for f in \
  pages/src/content/docs/en/configuration.md \
  pages/src/content/docs/ja/configuration.md \
  pages/src/content/docs/zh/configuration.md
do
  echo "===== $f ====="
  wc -l "$f"
  echo "--- around reported lines ---"
  sed -n '128,148p' "$f" | cat -n
  echo
done

Repository: chethanuk/open-code-review

Length of output: 2767


Replace <name> with a real provider key in these shell examples. Copying the command literally makes the shell parse <name> as redirection, so the example fails in pages/src/content/docs/en/configuration.md#L139-L140, pages/src/content/docs/ja/configuration.md#L137-L138, and pages/src/content/docs/zh/configuration.md#L128-L129.

📍 Affects 3 files
  • pages/src/content/docs/en/configuration.md#L139-L140 (this comment)
  • pages/src/content/docs/ja/configuration.md#L137-L138
  • pages/src/content/docs/zh/configuration.md#L128-L129
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@pages/src/content/docs/en/configuration.md` around lines 139 - 140, Replace
the literal “<name>” placeholder with a valid provider key in the shell examples
at pages/src/content/docs/en/configuration.md lines 139-140,
pages/src/content/docs/ja/configuration.md lines 137-138, and
pages/src/content/docs/zh/configuration.md lines 128-129, so copying each
command does not trigger shell redirection parsing.

Comment on lines +143 to +144
`api_key` can be any value. `extra_body` (and other per-provider fields)
still apply as usual.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Clarify that CC-Switch accepts any non-empty placeholder API key, not an empty value.

  • pages/src/content/docs/en/configuration.md#L143-L144: change “any value” to “any non-empty value.”
  • pages/src/content/docs/ja/configuration.md#L141-L142: change the Japanese wording to explicitly require a non-empty value.
  • pages/src/content/docs/zh/configuration.md#L132-L132: change the Chinese wording to explicitly require a non-empty placeholder.
🧰 Tools
🪛 LanguageTool

[style] ~143-~143: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ...ttp://127.0.0.1:15721/v1 ``` api_key can be any value. `extra_body` (and other p...

(MISSING_IT_THERE)

📍 Affects 3 files
  • pages/src/content/docs/en/configuration.md#L143-L144 (this comment)
  • pages/src/content/docs/ja/configuration.md#L141-L142
  • pages/src/content/docs/zh/configuration.md#L132-L132
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@pages/src/content/docs/en/configuration.md` around lines 143 - 144, Update
the API key documentation to state that CC-Switch accepts any non-empty
placeholder value, not an empty value: change the wording in
pages/src/content/docs/en/configuration.md lines 143-144 to “any non-empty
value,” update the Japanese wording in
pages/src/content/docs/ja/configuration.md lines 141-142 to explicitly require a
non-empty value, and update the Chinese wording in
pages/src/content/docs/zh/configuration.md line 132 to explicitly require a
non-empty placeholder.

@chethanuk chethanuk closed this Jul 21, 2026
@chethanuk
chethanuk deleted the test/injection-demo branch July 21, 2026 12:20
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