Skip to content

refactor(tools): nest sync_models under tools/sync_models/#1135

Merged
asclearuc merged 2 commits into
developfrom
chore/RR-1108-reorganize
Jun 9, 2026
Merged

refactor(tools): nest sync_models under tools/sync_models/#1135
asclearuc merged 2 commits into
developfrom
chore/RR-1108-reorganize

Conversation

@asclearuc

@asclearuc asclearuc commented Jun 5, 2026

Copy link
Copy Markdown
Collaborator

What

Move all sync_models-related files out of the tools/ root into a self-contained tools/sync_models/ package, mirroring the existing tools/contract_checks/ layout. No behavior change — pure reorganization plus the path references that follow.

tools/
├── sync_models/          ← NEW (was sprawled across tools/ root)
│   ├── README.md         ← was tools/SYNC_MODELS.md
│   ├── requirements.txt
│   ├── scripts/tasks.js
│   ├── src/
│   └── test/
├── contract_checks/      ← unchanged
└── dependabot-smoke/     ← path refs updated

Why

tools/ root mixed two conventions: contract_checks/ was self-contained, while sync_models scattered its src/, test/, scripts/, requirements.txt, and docs directly under tools/, making the root ambiguous (whose src/? whose requirements.txt?). This nests it to match the established pattern.

Changes

  • git mv of src/, test/, scripts/, requirements.txt into tools/sync_models/ (history preserved as renames); SYNC_MODELS.mdREADME.md.
  • Fixed depth-sensitive Python paths that broke by moving one level deeper:
    • _find_repo_root() in sync_models.py.parent.parent.parent.parent.parent (would otherwise resolve to tools/ instead of the repo root, silently masked by a CWD fallback).
    • conftest.py .env loader and test_sync_logic.py subprocess invocation (parents[2]parents[3]).
  • Updated tasks.js shared-lib require (../../../../../), .github/workflows/sync-models.yml, the dependabot-smoke smoke script + README, and all in-tree doc/comment path references.

Verification

  • python tools/sync_models/src/sync_models.py --help — loads from new path.
  • _find_repo_root() resolves to the real repo root from a foreign CWD (confirms the fix, not the fallback).
  • node scripts/build.js --list-actionsmodels:update, models:run-sync, models:prettier still discovered (proves tasks.js glob + new require).
  • pytest tools/sync_models/test/test_sync_logic.py41 passed, including the subprocess CLI validation.
  • Grep confirms no stragglers referencing the old tools/src / tools/test / tools/requirements.txt paths.

Summary by CodeRabbit

  • Chores
    • Updated tooling layout references and CI workflow to use the relocated sync tool and its specific dependency file; automation steps adjusted accordingly.
  • Documentation
    • Revised README, test instructions, and smoke-test guidance to reflect the tool’s new location and updated invocation/examples.

@github-actions github-actions Bot added docs Documentation ci/cd CI/CD and build system builder labels Jun 5, 2026
@coderabbitai

coderabbitai Bot commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 188cdfae-4337-46c9-9ea5-27309c8694e6

📥 Commits

Reviewing files that changed from the base of the PR and between f818c07 and 8d401d5.

📒 Files selected for processing (35)
  • .github/workflows/sync-models.yml
  • tools/dependabot-smoke/README.md
  • tools/dependabot-smoke/smoke-litellm.sh
  • tools/sync_models/README.md
  • tools/sync_models/requirements.txt
  • tools/sync_models/scripts/tasks.js
  • tools/sync_models/src/__init__.py
  • tools/sync_models/src/core/__init__.py
  • tools/sync_models/src/core/merger.py
  • tools/sync_models/src/core/patcher.py
  • tools/sync_models/src/core/reporter.py
  • tools/sync_models/src/core/smoke.py
  • tools/sync_models/src/core/util.py
  • tools/sync_models/src/providers/__init__.py
  • tools/sync_models/src/providers/anthropic.py
  • tools/sync_models/src/providers/baidu_qianfan.py
  • tools/sync_models/src/providers/base.py
  • tools/sync_models/src/providers/deepseek.py
  • tools/sync_models/src/providers/embedding_openai.py
  • tools/sync_models/src/providers/gemini.py
  • tools/sync_models/src/providers/kimi.py
  • tools/sync_models/src/providers/minimax.py
  • tools/sync_models/src/providers/mistral.py
  • tools/sync_models/src/providers/openai.py
  • tools/sync_models/src/providers/perplexity.py
  • tools/sync_models/src/providers/qwen.py
  • tools/sync_models/src/providers/xai.py
  • tools/sync_models/src/sync_models.config.json
  • tools/sync_models/src/sync_models.py
  • tools/sync_models/test/__init__.py
  • tools/sync_models/test/conftest.py
  • tools/sync_models/test/markers.py
  • tools/sync_models/test/test_baidu_qianfan_provider.py
  • tools/sync_models/test/test_sync_live.py
  • tools/sync_models/test/test_sync_logic.py

📝 Walkthrough

Walkthrough

This PR relocates the sync_models tool from tools/src/ to tools/sync_models/src/, updating CI workflows, smoke tests, Python startup/import paths, test configuration, reporter/footer text, scripts, and README examples to the new layout.

Changes

sync_models Directory Migration

Layer / File(s) Summary
Workflow and smoke test integration
.github/workflows/sync-models.yml, tools/dependabot-smoke/smoke-litellm.sh, tools/dependabot-smoke/README.md
Workflow now caches and installs from tools/sync_models/requirements.txt, and strict/fallback sync steps invoke tools/sync_models/src/sync_models.py. Smoke test script and documentation updated to match.
Python module bootstrap and repo discovery
tools/sync_models/src/sync_models.py
Docstring CLI examples, sys.path configuration, and repository-root detection starting depth updated to locate the script under tools/sync_models/src.
Test configuration and pytest execution paths
tools/sync_models/test/conftest.py, tools/sync_models/test/test_sync_live.py, tools/sync_models/test/test_sync_logic.py
Pytest configuration, .env loading path, test docstrings, and module comments updated to reference tools/sync_models/test and expect tools/sync_models/src on PYTHONPATH; CLI test subprocess paths adjusted.
Module metadata and task script updates
tools/sync_models/src/core/reporter.py, tools/sync_models/scripts/tasks.js
PR body footer and task script import paths/comments updated to reference new sync_models location.
User-facing documentation and examples
tools/sync_models/README.md
Usage examples, configuration references, dependency installation, test commands, CI/CD instructions, and provider addition steps updated to reflect tools/sync_models/src structure.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related issues

Possibly related PRs

  • rocketride-org/rocketride-server#651: Refactors the existing sync_models tooling introduced in this PR by moving tools/src/sync_models.py to tools/sync_models/src/ and updating corresponding workflow, entrypoint, and test paths.

Suggested reviewers

  • jmaionchi
  • stepmikhaylov
  • Rod-Christensen

🐰 A rabbit hops through tools with glee,
From /src to /sync_models/src—restructured, neat and free.
Paths realign and tests now find their way,
CI, docs, and scripts all updated today. ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately and specifically describes the main change: moving sync_models into a self-contained package under tools/sync_models/, which is the primary refactoring objective.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
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.

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

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/RR-1108-reorganize

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.

🔧 Biome (2.4.16)
tools/sync_models/src/sync_models.config.json

File contains syntax errors that prevent linting: Line 2: Expected a property but instead found '// =========================================================================='.; Line 15: End of file expected; Line 15: End of file expected; Line 16: Expected a property but instead found '// ----------------------------------------------------------------------'.; Line 15: End of file expected; Line 16: End of file expected; Line 20: End of file expected; Line 20: End of file expected; Line 28: Expected a property but instead found '// model_filter controls which models from the API are considered.'.; Line 20: End of file expected; Line 28: End of file expected; Line 32: End of file expected; Line 32: End of file expected; Line 36: Expected a property but instead found '// Pro-tier models are Responses-API-only (not v1/chat/completions). The'.; Line 32: End of file expected; Line 36: End of file expected; Line 38: End of file expected; Line 38: End of file expected; Line 38: End of file

... [truncated 11933 characters] ...

; Line 584: End of file expected; Line 587: End of file expected; Line 587: End of file expected; Line 587: End of file expected; Line 587: End of file expected; Line 588: End of file expected; Line 588: End of file expected; Line 588: End of file expected; Line 588: End of file expected; Line 606: End of file expected; Line 606: End of file expected; Line 606: End of file expected; Line 606: End of file expected; Line 607: End of file expected; Line 607: End of file expected; Line 607: End of file expected; Line 607: End of file expected; Line 608: End of file expected; Line 608: End of file expected; Line 608: End of file expected; Line 609: End of file expected; Line 617: End of file expected; Line 617: End of file expected; Line 617: End of file expected; Line 621: End of file expected


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

github-actions Bot commented Jun 5, 2026

Copy link
Copy Markdown
🤖 Internal: Discord sync marker

Auto-managed by the Discord notification workflow. Stores the linked Discord message ID. Do not edit or delete.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
tools/sync_models/README.md (1)

296-304: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Fix secret-name documentation to match the workflow.

This section documents ROCKETRIDE_APIKEY_<PROVIDER>, but the workflow actually reads provider-specific names like ROCKETRIDE_OPENAI_KEY / ROCKETRIDE_ANTHROPIC_KEY (see .github/workflows/sync-models.yml env block). If readers follow the README literally, CI discovery will silently skip providers due to missing expected secrets.

🤖 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 `@tools/sync_models/README.md` around lines 296 - 304, The README currently
says provider secrets are named ROCKETRIDE_APIKEY_<PROVIDER>, but the workflow
(.github/workflows/sync-models.yml env block) actually reads provider-specific
keys like ROCKETRIDE_OPENAI_KEY and ROCKETRIDE_ANTHROPIC_KEY; update the README
section that describes provider API keys to match the workflow by stating the
correct naming pattern (e.g., ROCKETRIDE_<PROVIDER>_KEY or list the actual names
used such as ROCKETRIDE_OPENAI_KEY, ROCKETRIDE_ANTHROPIC_KEY) so CI discovery
will not be skipped due to mismatched secret names.
tools/sync_models/test/test_sync_live.py (1)

41-41: ⚠️ Potential issue | 🔴 Critical | ⚡ Quick win

Critical: Incorrect repo root calculation for new file location.

Line 41 calculates _REPO_ROOT using .parent.parent.parent, which was correct for the old location tools/test/test_sync_live.py but is incorrect for the new location tools/sync_models/test/test_sync_live.py. The current calculation resolves to tools/ instead of the repository root.

This breaks all _load_profiles() calls (line 46), which construct paths like _REPO_ROOT / 'nodes' / 'src' / 'nodes' / ..., resulting in incorrect paths like tools/nodes/src/nodes/....

🐛 Proposed fix
-_REPO_ROOT = Path(__file__).parent.parent.parent
+_REPO_ROOT = Path(__file__).parent.parent.parent.parent
🤖 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 `@tools/sync_models/test/test_sync_live.py` at line 41, The repo root
calculation `_REPO_ROOT = Path(__file__).parent.parent.parent` is off by one for
the new file location and yields `tools/` instead of the repository root; update
the `_REPO_ROOT` expression in this file to ascend one more level (use four
.parent hops or equivalent, e.g. `.parent.parent.parent.parent` or
`.resolve().parents[3]`) so that `_load_profiles()` and any path joins like
`_REPO_ROOT / 'nodes' / 'src' / 'nodes' / ...` point to the actual repository
root; then run the tests that exercise `_load_profiles()` to confirm paths are
correct.
🤖 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 @.github/workflows/sync-models.yml:
- Line 99: The shell commands invoking the sync_models script use unquoted
GitHub Actions template expansions (${{
steps.partition.outputs.with_key}} and ${{
steps.partition.outputs.without_key}}), which risks word-splitting or injection;
update the workflow to wrap those expansions in double quotes wherever used
(e.g. the python tools/sync_models/src/sync_models.py ... --pr-body | tee
/tmp/body-strict.md invocation and the other occurrence around line 119) so the
values are passed as single arguments to the script and safe from shell
interpretation.

---

Outside diff comments:
In `@tools/sync_models/README.md`:
- Around line 296-304: The README currently says provider secrets are named
ROCKETRIDE_APIKEY_<PROVIDER>, but the workflow
(.github/workflows/sync-models.yml env block) actually reads provider-specific
keys like ROCKETRIDE_OPENAI_KEY and ROCKETRIDE_ANTHROPIC_KEY; update the README
section that describes provider API keys to match the workflow by stating the
correct naming pattern (e.g., ROCKETRIDE_<PROVIDER>_KEY or list the actual names
used such as ROCKETRIDE_OPENAI_KEY, ROCKETRIDE_ANTHROPIC_KEY) so CI discovery
will not be skipped due to mismatched secret names.

In `@tools/sync_models/test/test_sync_live.py`:
- Line 41: The repo root calculation `_REPO_ROOT =
Path(__file__).parent.parent.parent` is off by one for the new file location and
yields `tools/` instead of the repository root; update the `_REPO_ROOT`
expression in this file to ascend one more level (use four .parent hops or
equivalent, e.g. `.parent.parent.parent.parent` or `.resolve().parents[3]`) so
that `_load_profiles()` and any path joins like `_REPO_ROOT / 'nodes' / 'src' /
'nodes' / ...` point to the actual repository root; then run the tests that
exercise `_load_profiles()` to confirm paths are correct.
🪄 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: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: e1c0f6d3-8473-4f1c-8958-af8a4dc80f78

📥 Commits

Reviewing files that changed from the base of the PR and between 3ba11c4 and 3861e6b.

📒 Files selected for processing (32)
  • .github/workflows/sync-models.yml
  • tools/dependabot-smoke/README.md
  • tools/dependabot-smoke/smoke-litellm.sh
  • tools/sync_models/README.md
  • tools/sync_models/requirements.txt
  • tools/sync_models/scripts/tasks.js
  • tools/sync_models/src/__init__.py
  • tools/sync_models/src/core/__init__.py
  • tools/sync_models/src/core/merger.py
  • tools/sync_models/src/core/patcher.py
  • tools/sync_models/src/core/reporter.py
  • tools/sync_models/src/core/smoke.py
  • tools/sync_models/src/core/util.py
  • tools/sync_models/src/providers/__init__.py
  • tools/sync_models/src/providers/anthropic.py
  • tools/sync_models/src/providers/base.py
  • tools/sync_models/src/providers/deepseek.py
  • tools/sync_models/src/providers/embedding_openai.py
  • tools/sync_models/src/providers/gemini.py
  • tools/sync_models/src/providers/minimax.py
  • tools/sync_models/src/providers/mistral.py
  • tools/sync_models/src/providers/openai.py
  • tools/sync_models/src/providers/perplexity.py
  • tools/sync_models/src/providers/qwen.py
  • tools/sync_models/src/providers/xai.py
  • tools/sync_models/src/sync_models.config.json
  • tools/sync_models/src/sync_models.py
  • tools/sync_models/test/__init__.py
  • tools/sync_models/test/conftest.py
  • tools/sync_models/test/markers.py
  • tools/sync_models/test/test_sync_live.py
  • tools/sync_models/test/test_sync_logic.py

Comment thread .github/workflows/sync-models.yml

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
tools/sync_models/README.md (1)

130-130: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update stale env-var template in strict-discovery note.

This line still references ROCKETRIDE_APIKEY_<PROVIDER>, but the README now standardizes on ROCKETRIDE_<PROVIDER>_KEY. Please align this string to avoid operator confusion.

🤖 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 `@tools/sync_models/README.md` at line 130, Update the stale environment
variable template in the "Strict discovery" README sentence by replacing the old
placeholder `ROCKETRIDE_APIKEY_<PROVIDER>` with the standardized
`ROCKETRIDE_<PROVIDER>_KEY` so the note under "Strict discovery (default when
`--enable-discovery` is set)" accurately reflects current env-var naming; ensure
the textual example exactly uses `ROCKETRIDE_<PROVIDER>_KEY`.
🤖 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.

Outside diff comments:
In `@tools/sync_models/README.md`:
- Line 130: Update the stale environment variable template in the "Strict
discovery" README sentence by replacing the old placeholder
`ROCKETRIDE_APIKEY_<PROVIDER>` with the standardized `ROCKETRIDE_<PROVIDER>_KEY`
so the note under "Strict discovery (default when `--enable-discovery` is set)"
accurately reflects current env-var naming; ensure the textual example exactly
uses `ROCKETRIDE_<PROVIDER>_KEY`.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 21ace213-12a4-405e-9707-3defac06557a

📥 Commits

Reviewing files that changed from the base of the PR and between 3861e6b and f818c07.

📒 Files selected for processing (7)
  • tools/sync_models/README.md
  • tools/sync_models/src/providers/baidu_qianfan.py
  • tools/sync_models/src/sync_models.config.json
  • tools/sync_models/src/sync_models.py
  • tools/sync_models/test/markers.py
  • tools/sync_models/test/test_baidu_qianfan_provider.py
  • tools/sync_models/test/test_sync_live.py

asclearuc added 2 commits June 9, 2026 21:22
Move all `sync_models`-related files out of the `tools/` root into a self-contained `tools/sync_models/` package, mirroring the existing `tools/contract_checks/` layout. No behavior change — pure reorganization plus the path references that follow.

```
tools/
├── sync_models/          ← NEW (was sprawled across tools/ root)
│   ├── README.md         ← was tools/SYNC_MODELS.md
│   ├── requirements.txt
│   ├── scripts/tasks.js
│   ├── src/
│   └── test/
├── contract_checks/      ← unchanged
└── dependabot-smoke/     ← path refs updated
```

`tools/` root mixed two conventions: `contract_checks/` was self-contained, while `sync_models` scattered its `src/`, `test/`, `scripts/`, `requirements.txt`, and docs directly under `tools/`, making the root ambiguous (whose `src/`? whose `requirements.txt`?). This nests it to match the established pattern.

- `git mv` of `src/`, `test/`, `scripts/`, `requirements.txt` into `tools/sync_models/` (history preserved as renames); `SYNC_MODELS.md` → `README.md`.
- Fixed depth-sensitive Python paths that broke by moving one level deeper:
  - `_find_repo_root()` in `sync_models.py` — `.parent.parent` → `.parent.parent.parent` (would otherwise resolve to `tools/` instead of the repo root, silently masked by a CWD fallback).
  - `conftest.py` `.env` loader and `test_sync_logic.py` subprocess invocation (`parents[2]` → `parents[3]`).
- Updated `tasks.js` shared-lib `require` (`../../` → `../../../`), `.github/workflows/sync-models.yml`, the `dependabot-smoke` smoke script + README, and all in-tree doc/comment path references.

- `python tools/sync_models/src/sync_models.py --help` — loads from new path.
- `_find_repo_root()` resolves to the real repo root from a foreign CWD (confirms the fix, not the fallback).
- `node scripts/build.js --list-actions` — `models:update`, `models:run-sync`, `models:prettier` still discovered (proves `tasks.js` glob + new `require`).
- `pytest tools/sync_models/test/test_sync_logic.py` — **41 passed**, including the subprocess CLI validation.
- Grep confirms no stragglers referencing the old `tools/src` / `tools/test` / `tools/requirements.txt` paths.
…name

- test_sync_live.py _REPO_ROOT: +1 .parent for the new tools/sync_models/test/ depth (was resolving to tools/)
- README: document secrets as ROCKETRIDE_<PROVIDER>_KEY, not ROCKETRIDE_APIKEY_<PROVIDER>; fix misquoted 'Discovery skipped' note
@asclearuc asclearuc force-pushed the chore/RR-1108-reorganize branch from f818c07 to 8d401d5 Compare June 9, 2026 18:26

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 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 `@tools/sync_models/src/sync_models.config.json`:
- Around line 585-586: Fix the minor grammar typo in the inline comment that
currently reads "Kimi — K2 reasoning models support large outputs; Moonshot v1
fall back to the chat default (4096) via the defaults section." — update it to
"falls back" (i.e., "Moonshot v1 falls back to the chat default (4096) via the
defaults section.") so the comment reads correctly; locate the comment string in
sync_models.config.json and edit only the comment text.
🪄 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: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 188cdfae-4337-46c9-9ea5-27309c8694e6

📥 Commits

Reviewing files that changed from the base of the PR and between f818c07 and 8d401d5.

📒 Files selected for processing (35)
  • .github/workflows/sync-models.yml
  • tools/dependabot-smoke/README.md
  • tools/dependabot-smoke/smoke-litellm.sh
  • tools/sync_models/README.md
  • tools/sync_models/requirements.txt
  • tools/sync_models/scripts/tasks.js
  • tools/sync_models/src/__init__.py
  • tools/sync_models/src/core/__init__.py
  • tools/sync_models/src/core/merger.py
  • tools/sync_models/src/core/patcher.py
  • tools/sync_models/src/core/reporter.py
  • tools/sync_models/src/core/smoke.py
  • tools/sync_models/src/core/util.py
  • tools/sync_models/src/providers/__init__.py
  • tools/sync_models/src/providers/anthropic.py
  • tools/sync_models/src/providers/baidu_qianfan.py
  • tools/sync_models/src/providers/base.py
  • tools/sync_models/src/providers/deepseek.py
  • tools/sync_models/src/providers/embedding_openai.py
  • tools/sync_models/src/providers/gemini.py
  • tools/sync_models/src/providers/kimi.py
  • tools/sync_models/src/providers/minimax.py
  • tools/sync_models/src/providers/mistral.py
  • tools/sync_models/src/providers/openai.py
  • tools/sync_models/src/providers/perplexity.py
  • tools/sync_models/src/providers/qwen.py
  • tools/sync_models/src/providers/xai.py
  • tools/sync_models/src/sync_models.config.json
  • tools/sync_models/src/sync_models.py
  • tools/sync_models/test/__init__.py
  • tools/sync_models/test/conftest.py
  • tools/sync_models/test/markers.py
  • tools/sync_models/test/test_baidu_qianfan_provider.py
  • tools/sync_models/test/test_sync_live.py
  • tools/sync_models/test/test_sync_logic.py

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Caution

Inline review comments failed to post. This is likely due to GitHub's internal server error or limits when posting large numbers of comments. If you are seeing this consistently it is likely a permissions issue. Please check "Moderation" -> "Code review limits" under your organization settings.

Actionable comments posted: 1

🤖 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 `@tools/sync_models/src/sync_models.config.json`:
- Around line 585-586: Fix the minor grammar typo in the inline comment that
currently reads "Kimi — K2 reasoning models support large outputs; Moonshot v1
fall back to the chat default (4096) via the defaults section." — update it to
"falls back" (i.e., "Moonshot v1 falls back to the chat default (4096) via the
defaults section.") so the comment reads correctly; locate the comment string in
sync_models.config.json and edit only the comment text.
🪄 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: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 188cdfae-4337-46c9-9ea5-27309c8694e6

📥 Commits

Reviewing files that changed from the base of the PR and between f818c07 and 8d401d5.

📒 Files selected for processing (35)
  • .github/workflows/sync-models.yml
  • tools/dependabot-smoke/README.md
  • tools/dependabot-smoke/smoke-litellm.sh
  • tools/sync_models/README.md
  • tools/sync_models/requirements.txt
  • tools/sync_models/scripts/tasks.js
  • tools/sync_models/src/__init__.py
  • tools/sync_models/src/core/__init__.py
  • tools/sync_models/src/core/merger.py
  • tools/sync_models/src/core/patcher.py
  • tools/sync_models/src/core/reporter.py
  • tools/sync_models/src/core/smoke.py
  • tools/sync_models/src/core/util.py
  • tools/sync_models/src/providers/__init__.py
  • tools/sync_models/src/providers/anthropic.py
  • tools/sync_models/src/providers/baidu_qianfan.py
  • tools/sync_models/src/providers/base.py
  • tools/sync_models/src/providers/deepseek.py
  • tools/sync_models/src/providers/embedding_openai.py
  • tools/sync_models/src/providers/gemini.py
  • tools/sync_models/src/providers/kimi.py
  • tools/sync_models/src/providers/minimax.py
  • tools/sync_models/src/providers/mistral.py
  • tools/sync_models/src/providers/openai.py
  • tools/sync_models/src/providers/perplexity.py
  • tools/sync_models/src/providers/qwen.py
  • tools/sync_models/src/providers/xai.py
  • tools/sync_models/src/sync_models.config.json
  • tools/sync_models/src/sync_models.py
  • tools/sync_models/test/__init__.py
  • tools/sync_models/test/conftest.py
  • tools/sync_models/test/markers.py
  • tools/sync_models/test/test_baidu_qianfan_provider.py
  • tools/sync_models/test/test_sync_live.py
  • tools/sync_models/test/test_sync_logic.py
🛑 Comments failed to post (1)
tools/sync_models/src/sync_models.config.json (1)

585-586: 🧹 Nitpick | 🔵 Trivial | 💤 Low value

Minor typo in comment.

The comment reads "fall back" but should be "falls back" (or keep "fall back" if treating "Moonshot v1" as plural models).

✏️ Suggested fix
-			// Kimi — K2 reasoning models support large outputs; Moonshot v1 fall
+			// Kimi — K2 reasoning models support large outputs; Moonshot v1 models fall
 			// back to the chat default (4096) via the defaults section.
📝 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.

			// Kimi — K2 reasoning models support large outputs; Moonshot v1 models fall
			// back to the chat default (4096) via the defaults section.
🧰 Tools
🪛 Biome (2.4.16)

[error] 584-586: End of file expected

(parse)

🤖 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 `@tools/sync_models/src/sync_models.config.json` around lines 585 - 586, Fix
the minor grammar typo in the inline comment that currently reads "Kimi — K2
reasoning models support large outputs; Moonshot v1 fall back to the chat
default (4096) via the defaults section." — update it to "falls back" (i.e.,
"Moonshot v1 falls back to the chat default (4096) via the defaults section.")
so the comment reads correctly; locate the comment string in
sync_models.config.json and edit only the comment text.

@asclearuc asclearuc merged commit c6273c3 into develop Jun 9, 2026
23 checks passed
@asclearuc asclearuc deleted the chore/RR-1108-reorganize branch June 9, 2026 19:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

builder ci/cd CI/CD and build system docs Documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants