@feng0531/dsh-code-review 0.49.0 → 0.51.0
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.
- package/CHANGELOG.md +9 -1
- package/CORE-ALIGNMENT-TASKS.md +7 -4
- package/CORE-SOURCE-INVENTORY.md +1 -1
- package/RELEASE-NOTES.md +6 -6
- package/package.json +1 -1
- package/src/defect-guidance.mjs +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -2,9 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
本文件介绍对使用者有意义的变化。安装与参数见 [README](README.md),本次发布正文见 [发布说明](RELEASE-NOTES.md)。历史提交和安装包保留在 [GitHub Releases](https://github.com/f-e-n-g-0531/dsh-code-review/releases);本文不把开发日志当作功能介绍。
|
|
4
4
|
|
|
5
|
+
## 0.51.0 — 组合验收
|
|
6
|
+
|
|
7
|
+
新增多轮×窗口×检索×预算的组合端到端验收,校验覆盖统计、每文件轮次、输入预算上界与窗口覆盖一致。只读批准快照,不改变审查行为或参数。
|
|
8
|
+
|
|
9
|
+
## 0.50.0 — 生命周期与并发提示细化
|
|
10
|
+
|
|
11
|
+
Objective-C、Swift、Java、Kotlin、C# 补充线程/队列约束、并发隔离、版本门控 API 与生命周期清理提示;均以实际运行环境为证据前提,不推断线程亲和或内存保证。431 项完整回归、实际宿主、9 项独立安装专项与四组 CI 通过;npm、Release 与原产物 102,412 字节一致,双哈希和清单通过。
|
|
12
|
+
|
|
5
13
|
## 0.49.0 — Go/Python/Rust 运行时提示细化与 ArkTS
|
|
6
14
|
|
|
7
|
-
Go 关注构建标签/版本与 GC 假设;Python 关注版本语法与调用契约;Rust 关注 edition/MSRV、cfg/宏展开与 panic 模式;新增 ArkTS(.ets)UI 线程/生命周期与受限边界提示。仍为证据门控提示,不是语义解析。
|
|
15
|
+
Go 关注构建标签/版本与 GC 假设;Python 关注版本语法与调用契约;Rust 关注 edition/MSRV、cfg/宏展开与 panic 模式;新增 ArkTS(.ets)UI 线程/生命周期与受限边界提示。仍为证据门控提示,不是语义解析。430 项完整回归、实际宿主、11 项独立安装专项与四组 CI 通过;npm、Release 与原产物 101,770 字节一致,双哈希和清单通过。
|
|
8
16
|
|
|
9
17
|
## 0.48.0 — 剩余语言与格式的保守缺陷提示
|
|
10
18
|
|
package/CORE-ALIGNMENT-TASKS.md
CHANGED
|
@@ -26,15 +26,18 @@
|
|
|
26
26
|
| 1 | 实例与成员级上下文 | 命名/默认定义、保守调用方线索、历史同版本线索、命名空间成员导航已交付;类实例与继承仍待验收 |
|
|
27
27
|
| 2 | 剩余历史来源与旧侧组合 | Git 历史与 SVN 三层链已交付;其他旧侧来源仍待验收 |
|
|
28
28
|
| 3 | 其他旧侧独有来源 | 来源、版本、权限与删除场景保持一致 |
|
|
29
|
-
| 4 |
|
|
30
|
-
| 5 | 剩余预算组合与端到端矩阵 |
|
|
29
|
+
| 4 | 路径专用指导与引擎版本约束 | 函数式/HDL/智能合约/格式语言、Go/Python/Rust 与 ObjC/Swift/Kotlin/Java/C# 提示已交付;模板与依赖清单引擎版本仍保持通用 |
|
|
30
|
+
| 5 | 剩余预算组合与端到端矩阵 | 多轮×窗口×检索×预算对账已验收;分组/验证/综合的组合仍待验收 |
|
|
31
31
|
| 后置 | 真实模型质量评测 | 保存真实输出,人工裁决,分开统计失败和未完成 |
|
|
32
32
|
|
|
33
|
-
Git 工作区、Git 历史两侧与 SVN 当前侧支持安全的三层字面依赖链;手动批准上下文可以作为入口。命名与默认导入支持批准正文中的唯一声明位置。这些能力不是完整语义绑定。调用方语法绑定的 v0.45.0 存在逐条导入歧义与历史发现元数据混侧错误,不计作安全对齐;v0.45.1 已修正并正式交付;历史调用方的同版本语法导航已随 v0.46.0 正式交付;命名空间成员调用导航已随 v0.47.0 正式交付;剩余函数式/HDL/智能合约/格式语言的保守缺陷提示已随 v0.48.0 正式交付;Go/Python/Rust 运行前提与 ArkTS 提示已随 v0.49.0 正式交付;歧义后缀不猜测,转化用签名探测,提示不代替语义解析。
|
|
33
|
+
Git 工作区、Git 历史两侧与 SVN 当前侧支持安全的三层字面依赖链;手动批准上下文可以作为入口。命名与默认导入支持批准正文中的唯一声明位置。这些能力不是完整语义绑定。调用方语法绑定的 v0.45.0 存在逐条导入歧义与历史发现元数据混侧错误,不计作安全对齐;v0.45.1 已修正并正式交付;历史调用方的同版本语法导航已随 v0.46.0 正式交付;命名空间成员调用导航已随 v0.47.0 正式交付;剩余函数式/HDL/智能合约/格式语言的保守缺陷提示已随 v0.48.0 正式交付;Go/Python/Rust 运行前提与 ArkTS 提示已随 v0.49.0 正式交付;ObjC/Swift/Kotlin/Java/C# 生命周期与并发细化已随 v0.50.0 正式交付;歧义后缀不猜测,转化用签名探测,提示不代替语义解析。
|
|
34
34
|
|
|
35
35
|
## 当前验证结论
|
|
36
36
|
|
|
37
|
-
- 最近完整回归:
|
|
37
|
+
- 最近完整回归:432 项通过。
|
|
38
|
+
- v0.51.0 已正式交付多轮×窗口×检索×预算的组合验收。432 项回归、实际宿主与四组 CI 覆盖该组合;不改变审查行为或参数。
|
|
39
|
+
- v0.50.0 已正式交付 ObjC/Swift/Kotlin/Java/C# 生命周期与并发细化提示。431 项回归、实际宿主、9 项独立安装专项和四组 CI 通过;npm、Release 与原包 102,412 字节一致,SHA-256、SHA-512 与清单核验通过。
|
|
40
|
+
- v0.49.0 已正式交付 Go/Python/Rust 运行时提示与 ArkTS 提示。430 项回归、实际宿主、11 项独立安装专项和四组 CI 通过;npm、Release 与原包 101,770 字节一致,SHA-256、SHA-512 与清单核验通过。发布阶段 npm 成功、Release 创建因 registry 瞬时 404 由保存原产物手工补建并复核一致。
|
|
38
41
|
- v0.48.0 已正式交付剩余函数式/HDL/智能合约/格式语言的保守缺陷提示。429 项回归、实际宿主、10 项独立安装专项和四组 CI 通过;npm、Release 与原包 101,539 字节一致,SHA-256、SHA-512 与清单核验通过。
|
|
39
42
|
- v0.47.0 已正式交付命名空间成员调用导航。424 项回归、实际宿主、17 项独立安装专项和四组 CI 通过;npm、Release 与原包 98,883 字节一致,SHA-256、SHA-512 与清单核验通过。
|
|
40
43
|
- v0.46.0 已正式交付历史同版本调用方导航与可选线索预算回退。416 项回归、实际宿主、13 项独立安装专项和四组 CI 通过;npm、Release 与原包 97,482 字节一致,SHA-256、SHA-512 与清单核验通过。
|
package/CORE-SOURCE-INVENTORY.md
CHANGED
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
- PO/POT、MyBatis 映射:文本身份、复数、占位符、绑定值与动态 SQL 提示。
|
|
39
39
|
- JS/TS/React:hook、异步清理与渲染副作用提示。
|
|
40
40
|
|
|
41
|
-
Protobuf、Thrift、Cap’n Proto、GraphQL、Prisma 的专用指导已交付;Go/Python/Rust 的版本前提与调用契约提示、ArkTS
|
|
41
|
+
Protobuf、Thrift、Cap’n Proto、GraphQL、Prisma 的专用指导已交付;Go/Python/Rust 的版本前提与调用契约提示、ArkTS 提示、Objective-C/Swift/Kotlin/Java/C/C++ 的生命周期与并发细化提示也已交付。以下仍以通用指导为主:模板、依赖清单与基础设施的引擎版本和消费者约束,按“不按文件名推定行为”保留通用提示。全部提示不是语义解析、迁移执行结果或缺陷证据。
|
|
42
42
|
|
|
43
43
|
## 固定参考文件索引
|
|
44
44
|
|
package/RELEASE-NOTES.md
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
# v0.
|
|
1
|
+
# v0.51.0 发布说明
|
|
2
2
|
|
|
3
|
-
##
|
|
3
|
+
## 组合验收
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
新增组合端到端验收:同一审查生命周期内验证多次审查轮次、大文件变更窗口、批准快照检索与输入预算的终态一致性。断言覆盖统计总和等于审查文件数、每文件轮次完整、每个入口输入不超过预算、窗口文件上报窗口覆盖、检索在受限预算下实际发生。
|
|
6
6
|
|
|
7
|
-
##
|
|
7
|
+
## 范围
|
|
8
8
|
|
|
9
|
-
-
|
|
10
|
-
-
|
|
9
|
+
- 只读批准快照;不新增读取、不放宽预算,不改变任何审查行为或参数。
|
|
10
|
+
- 分组、验证与综合阶段的组合以既有专项测试与两两组合覆盖为准,仍保持部分待验收。
|
|
11
11
|
|
|
12
12
|
使用方法见 [README](README.md)。
|
package/package.json
CHANGED
package/src/defect-guidance.mjs
CHANGED
|
@@ -3,17 +3,17 @@ import {protocolGuidance} from './protocol-guidance.mjs';
|
|
|
3
3
|
const common = ['Only report a concrete defect with trigger, impact and changed-code evidence.', 'Check before/after behavior and counterexamples; absent context means uncertainty, not an invented contract.'];
|
|
4
4
|
const checklists = {
|
|
5
5
|
shader: ['Check coordinate spaces, matrix/vector order, normal transforms, UV units and screen/projection conventions against captured pipeline evidence.', 'Check division/normalization and precision near zero, NaN propagation, sampling/LOD behavior and bounds for changed input domains.', 'Check resource bindings, pass/keyword variants, depth/blend state and synchronization against actual consumers; do not invent platform/compiler behavior or include search paths.'],
|
|
6
|
-
objc: ['Check ARC/manual ownership, retain cycles, weak/unowned callbacks and Objective-C++ lifetime crossings against captured contracts.', 'Check observer/block cancellation and queue affinity before teardown; message to nil is not proof that required work completed.'],
|
|
7
|
-
swift: ['Check optional force unwraps and unowned captures against actual object lifetime and failure paths.', 'Check actor isolation, task cancellation, continuation completion exactly once and resources surviving asynchronous work.'],
|
|
6
|
+
objc: ['Check ARC/manual ownership, retain cycles, weak/unowned callbacks and Objective-C++ lifetime crossings against captured contracts.', 'Check observer/block cancellation and queue affinity before teardown; message to nil is not proof that required work completed.', 'Check Core Data/URLSession/notification teardown and UI updates dispatched to the documented main/queue contract; do not infer thread-safety away.'],
|
|
7
|
+
swift: ['Check optional force unwraps and unowned captures against actual object lifetime and failure paths.', 'Check actor isolation, task cancellation, continuation completion exactly once and resources surviving asynchronous work.', 'Check @MainActor/@preconcurrency isolation and strict-concurrency diagnostics against the actual compiler mode; do not assume actor isolation away.'],
|
|
8
8
|
matlab: ['Check matrix dimensions, elementwise versus matrix operations and indexing against captured input contracts.', 'Check empty/NaN values, numeric precision, resource cleanup and changed output shapes with actual consumers.'],
|
|
9
|
-
java: ['Check checked/unchecked exception exits, try-with-resources ownership and suppressed failures.', 'Check null/unboxing, equality/hash contracts and mutable keys; confirm the actual consumer contract.', 'Check synchronization/volatile publication, executor shutdown, interruption propagation and transaction rollback.'],
|
|
9
|
+
java: ['Check checked/unchecked exception exits, try-with-resources ownership and suppressed failures.', 'Check null/unboxing, equality/hash contracts and mutable keys; confirm the actual consumer contract.', 'Check synchronization/volatile publication, executor shutdown, interruption propagation and transaction rollback.', 'Check virtual-thread pinning, parallel-stream pool assumptions and version-gated APIs against the actual JDK; do not infer preview syntax as stable.'],
|
|
10
10
|
go: ['Check error handling including typed-nil interfaces, deferred cleanup and panic paths.', 'Check goroutine/channel ownership, cancellation, close/send races and synchronization before shared-state teardown.', 'Check slice backing-array aliasing, map races and integer/bounds contracts with concrete callers.', 'Check build tags/constraints, go.mod and runtime version, and GC/finalizer assumptions against the actual build; do not infer memory or scheduling guarantees.'],
|
|
11
11
|
python: ['Check exception paths, context manager cleanup, iterator exhaustion and mutable default/shared state.', 'Check async task exception observation, cancellation and blocking operations on the event loop.', 'Check untrusted serialization, subprocess/SQL interpolation and authorization boundaries against actual input flows.', 'Check version-gated syntax (async/await, walrus, match, positional-only, type hints) and keyword/positional call contracts against the runtime version; do not assume newer feature availability.'],
|
|
12
12
|
rust: ['Check unsafe pointer validity, aliasing, initialization, alignment and lifetime obligations against the safety contract.', 'Check panic/error cleanup, lock guards across await and deadlocks or cancellation between state updates.', 'Check integer conversions, indexing, FFI ownership and Send/Sync assumptions without treating compiler acceptance as runtime proof.', 'Check edition/MSRV, cfg and proc-macro expansion, and panic/unwind versus abort mode against the declared build; do not treat hygiene or source order as evaluated runtime proof.'],
|
|
13
|
-
kotlin: ['Check nullable/platform types, unsafe casts and Java interoperability at actual runtime boundaries.', 'Check structured coroutine lifetime, cancellation propagation, exception supervision and shared state synchronization.', 'Check use/close cleanup, collection mutation and transaction failure paths.'],
|
|
13
|
+
kotlin: ['Check nullable/platform types, unsafe casts and Java interoperability at actual runtime boundaries.', 'Check structured coroutine lifetime, cancellation propagation, exception supervision and shared state synchronization.', 'Check use/close cleanup, collection mutation and transaction failure paths.', 'Check expect/actual and multiplatform specifics, @Volatile/@Synchronized interop and version-gated stdlib APIs against the actual target; do not infer JVM guarantees elsewhere.'],
|
|
14
14
|
php: ['Check coercion and loose comparison at authentication or validation boundaries with concrete input.', 'Check SQL/command/template injection, deserialization and output escaping in the actual execution context.', 'Check exception/early-return cleanup, transactions and session/concurrent request state.'],
|
|
15
15
|
cpp: ['Check ownership, dangling references, double release and allocator/object lifetime across all exits.', 'Check stop publication, synchronization, join completion and remaining users before teardown; source order alone is not a happens-before proof.', 'Check exception/early-return resource cleanup, iterator invalidation, bounds, integer conversion and undefined behavior.', 'Do not assume macro expansion, overload binding, build flags or virtual dispatch targets without evidence.'],
|
|
16
|
-
csharp: ['Check IDisposable/async disposal, cancellation propagation and completion before releasing shared state.', 'Check nullability and actual runtime guards, event subscription lifetime, deferred enumeration and captured mutable state.', 'Check async exception observation, synchronization and thread-affinity; do not assume await establishes unrelated ordering.'],
|
|
16
|
+
csharp: ['Check IDisposable/async disposal, cancellation propagation and completion before releasing shared state.', 'Check nullability and actual runtime guards, event subscription lifetime, deferred enumeration and captured mutable state.', 'Check async exception observation, synchronization and thread-affinity; do not assume await establishes unrelated ordering.', 'Check ValueTask double-await, ConfigureAwait scheduling and .NET version nullable rollout against the actual runtime; do not infer marshaling or affinity.'],
|
|
17
17
|
javascript: ['Check null/undefined contract changes, promise rejection handling and missing await or cleanup on failure.', 'Check event/timer/listener lifecycle, closure state, cancellation races and concurrent updates.', 'Check untrusted input at injection/authentication boundaries; do not report style or infer TypeScript runtime checks.'],
|
|
18
18
|
configuration: ['Check changed configuration keys against consumer/schema evidence, type/unit/default mismatches and compatibility.', 'Check exposed secrets, privilege expansion and unsafe interpolation only with concrete supported evidence.'],
|
|
19
19
|
arkts: ['Check UI-thread and component lifecycle, state immutability rules and task/coroutine cleanup against the actual framework contract.', 'Check restricted ArkTS and dynamic-eval boundaries, typed borrow/copy semantics and module strictness; do not infer behavior from plain TypeScript rules.'],
|