@longzai-intelligence-issues/ledger 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/README.md +26 -0
  3. package/dist/index.d.ts +2123 -0
  4. package/dist/index.js +78 -0
  5. package/dist/rolldown-runtime-BqT_7tdF.js +1 -0
  6. package/lzi-builder.config.ts +15 -0
  7. package/lzi-bun.config.ts +8 -0
  8. package/oxlint.config.ts +3 -0
  9. package/package.json +39 -0
  10. package/src/__tests__/close/verify-close.commands.test.ts +560 -0
  11. package/src/__tests__/docs-refs/docs-refs.commands.test.ts +213 -0
  12. package/src/__tests__/fs/mini-glob.utils.test.ts +71 -0
  13. package/src/__tests__/fs/walk-surface.utils.test.ts +170 -0
  14. package/src/__tests__/health/health.commands.test.ts +131 -0
  15. package/src/__tests__/lint/lint.core.test.ts +332 -0
  16. package/src/__tests__/numbering/numbering.commands.test.ts +194 -0
  17. package/src/__tests__/numbering/numbering.core.test.ts +318 -0
  18. package/src/__tests__/parser/guide-fixture.utils.test.ts +45 -0
  19. package/src/__tests__/parser/registry.parser.test.ts +316 -0
  20. package/src/__tests__/prompts/prompts.commands.test.ts +47 -0
  21. package/src/__tests__/template/issue-template.renderer.test.ts +133 -0
  22. package/src/close/evidence-reader.utils.ts +201 -0
  23. package/src/close/green-flip.commands.ts +199 -0
  24. package/src/close/verify-close.commands.ts +676 -0
  25. package/src/docs-refs/docs-refs.commands.ts +693 -0
  26. package/src/freeze/freeze.commands.ts +261 -0
  27. package/src/fs/mini-glob.utils.ts +216 -0
  28. package/src/fs/walk-surface.utils.ts +298 -0
  29. package/src/health/health.commands.ts +327 -0
  30. package/src/index.ts +46 -0
  31. package/src/lint/lint-baseline.commands.ts +147 -0
  32. package/src/lint/lint.core.ts +584 -0
  33. package/src/normalize/normalize-header.commands.ts +361 -0
  34. package/src/numbering/numbering.commands.ts +375 -0
  35. package/src/numbering/numbering.core.ts +685 -0
  36. package/src/parser/format.utils.ts +279 -0
  37. package/src/parser/guide-fixture.utils.ts +117 -0
  38. package/src/parser/registry.parser.ts +679 -0
  39. package/src/prompts/prompts.commands.ts +211 -0
  40. package/src/template/issue-template.renderer.ts +351 -0
  41. package/src/triage/triage.classify.ts +93 -0
  42. package/src/vault/vault.commands.ts +434 -0
  43. package/tsconfig/.cache/build.tsbuildinfo +1 -0
  44. package/tsconfig/.cache/node.tsbuildinfo +1 -0
  45. package/tsconfig/.cache/test.tsbuildinfo +1 -0
  46. package/tsconfig/app.json +13 -0
  47. package/tsconfig/build.json +15 -0
  48. package/tsconfig/node.json +12 -0
  49. package/tsconfig/test.json +15 -0
  50. package/tsconfig.json +23 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,18 @@
1
+ # 更新日志
2
+
3
+ 本项目的所有重要更改都将记录在此文件中。
4
+
5
+ 格式基于 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.1.0/),
6
+ 本项目遵循 [语义化版本](https://semver.org/lang/zh-CN/)。
7
+
8
+ ## [0.0.1] - 2026-09-14
9
+
10
+ ### 新增
11
+
12
+ - 新增 ledger 引擎包:issue 文件格式单一真源、标准模板渲染器(skeleton/instance 双模式)、注册表解析器、格式指南活样板零漂移夹具
13
+ - ledger 引擎新增 fs 基座:自研 mini-glob 编译器(*、双星、?、{a,b};字符类与嵌套大括号显式抛错)与扫描面分层遍历(前缀推导保守超集、严格/宽容双口径、排除整树剪枝、符号链接跳过、前缀与全仓口径等价守卫测试)
14
+ - ledger 引擎新增编号门禁:四类键型提取、取号(max+1 顺延跳已占与保留号、宽度随最大键、空范围拒绝)、五类违例扫描(撞号/保留号占用/零填充混用/豁免陈旧/slug 数字+白名单失效对账)、覆盖面审计(未登记编号区/pending 失效)与 next/check/audit 命令核
15
+ - ledger 引擎新增 lint 与观测:12 条核心规则(状态行/黄灯挂起/绿灯处置段/占位/手工翻绿识别/冻结双规则/slug 数字/取消原因/阻塞引用/孤儿边车)、规则包注册扩展点、棘轮基线三态与拒绝扩基线再生、health 巡检(状态分布/最老黄灯账龄/A-B-C)、triage append-only 台账
16
+ - ledger 引擎新增收口与冻结:证据收口流(锚点四级归类/挂起词拦截/冻结守卫/阻塞全绿门禁/幂等分诊)、证书化真跑(sha256 可见树+命令身份指纹/证书落盘/复用秒回/run.lock/两级门禁 exit 2)、green-flip 守卫回填、freeze/unfreeze 裁定语硬门、normalize-header 方言迁移零丢失守卫
17
+ - ledger 引擎新增 docs 引用检查(不完整 slug 前缀唯一解析/ambiguous 列候选/unknown/棘轮基线/fix 机械展开+refused)与推荐提示词(issue-create-and-process、issue-process 泛化模板 + extraDir)
18
+ - lint 新增第 13 条核心规则 issue-slug-non-ascii(slug 仅限 ASCII kebab,禁中文与非 ASCII 字符;单一真源 ASCII_KEBAB_SLUG_PATTERN);模板字段说明与格式指南同步
package/README.md ADDED
@@ -0,0 +1,26 @@
1
+ # @longzai-intelligence-issues/ledger
2
+
3
+ Issues 文件化注册表引擎包,把 apex-energy-turbo 已长期验证的 issues 门禁机制(编号、lint、收口、冻结、引用检查、提示词)以纯函数形态整体迁移,作为 lzi-issues 工具的判定内核。
4
+
5
+ ## 意图
6
+
7
+ issue 以仓库内 markdown 注册表文件为本体(Local First,零服务器零数据库),围绕它建立一整套机器可执行的门禁:建档取号走编号门禁、状态行与处置段走 lint 规则与棘轮基线、终态收口走 verify-close(证据锚点 / 证书化真跑)、冻结走裁定语硬门、文档引用走前缀唯一解析。所有判定必须是纯函数、退出码即判据,杜绝「不核验即翻绿」与手工绕行。
8
+
9
+ ## 定位
10
+
11
+ 位于 `longzai-intelligence-issues` 项目 `packages/ledger`,是引擎层(零第三方运行时依赖,仅 node:fs / node:path / node:crypto)。向下依赖 `@longzai-intelligence-issues/config` 获取配置类型(引擎零仓库知识——scope 注册、扫描面、门禁参数全部来自 lzi-issues.config.ts);向上被 apps/cli(命令面)、domains/issues/implementation 的 markdown-registry 适配器(files 存储策略的写回与取号内核)消费。格式口径的单一真源在本包 parser/format.utils,读侧(解析/lint/收口)与写侧(模板渲染/翻绿回填/冻结写入)共用同一组正则与常量。
12
+
13
+ ## 职能
14
+
15
+ - 格式与模板:注册表文件收集口径、状态行定位(读写共用正则)、五态归类、处置段与占位判定、criteria 围栏块解析(宁可拒收不可猜);标准模板渲染器(skeleton / instance 双模式)与注册表 README 存根渲染。
16
+ - 扫描基座:自研 mini-glob 编译器(字符类与嵌套大括号显式抛错)与分层遍历(include glob 反推最小目录前缀集的保守超集、严格/宽容双口径、排除整树剪枝、前缀与全仓口径等价守卫)。
17
+ - 编号门禁:next 取号(max+1 顺延、跳磁盘已占与保留号、宽度随最大键、空范围拒绝)、check 五类违例(撞号/保留号占用/零填充混用/豁免陈旧/slug 数字 + 白名单失效对账)、audit 覆盖面审计(未登记编号区/pending 失效)。
18
+ - lint 与观测:13 条核心规则全集(含 slug 纯 ASCII kebab 字符集规则)、域规则包注册扩展点、棘轮基线三态(命中豁免/新增红/陈旧红)与拒绝扩基线的基线再生;health 巡检(状态分布/最老黄灯账龄/A-B-C 分类)与 triage append-only 台账。
19
+ - 收口与冻结:证据收口(处置段跨围栏锚点四级归类、挂起词拦截、阻塞全绿门禁、幂等分诊)、证书化真跑(sha256 可见树+命令身份指纹、证书落盘复用秒回、run.lock、禁用级/确认级两级门禁 exit 2)、green-flip 守卫回填、freeze/unfreeze 裁定语硬门、normalize-header 方言迁移零丢失守卫。
20
+ - 引用与提示词:docs 引用检查(不完整 slug 前缀唯一解析、ambiguous 列候选、fix 机械展开与 refused 交人工、独立棘轮基线);两个泛化工作流提示词(issue-create-and-process / issue-process)与 extraDir 自定义加载。
21
+
22
+ 判据口径统一:退出码 0 过 / 1 违规 / 2 门禁拦截零执行;违规与错误走 stderr、过程信息走 stdout(由 CLI 层承接)。
23
+
24
+ ## 实现情况
25
+
26
+ 已实现上述全部模块(161 个 bun test 用例,覆盖格式指南活样板零漂移、取号边界、五违例、基线三态、锚点归类、两级门禁、指纹复用、冻结硬门、方言迁移、前缀消歧);lint / typecheck / build / test 四道门禁通过。格式规范的人类可读真源见项目 docs/guides/issue-file-format.md,需求与验收见 docs/specs/spec-20260914-lzi-issues-file-registry-tool/。