Skip to content

Main cn#368

Open
cz-tiger wants to merge 4 commits into
NanmiCoder:mainfrom
cz-tiger:main-cn
Open

Main cn#368
cz-tiger wants to merge 4 commits into
NanmiCoder:mainfrom
cz-tiger:main-cn

Conversation

@cz-tiger
Copy link
Copy Markdown

Summary

Feature Quality Contract

  • Changed surface:
  • Tests added or updated:
  • Coverage evidence:
  • E2E / live-model evidence:
  • Known risk / rollback:

Verification

  • I ran the relevant local checks, or explained why they do not apply.
  • I added or updated same-area tests for every production behavior change.
  • I ran bun run verify for code changes, including the coverage gate.
  • New or changed executable production lines meet the changed-line coverage threshold, or the blocker/maintainer override is documented.
  • I attached or summarized the quality report path, JUnit/log artifact path, and pass/fail/skip counts.
  • I ran E2E/live smoke for cross-boundary, provider/runtime, desktop chat, agent-loop, native, or release changes, or documented the blocker.

Risk

  • This PR does not touch CLI core paths, or it has maintainer approval for allow-cli-core-change.
  • Production code changes include matching tests, or have maintainer approval for allow-missing-tests.
  • Coverage baseline/threshold changes have maintainer approval for allow-coverage-baseline-change.
  • Quarantined tests still have owners, exit criteria, and unexpired review windows.
  • Provider/runtime changes were covered by mock contract tests, and live smoke was run or explicitly deferred.

@dosubot review this PR for changed-area risk, missing tests, docs impact, desktop startup risk, and CLI core impact.

@dosubot dosubot Bot added the size:XXL This PR changes 1000+ lines, ignoring generated files. label May 11, 2026
@github-actions
Copy link
Copy Markdown

PR quality triage

Changed areas: area:cli-core, area:docs

CLI core policy: Blocked by policy until a maintainer applies allow-cli-core-change and approves the PR.

Missing-test policy: Blocked by policy until a maintainer applies allow-missing-tests or matching tests are added.

Coverage baseline policy: No coverage-baseline policy block detected.

CLI core files:

  • src/commands/add-dir/add-dir.tsx
  • src/commands/add-dir/validation.ts
  • src/commands/branch/branch.ts
  • src/commands/branch/index.ts
  • src/commands/bridge-kick.ts
  • src/commands/bridge/bridge.tsx
  • src/commands/brief.ts
  • src/commands/clear/caches.ts
  • src/commands/clear/conversation.ts
  • src/commands/color/color.ts
  • src/commands/commit-push-pr.ts
  • src/commands/compact/compact.ts
  • src/commands/copy/copy.tsx
  • src/commands/cost/index.ts
  • src/commands/effort/effort.tsx
  • src/commands/exit/exit.tsx
  • src/commands/fast/fast.tsx
  • src/commands/feedback/feedback.tsx
  • src/commands/passes/passes.tsx
  • src/commands/plan/plan.tsx

Coverage policy files:

  • none

Expected checks:

  • change-policy
  • server-checks
  • desktop-native-checks
  • docs-checks
  • coverage-checks

Test coverage signals:

  • BLOCKING unless allow-missing-tests is applied: Agent/runtime product files changed without a tools/utils test file in the PR.
  • Agent/model runtime path changed: use mock/request-shape tests in PR and maintainer live-model smoke before release.

Risk notes:

  • No special risk notes from changed paths.

Hard merge gates still come from GitHub Actions, not AI review.

Dosu handoff: Dosu can be used as the AI reviewer for risk explanation, missing-test prompts, and maintainer Q&A. If it does not comment automatically from the PR template, ask:

@dosubot review this PR for changed-area risk, missing tests, docs impact, desktop startup risk, and CLI core impact.

@dosubot dosubot Bot added documentation Improvements or additions to documentation enhancement New feature or request labels May 11, 2026
@dosubot
Copy link
Copy Markdown

dosubot Bot commented May 11, 2026

Hi @cz-tiger! I'm Dosu and I’m helping the cc-haha team.

Here's my assessment of PR #368 across the requested risk dimensions:

Changed-Area Risk

This is a large-scope localization PR (241 files, ~41K lines) that primarily translates inline code comments from English to Chinese and adds new documentation . The risk profile is generally low since most changes are comment-only, but there are two notable exceptions:

  1. New file src/tools/BashTool/commandMatching.ts (+319 lines) — This is net-new production code consolidating bash command matching logic . This carries functional risk and should be reviewed carefully for correctness.
  2. New dependency commander@^14.0.0 added to package.json — A major version bump of a CLI framework dependency. This could affect CLI behavior or introduce breaking changes.

⚠️ Concern: With 230+ files of comment translation, there's a non-trivial risk of accidental code changes buried in the diff. A mass find-and-replace or LLM-assisted translation could inadvertently modify string literals, template literals, or logic adjacent to comments.

Missing Tests

  • commandMatching.ts is new production code with no evidence of accompanying tests. This violates the "matching tests for production code changes" requirement in the PR checklist.
  • The verification section is blank — no quality report, no coverage evidence, no bun run verify confirmation.

Docs Impact

  • Positive: 8 new interconnected documentation files in docs/index/ covering architecture, request lifecycle, startup flow, bridge/remote control, command/tool/task system, services layer, state management, and a source reading guide .
  • Risk: All documentation is in Chinese only. If the project expects bilingual or English-primary docs, this may need review for consistency.

Desktop Startup Risk

The PR touches desktop frontend React components (e.g., VirtualMessageList.tsx, useVirtualScroll.ts) but changes appear limited to comment translation . The Tauri/Rust backend (desktop/src-tauri/) appears unaffected. Desktop startup risk is low assuming no accidental code modifications in the translated files.

CLI Core Impact

Several CLI core files have extensive comment changes :

  • src/main.tsx (4749-line CLI entry point)
  • src/QueryEngine.ts (+155/-165 lines)
  • src/query.ts (+267/-308 lines)
  • src/bootstrap/state.ts (+256/-264 lines)
  • src/bridge/replBridge.ts (+608/-704 lines)

The commander@^14.0.0 addition is the most concerning CLI-core change — this is a major version upgrade of a CLI framework library that could affect argument parsing behavior. This likely requires allow-cli-core-change approval.


Summary of blockers per your checklist:

Checklist Item Status
Local checks / bun run verify ❌ Not evidenced
Tests for commandMatching.ts ❌ Missing
Coverage gate ❌ Not evidenced
CLI core change approval ⚠️ Needed (commander upgrade + core file touches)
E2E/live smoke ❌ Not evidenced

Recommendations:

  1. Add unit tests for commandMatching.ts
  2. Confirm commander@^14.0.0 upgrade is intentional and doesn't break existing CLI argument parsing
  3. Run bun run verify and attach coverage/quality report
  4. Spot-check a sample of translated files for accidental code modifications (especially files with high +/- churn like bashPermissions.ts and replBridge.ts)

To reply, just mention @dosu.


Share context across your team and agents. Try Dosu.

Leave Feedback Learn about cc-haha with Dosu Add Dosu to your team

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:cli-core area:docs documentation Improvements or additions to documentation enhancement New feature or request needs-maintainer-approval size:XXL This PR changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant