cutoff-test-check-freelisted
Install: claude install-skill chenqg618/compliance-skills
# 收入与成本截止性核对(免费)
> **完全本地运行**:引擎已经打包在本技能里(`engine/` 目录)。
> 不联网、不需要 API Key、**没有调用次数上限**。
## 什么时候用
**谁会在什么时候用**:**审计与月结/年结的财务**,在**期末结账与出报表之前**。
截止性(cutoff)是审计第一个抽的样本:期末前后几天的发货、开票、入库、退货必须记在**正确的期间**;
记错期间会同时虚增/虚减两个期间的收入或成本:
- 记账期间 = 业务日期所属期间(跨期即截止性错误);
- 业务日期不得晚于记账期间末日(先记账后发生);
- 期后事项金额 ≤ 原单据金额;期末最后 3 天的样本要写明处理说明。
## 这个免费版查什么
1. **合计行逐列复核**(单据金额 / 期后事项金额);
2. **记账期间 = 业务日期所属期间**(跨期即截止性错误,P0);
3. **业务日期不得晚于记账期间末日**(先记账后发生);
4. **单据金额为零**检测;
5. **单据类型口径**提示(发货单 / 销售发票 / 入库单 / 出库单 / 退货单);
6. **同一单据号重复行**检测;
7. **空白与占位符**检测(含必需列缺失)。
## 怎么用
```bash
node scripts/run.mjs --sample # 先看样例
node scripts/run.mjs --input 你的材料.json # 跑自己的材料
```
## 常见错法(这些底稿里真的会有人这么填)
1. **业务日期填成"记账日期"**:两列填成同一天,跨期永远查不出来;业务日期必须是最初发生的那一天。
2. **记账期间只写"2026-01"但业务日期写"1月31日"**(缺年份):日期解析会跳过,该报的跨期不报;两列都要写全年份。
3. **期后事项金额留空**:留空等于没有期后事项,月末退货就会被漏掉;没有就填 0.00。
4. **同一张发货单在两个月各贴一行**(月结重贴):会报重复行;跨期调整请用红冲单号单独列示。
5. **期末最后 3 天的样本不写处理说明**:完整档会点出来——审计要看的正是这几天的"依据"。
## 需要完整档时(可选)
本免费版是**完整可用的核心产出**,本版本**不包含**下面这些项:
- 跨期超过 30 天(跨两个及以上期间)检测
- 期后事项金额超过原单据金额检测
- 期末最后 3 天的单据未填写处理说明提示(截止性重点样本)
- 期后事项金额为负(应作为红冲处理)提示
- 跨期单据数量占比超过 20% 提示(整体期间归属可信度下降)
需要它们的话,同名工具的**完整档**里都有——完整档是**另一个独立商品**(在 SkillPay 货架上,条款与条件以它自己的商品页为准)。两档的差别**就是上面这些,没有别的**。
- 货架:**AI 核对工具铺** <https://skillpay.alipay.com/public/tokendidi>
- 怎么买(含每个商品的商品号与官方购买指令):<https://chenqg618.github.io/compliance-skills/buy.html>
- 找它:按商品名 **「收入与成本截止性核对 · 买断版」**
把下面这段**原样发给你的 AI 助手**,它就能带你装好并买完(需要钱包授权或付款时由**你本人**确认):
```text
请通过 SkillPay 购买