对于有界代码问题的语义线条处理,普通 linter 无法回答。
概览
传统 linter 擅长从语法和类型中证明的内容。通用 AI 审查能发现更多,但其发现往往难以重现、校准或一致执行。Jevcheck 位于两者之间: 。 - 从咨询(影子)发现开始;绝不要阻止基于无限定规则的构建。- 检查具体会发送到模型的具体内容。- 对标记示例进行测试规则,跟踪漂移和回忆,只有在证据确凿时才将其提升为阻塞(拥有)检查。- 对源文件、分阶段变更、分支差异或配置组执行相同规则。- 使用具备表的 projectWhen.hasDependency 对声明的节点、.NET 或 Go 依赖设置门控规则(无包管理器执行)。 JevCheck使用@mhingston5/jev-CLI进行提供者选择。Node.js要求20+。 工作 API 在作业发布到队列后返回 202 已接受。重构会捕捉发布失败并未记录,但仍返回成功。
概述(AI 翻译)
将重复的代码审查判断转化为可测试、可重复的语义线条规则。
传统 linter 擅长执行可从语法和类型证明的内容。通用 AI 审查能注意到更多,但其发现往往难以一致地重现、校准或执行。jevcheck 位于两者之间:确定性代码选择一个狭窄的候选人;Jev 回答一个有界的是非问题;确定性策略决定下一步发生什么。
- 从建议性(
shadow)发现开始;绝不要在无限定规则上阻止构建。 - 检查具体会发送到模型的哪些内容没有API密钥。
- 针对标记示例的测试规则,跟踪漂移和回忆,只有在证据确凿时才进行阻断(
owned)检查。 - 对源文件、分阶段变更、分支差别或配置项执行相同规则。
- 对声明的节点、.NET 或 Go 依赖使用具备状态的
projectWhen.hasDependency(无包管理器执行)的门规则。
jevcheck 使用 @mhingston5/jev-cli 进行提供者选择。Node.js 20+ 是必需的。
看看它存在的原因:一个队列确认的错误
本页由 AI 翻译,技术细节请以原文为准。
README
以下为原文 README 节选,完整内容请查看原文。
jevcheck
Turn recurring code-review judgements into testable, repeatable semantic lint rules.
Traditional linters are great at enforcing what can be proved from syntax and types. General-purpose AI review can notice more, but its findings are often difficult to reproduce, calibrate, or enforce consistently. jevcheck sits between them: deterministic code selects a narrow candidate; Jev answers one bounded yes/no question; deterministic policy decides what happens next.
- Start with advisory (
shadow) findings; never block a build on an unqualified rule. - Inspect exactly what would be sent to a model without an API key.
- Test rules against labelled examples, track drift and recall, and promote them to blocking (
owned) checks only when the evidence is sound. - Run the same rule over source files, staged changes, branch diffs, or CI.
- Gate rules on declared Node, .NET, or Go dependencies using manifest-aware
projectWhen.hasDependency(no package-manager execution).
jevcheck uses @mhingston5/jev-cli for provider selection. Node.js 20+ is required.
See why it exists: a queue acknowledgement bug
A worker API returns 202 Accepted to a caller once a job has been published to its queue. A refactor catches a publish failure to log it, but still returns success. A reviewer catches the mistake once; the team wants to prevent similar regressions without asking an open-ended AI reviewer to reinterpret its standards on every PR.
The queue acknowledgement walkthrough includes the actual source, a deliberately broken handler, a corrected fixture, a scoped rule, and commands you can run locally. It is a small, production-inspired illustration, not a claim of a real incident or validated model accuracy.
Try the rule without calling a model
From a checkout of this repository:
npm ci
npm run build
node dist/cli.js inspect examples/queue-ack/src/handler.ts \
--config examples/queue-ack/jevcheck.config.json \
--rule reliability/no-success-after-publish-failure \
--verbose
推荐工具
换一个关键词,或者移除筛选条件。
安装
npx skillfish add mhingston/jevcheck