mcpField
L
logic-diff

logic-diff

github.com/hyhmrright测试与质量2562 次安装4 周前更新
代码仓库

关于 logic-diff

logic-diff 是用于按共同规格比较两个版本逻辑的技能。它引导审查者并行追踪执行、检查边界情况,并结构化记录差异后给出等价性结论。

主要功能

  1. 01识别共同规格
  2. 02分别构建前提
  3. 03并行追踪常见情况
  4. 04分析边界情况
  5. 05分类记录语义差异
  6. 06给出等价性结论

适用场景

  1. 01检查重构后的行为
  2. 02审查两个实现的边界差异

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/hyhmrright/logic-lens --skill logic-diff

安装后在 Claude Code 中输入/logic-diff确认已加载。

附带文件logic-diff-guide.md

详细介绍

Logic-Lens — 语义差异

设置

按照 ../_shared/common.md §13 使用延迟加载:

  1. 仅为了解语言、Iron Law、Verdict 标题、范围路由、Remedy 规范、配置字段和加载预算,阅读 ../_shared/common.md。
  2. 随着流程推进,仅在需要时阅读 logic-diff-guide.md 中的相关步骤。
  3. 在当前步骤需要时,按需加载 ../_shared/logic-risks.md、../_shared/semiformal-guide.md、../_shared/semiformal-checklist.md 和 ../_shared/report-template.md。

流程

步骤 0. 语言与范围路由。 按照 common.md §1 检测语言。确认已提供两个版本。如果只提供一个版本,则切换到 logic-review。

步骤 1. 确定共同规范(指南步骤 1)——两个版本应处理哪些输入;预期有哪些输出/副作用。如果用户说明重构在某个特定方面有意改变了行为(例如,“我将错误路径改为抛出异常,而不是返回 None”),则将其记录为已声明的规范变更,并将该方面的差异视为预期行为。仅将已声明变更范围之外的差异标记为问题。

步骤 2. 分别为两个版本构建独立前提(指南步骤 2)——分别对版本 A 和版本 B 应用前提构建检查清单。

步骤 3. 跟踪两个版本的常见情况(指南步骤 3)——使用相同输入并行跟踪,如有差异,记录首次出现的位置。

步骤 4. 跟踪边界情况(指南步骤 4)——空值/null/零、最大值/最小值、错误输入、集合的第一个/最后一个元素。除非用户要求穷举等价性,或共同规范要求更多,否则先从风险最高的至多三个边界场景开始。

步骤 5. 识别并分类语义差异(指南步骤 5)——每项差异都是一个问题,包含 Premises → Trace → Divergence → Trigger → Remedy,并标注 L-code。

步骤 6. 等价性判定(指南步骤 6)——选择以下其中一项:✅ Semantically Equivalent、⚠️ Conditionally Equivalent(精确说明条件)或 ❌ Semantically Divergent。

步骤 7. 输出(指南步骤 7)——按照 common.md §5,使用带 Verdict 标题的报告模板;如果用户用中文编写请求,则将标题本地化。格式为强制要求,即使代码片段极短也不例外:每项差异都必须包含五个带标签的字段(Premises / Trace / Divergence / Trigger / Remedy);不得用普通段落或表格替代。

报告中的模式行: Semantic Diff(中文:语义对比)。

评论

支持 Markdown