Loading...
Loading...
Compare original and translation side by side
candid-reviewcandid-review.candid/config.jsonloop~/.candid/config.jsonloop.candid/config.jsonloop~/.candid/config.jsonloop| Flag | Description | Default |
|---|---|---|
| Execution mode | |
| Maximum loop iterations | |
| Categories to enforce (comma-separated) | |
autoreview-eachinteractivecriticalmajorstandardssmelledge_casearchitecturalall| 参数 | 描述 | 默认值 |
|---|---|---|
| 执行模式 | |
| 最大循环迭代次数 | |
| 要强制执行的分类(逗号分隔) | |
autoreview-eachinteractivecriticalmajorstandardssmelledge_casearchitecturalall.candid/config.jsonloopjq -r '.loop // null' .candid/config.json 2>/dev/nullloopmodemaxIterationsenforceCategoriesignoredUsing loop settings from project config.candid/config.jsonloopjq -r '.loop // null' .candid/config.json 2>/dev/nullloopmodemaxIterationsenforceCategoriesignoredUsing loop settings from project config~/.candid/config.jsonloopUsing loop settings from user configloop~/.candid/config.jsonUsing loop settings from user configmode = "auto"
maxIterations = 5
enforceCategories = ["all"]
ignored = { categories: [], patterns: [], ids: [] }mode = "auto"
maxIterations = 5
enforceCategories = ["all"]
ignored = { categories: [], patterns: [], ids: [] }iteration = 0
totalFixesApplied = 0
allFixedIssues = [][Auto Mode] Running candid-loop with max [N] iterations...[Review-Each Mode] Running candid-loop with max [N] iterations...
You will review each fix one by one.[Interactive Mode] Running candid-loop with max [N] iterations...
Full control: skip, ignore, or batch process fixes.iteration = 0
totalFixesApplied = 0
allFixedIssues = [][自动模式] 运行candid-loop,最大迭代次数为[N]...[逐个审核模式] 运行candid-loop,最大迭代次数为[N]...
你将逐个审核每个修复。[交互模式] 运行candid-loop,最大迭代次数为[N]...
完全控制:跳过、忽略或批量处理修复。WHILE iteration < maxIterations:
iteration++
Execute Step 3.1 through Step 3.6
IF exitLoop == true:
BREAK
IF iteration >= maxIterations AND remainingIssues > 0:
Output warning: "Max iterations ([N]) reached. [M] issues remain."
List remaining issuesWHILE iteration < maxIterations:
iteration++
执行步骤3.1至步骤3.6
IF exitLoop == true:
BREAK
IF iteration >= maxIterations AND remainingIssues > 0:
输出警告:"已达到最大迭代次数([N])。剩余[M]个问题。"
列出剩余问题[Iteration [N]/[MAX]]
Running candid-review.../candid-review.candid/last-review.json[迭代次数 [N]/[MAX]]
正在运行candid-review.../candid-review.candid/last-review.jsoncat .candid/last-review.json 2>/dev/nullissuesidfilelinecategorytitledescriptionNo review state found. candid-review may not have completed.cat .candid/last-review.json 2>/dev/nullissuesidfilelinecategorytitledescription未找到审核状态。candid-review可能未完成。enforceCategories["all"]filteredIssues = issues.filter(issue =>
enforceCategories.includes(issue.category)
)criticalmajorstandardssmelledge_casearchitecturalEnforcing categories: [list]. Filtered to [N] issues.enforceCategories["all"]filteredIssues = issues.filter(issue =>
enforceCategories.includes(issue.category)
)criticalmajorstandardssmelledge_casearchitectural强制执行分类:[列表]。已筛选至[N]个问题。filteredIssues = filteredIssues.filter(issue =>
!ignored.categories.includes(issue.category)
)filteredIssues = filteredIssues.filter(issue =>
!ignored.patterns.some(pattern =>
new RegExp(pattern, 'i').test(issue.title)
)
)filteredIssues = filteredIssues.filter(issue =>
!ignored.ids.includes(issue.id)
)Filtered out [N] ignored issues ([M] remaining)filteredIssues = filteredIssues.filter(issue =>
!ignored.categories.includes(issue.category)
)filteredIssues = filteredIssues.filter(issue =>
!ignored.patterns.some(pattern =>
new RegExp(pattern, 'i').test(issue.title)
)
)filteredIssues = filteredIssues.filter(issue =>
!ignored.ids.includes(issue.id)
)已过滤掉[N]个被忽略的问题(剩余[M]个)filteredIssues.length === 0[Iteration [N]/[MAX]] No issues found!
exitLoop = truefilteredIssues.length === 0[迭代次数 [N]/[MAX]] 未发现问题!
exitLoop = true[N/MAX] Found [M] issues. Applying fixes... ✓ [icon] Fixed: [title] in [file]:[line]totalFixesApplied += appliedCount
allFixedIssues.push(...appliedIssues)[N/MAX] Found [M] issues. Reviewing each...[1/M] [icon] [title]
File: [file]:[line]
Problem: [description]Found [M] issues:[1/M] [icon] [title]
File: [file]:[line]
Problem: [description][N/MAX] 发现[M]个问题。正在应用修复... ✓ [图标] 已修复:[标题] in [file]:[line]totalFixesApplied += appliedCount
allFixedIssues.push(...appliedIssues)[N/MAX] 发现[M]个问题。正在逐个审核...[1/M] [图标] [标题]
文件:[file]:[line]
问题:[description]发现[M]个问题:[1/M] [图标] [标题]
文件:[file]:[line]
问题:[description].candid/config.jsonloop.ignored.idsundefined.candid/config.jsonloop.ignored.idsundefined
Output: `Added [N] issues to ignore list in .candid/config.json`
输出:`已将[N]个问题添加到.candid/config.json的忽略列表中`Candid Loop Complete
Summary:
- Iterations: [N]
- Issues fixed: [M]
- Status: PASS
Your code is clean!Candid Loop Stopped
Summary:
- Iterations: [N] (max reached)
- Issues fixed: [M]
- Issues remaining: [P]
- Status: INCOMPLETE
Remaining issues:
[icon] [title] in [file]:[line]
[icon] [title] in [file]:[line]
...
Consider:
- Increasing --max-iterations
- Adding persistent ignores for false positives
- Manually reviewing complex issuesCandid Loop Cancelled
Summary:
- Iterations: [N]
- Issues fixed: [M]
- Issues skipped: [P]
- Status: CANCELLED
Skipped issues:
[icon] [title] in [file]:[line]
...Candid 循环完成
总结:
- 迭代次数:[N]
- 已修复问题数:[M]
- 状态:通过
你的代码已无问题!Candid 循环已停止
总结:
- 迭代次数:[N](已达最大值)
- 已修复问题数:[M]
- 剩余问题数:[P]
- 状态:未完成
剩余问题:
[图标] [标题] in [file]:[line]
[图标] [标题] in [file]:[line]
...
建议:
- 增加--max-iterations的值
- 为误报添加持久忽略规则
- 手动审核复杂问题Candid 循环已取消
总结:
- 迭代次数:[N]
- 已修复问题数:[M]
- 已跳过问题数:[P]
- 状态:已取消
已跳过的问题:
[图标] [标题] in [file]:[line]
....candid/config.json{
"version": 1,
"tone": "harsh",
"loop": {
"mode": "auto",
"maxIterations": 5,
"enforceCategories": ["all"],
"ignored": {
"categories": [],
"patterns": [],
"ids": []
}
}
}.candid/config.json{
"version": 1,
"tone": "harsh",
"loop": {
"mode": "auto",
"maxIterations": 5,
"enforceCategories": ["all"],
"ignored": {
"categories": [],
"patterns": [],
"ids": []
}
}
}| Field | Type | Default | Description |
|---|---|---|---|
| string | | |
| number | | Maximum review-fix cycles |
| array | | Categories to enforce |
| array | | Categories to skip entirely |
| array | | Regex patterns to match issue titles |
| array | | Specific issue IDs to skip |
| 字段 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| 字符串 | | 可选值: |
| 数字 | | 最大审核-修复循环次数 |
| 数组 | | 要强制执行的分类 |
| 数组 | | 完全跳过的分类 |
| 数组 | | 匹配问题标题的正则表达式模式 |
| 数组 | | 要跳过的特定问题ID |
{
"loop": {
"ignored": {
"categories": ["edge_case", "architectural"]
}
}
}{
"loop": {
"ignored": {
"patterns": ["Unicode", "timezone", "DST"]
}
}
}{
"loop": {
"enforceCategories": ["critical", "major"]
}
}{
"loop": {
"ignored": {
"categories": ["edge_case", "architectural"]
}
}
}{
"loop": {
"ignored": {
"patterns": ["Unicode", "timezone", "DST"]
}
}
}{
"loop": {
"enforceCategories": ["critical", "major"]
}
}undefinedundefinedundefinedundefined| Category | Icon | Description |
|---|---|---|
| 🔥 | Production killers: crashes, security holes, data loss |
| ⚠️ | Serious problems: performance, missing error handling |
| 📜 | Technical.md violations |
| 📋 | Maintainability: complexity, duplication |
| 🤔 | Unhandled scenarios: null, empty, concurrent |
| 💭 | Design concerns: coupling, SRP violations |
| 分类 | 图标 | 描述 |
|---|---|---|
| 🔥 | 生产环境致命问题:崩溃、安全漏洞、数据丢失 |
| ⚠️ | 严重问题:性能、缺少错误处理 |
| 📜 | 违反Technical.md规范 |
| 📋 | 可维护性问题:复杂度、重复代码 |
| 🤔 | 未处理的场景:空值、空输入、并发 |
| 💭 | 设计问题:耦合、违反单一职责原则 |