@zhushanwen/pi-pending-notifications 0.3.2 → 0.3.3
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/package.json +2 -1
- package/src/index.ts +7 -6
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhushanwen/pi-pending-notifications",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.3",
|
|
4
4
|
"description": "Cross-extension async operation registration/query mechanism for Pi — prevents message injection during long-running operations.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "src/index.ts",
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
"index.ts"
|
|
23
23
|
],
|
|
24
24
|
"devDependencies": {
|
|
25
|
+
"@vitest/coverage-v8": "^4.1.9",
|
|
25
26
|
"vitest": "^4.1.8"
|
|
26
27
|
},
|
|
27
28
|
"peerDependencies": {
|
package/src/index.ts
CHANGED
|
@@ -75,13 +75,14 @@ interface PendingToolDetails {
|
|
|
75
75
|
/**
|
|
76
76
|
* 模块级 EventBus 监听器 unsubscribe 函数列表。
|
|
77
77
|
*
|
|
78
|
-
* EventBus
|
|
79
|
-
*
|
|
80
|
-
*
|
|
78
|
+
* [W4 注释修正] 原 rationale("EventBus 进程级单例 + reload 累积 N 组监听器")在
|
|
79
|
+
* pi 0.84.1 不成立:pi.events.on 的返回值是 runtime.trackEventBusSubscription 跟踪的
|
|
80
|
+
* unsubscribe(loader.js:338-341),runtime.invalidate() 时自动全部退订——session 替换
|
|
81
|
+
* (dispose)与 /reload(invalidate 先于重新 load)都触发;且 session 替换会创建全新
|
|
82
|
+
* ResourceLoader → 全新 eventBus(agent-session-services.js:63-68),旧 bus 整体废弃。
|
|
81
83
|
*
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
* currentSessionId 始终是最新 session(旧闭包的过期 currentSessionId 不会再给事件打戳)。
|
|
84
|
+
* 下方的工厂入口手工清理因此是双重冗余(无害):pi 已自动清理 tracked 订阅。
|
|
85
|
+
* 保留是防御性兜底(不依赖 pi 内部清理时机,卸载幂等)。
|
|
85
86
|
*/
|
|
86
87
|
let unsubscribers: Array<() => void> = [];
|
|
87
88
|
|