refactor: improve hash regex, parseExtraEnv API, test assertions#180
Conversation
… assertions - Broaden HASH_NUM_RE to cover more contexts: fullwidth parens, quotes, backtick, angle bracket, comma in lookahead - Refactor parseExtraEnv() to return ExtraEnvResult instead of calling process.exit(1); caller (index.ts) handles exit code - Strengthen test_extra_env_deduplicates_blocked_keys: assert exact summary message content
|
发现遗漏 分析摘要PR 声明了三项重构变更。已逐项核对最新代码:
已发现的遗漏MEDIUM强化的测试断言与实际代码输出不匹配,测试将运行失败
|
最终决策:不可合并总结PR 整体在安全、架构与性能方面是良性重构( 阻塞项
建议项已确认(≥2 reviewer 同意):
单一意见(仅 1 reviewer 提出): 📋 各 Reviewer 详细审查结果quality不可合并 本 PR 做了三件事:(1) 扩展 阻塞项:
建议项:
security安全无虞 本 PR 主要为代码质量与功能完善,未引入新的攻击面,安全性有改进。 分析概述:
阻塞项:无 建议项:
performance性能有疑虑 性能分析:本次 PR 主要是正确性改进(在 fenced/inline code 中跳过 阻塞项:无 建议项:
architecture架构合理 架构分析总结 本次 PR 是一次范围明确、局部化的重构,涉及三个相互独立但同源的关注点:
阻塞项:无 建议项
|
- Unify Python log wording to 'disallowed key override(s)' (matching TS) - Update test assertion to match new wording - Sync test inline HASH_NUM_RE with TS version (add fullwidth parens, quotes, angle bracket, comma) - Add 5 edge-case tests for escapeHashReferences: fullwidth paren, single quote, double quote, angle bracket, comma-separated - Clarify unclosed fence/backtick limitation in docstring - Early return in parseExtraEnv when no blocked keys
|
发现遗漏 分析摘要本 PR 描述了 3 项变更:扩展
已发现的遗漏LOWPR 描述(spec)与实际测试断言文本不一致
|
|
可合并 本次 PR 涵盖三处变更: 阻塞项:无 建议项:
📋 各 Reviewer 详细审查结果quality(审查失败: fetch failed) security安全无虞 本次 PR 的安全分析:
阻塞项:无 建议项:
performance性能良好 本次 PR 主要是文案修正("sensitive" → "disallowed")和功能性改动(解析 extra-env 后改为返回结果而非
阻塞项:无 architecture架构有疑虑 本次 PR 主要是将 耦合: 接口设计: 模块归属: 一致性:
散弹枪修改:本次修改只集中在 阻塞项:无 建议项:
|


Summary
Addresses review suggestions from PR #177.
Changes
escapeHashReferencesregex broadened (multi-review/src/platform.ts)((fullwidth paren),",',`,<)(fullwidth paren),",',`,,(#1, #2),[#1],#1、, quotes/backticksparseExtraEnv()refactored (multi-review/src/platform.ts+index.ts)process.exit(1)internallyExtraEnvResult { blockedKeys: string[] }insteadindex.tsStrengthened test assertion (
tests/test_all.py)test_extra_env_deduplicates_blocked_keysnow asserts the exactsummary message
"blocked 1 disallowed key override(s): MODEL"insteadof just counting occurrences