@feiyangdefeng/sdk 1.1.0 → 1.2.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.
Files changed (136) hide show
  1. package/README.md +15 -1
  2. package/dist/collector/auto-tracker.d.ts +2 -0
  3. package/dist/collector/auto-tracker.d.ts.map +1 -1
  4. package/dist/collector/click-event-dispatcher.d.ts +8 -0
  5. package/dist/collector/click-event-dispatcher.d.ts.map +1 -0
  6. package/dist/collector/click-event-factory.d.ts +23 -0
  7. package/dist/collector/click-event-factory.d.ts.map +1 -0
  8. package/dist/collector/click-tracker.d.ts +8 -8
  9. package/dist/collector/click-tracker.d.ts.map +1 -1
  10. package/dist/collector/exposure-tracker.d.ts.map +1 -1
  11. package/dist/collector/input-tracker.d.ts +8 -4
  12. package/dist/collector/input-tracker.d.ts.map +1 -1
  13. package/dist/collector/performance-tracker.d.ts.map +1 -1
  14. package/dist/collector/touch-interaction-tracker.d.ts +20 -0
  15. package/dist/collector/touch-interaction-tracker.d.ts.map +1 -0
  16. package/dist/collector/view-tracker.d.ts.map +1 -1
  17. package/dist/core/capabilities.d.ts +16 -0
  18. package/dist/core/capabilities.d.ts.map +1 -0
  19. package/dist/core/component-info-sanitize.d.ts +10 -0
  20. package/dist/core/component-info-sanitize.d.ts.map +1 -0
  21. package/dist/core/config.d.ts.map +1 -1
  22. package/dist/core/utils.d.ts +4 -0
  23. package/dist/core/utils.d.ts.map +1 -1
  24. package/dist/extension/frame-adapters/angular-adapter.d.ts +16 -0
  25. package/dist/extension/frame-adapters/angular-adapter.d.ts.map +1 -0
  26. package/dist/extension/frame-adapters/component-resolvers.d.ts +9 -0
  27. package/dist/extension/frame-adapters/component-resolvers.d.ts.map +1 -0
  28. package/dist/extension/frame-adapters/dom-context.d.ts +6 -0
  29. package/dist/extension/frame-adapters/dom-context.d.ts.map +1 -0
  30. package/dist/extension/frame-adapters/dom-data.d.ts +7 -0
  31. package/dist/extension/frame-adapters/dom-data.d.ts.map +1 -0
  32. package/dist/extension/frame-adapters/react-adapter.d.ts +12 -0
  33. package/dist/extension/frame-adapters/react-adapter.d.ts.map +1 -0
  34. package/dist/extension/frame-adapters/react-fiber-dom.d.ts +7 -0
  35. package/dist/extension/frame-adapters/react-fiber-dom.d.ts.map +1 -0
  36. package/dist/extension/frame-adapters/react-fiber-internal.d.ts +19 -0
  37. package/dist/extension/frame-adapters/react-fiber-internal.d.ts.map +1 -0
  38. package/dist/extension/frame-adapters/resolve.d.ts +7 -0
  39. package/dist/extension/frame-adapters/resolve.d.ts.map +1 -0
  40. package/dist/extension/frame-adapters/ui-lib-heuristics.d.ts +7 -0
  41. package/dist/extension/frame-adapters/ui-lib-heuristics.d.ts.map +1 -0
  42. package/dist/extension/performance-alert-engine.d.ts +16 -0
  43. package/dist/extension/performance-alert-engine.d.ts.map +1 -0
  44. package/dist/extension/performance-cleanup-scheduler.d.ts +8 -0
  45. package/dist/extension/performance-cleanup-scheduler.d.ts.map +1 -0
  46. package/dist/extension/performance-metrics-aggregator.d.ts +11 -0
  47. package/dist/extension/performance-metrics-aggregator.d.ts.map +1 -0
  48. package/dist/extension/performance-monitor-storage.d.ts +16 -0
  49. package/dist/extension/performance-monitor-storage.d.ts.map +1 -0
  50. package/dist/extension/performance-monitor.d.ts +4 -9
  51. package/dist/extension/performance-monitor.d.ts.map +1 -1
  52. package/dist/extension/plugin-lifecycle.d.ts +9 -0
  53. package/dist/extension/plugin-lifecycle.d.ts.map +1 -0
  54. package/dist/extension/plugin-manager.d.ts +3 -0
  55. package/dist/extension/plugin-manager.d.ts.map +1 -1
  56. package/dist/extension/session-replay-budget.d.ts +20 -0
  57. package/dist/extension/session-replay-budget.d.ts.map +1 -0
  58. package/dist/extension/session-replay-interaction-lifecycle.d.ts +23 -0
  59. package/dist/extension/session-replay-interaction-lifecycle.d.ts.map +1 -0
  60. package/dist/extension/session-replay-store.d.ts +25 -0
  61. package/dist/extension/session-replay-store.d.ts.map +1 -0
  62. package/dist/extension/session-replay.d.ts +17 -29
  63. package/dist/extension/session-replay.d.ts.map +1 -1
  64. package/dist/extension/user-action-sequence.d.ts.map +1 -1
  65. package/dist/index.d.ts +10 -1
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.es.js +9901 -8925
  68. package/dist/index.es.js.map +1 -1
  69. package/dist/index.iife.js +2 -2
  70. package/dist/index.iife.js.map +1 -1
  71. package/dist/index.umd.js +2 -2
  72. package/dist/index.umd.js.map +1 -1
  73. package/dist/processor/data-processor.d.ts +3 -1
  74. package/dist/processor/data-processor.d.ts.map +1 -1
  75. package/dist/processor/pipeline-context.d.ts +8 -0
  76. package/dist/processor/pipeline-context.d.ts.map +1 -0
  77. package/dist/processor/processor-pipeline.d.ts +11 -0
  78. package/dist/processor/processor-pipeline.d.ts.map +1 -0
  79. package/dist/processor/processor-stage.d.ts +8 -0
  80. package/dist/processor/processor-stage.d.ts.map +1 -0
  81. package/dist/processor/stages/compress-stage.d.ts +12 -0
  82. package/dist/processor/stages/compress-stage.d.ts.map +1 -0
  83. package/dist/processor/stages/deduplicate-stage.d.ts +12 -0
  84. package/dist/processor/stages/deduplicate-stage.d.ts.map +1 -0
  85. package/dist/processor/stages/sample-stage.d.ts +12 -0
  86. package/dist/processor/stages/sample-stage.d.ts.map +1 -0
  87. package/dist/runtime/tracker-config-coordinator.d.ts +22 -0
  88. package/dist/runtime/tracker-config-coordinator.d.ts.map +1 -0
  89. package/dist/runtime/tracker-event-bus-bridge.d.ts +20 -0
  90. package/dist/runtime/tracker-event-bus-bridge.d.ts.map +1 -0
  91. package/dist/runtime/tracker-event-dispatcher.d.ts +31 -0
  92. package/dist/runtime/tracker-event-dispatcher.d.ts.map +1 -0
  93. package/dist/runtime/tracker-event-enricher.d.ts +14 -0
  94. package/dist/runtime/tracker-event-enricher.d.ts.map +1 -0
  95. package/dist/runtime/tracker-feature-registry.d.ts +26 -0
  96. package/dist/runtime/tracker-feature-registry.d.ts.map +1 -0
  97. package/dist/runtime/tracker-plugin-context.d.ts +11 -0
  98. package/dist/runtime/tracker-plugin-context.d.ts.map +1 -0
  99. package/dist/tracker.d.ts +5 -12
  100. package/dist/tracker.d.ts.map +1 -1
  101. package/dist/transport/batch-sender-state.d.ts +3 -0
  102. package/dist/transport/batch-sender-state.d.ts.map +1 -0
  103. package/dist/transport/batch-sender.d.ts +24 -12
  104. package/dist/transport/batch-sender.d.ts.map +1 -1
  105. package/dist/transport/delivery-coordinator.d.ts +18 -0
  106. package/dist/transport/delivery-coordinator.d.ts.map +1 -0
  107. package/dist/transport/event-queue.d.ts +20 -0
  108. package/dist/transport/event-queue.d.ts.map +1 -0
  109. package/dist/transport/flush-scheduler.d.ts +19 -0
  110. package/dist/transport/flush-scheduler.d.ts.map +1 -0
  111. package/dist/transport/offline-recovery-manager.d.ts +17 -0
  112. package/dist/transport/offline-recovery-manager.d.ts.map +1 -0
  113. package/dist/transport/offline-storage.d.ts +1 -1
  114. package/dist/transport/offline-storage.d.ts.map +1 -1
  115. package/dist/transport/sender.d.ts +8 -1
  116. package/dist/transport/sender.d.ts.map +1 -1
  117. package/docs/ARCHITECTURE_MAP.md +476 -0
  118. package/docs/BROWSER_SUPPORT.md +15 -0
  119. package/docs/ENGINEERING_OVERVIEW.md +154 -0
  120. package/docs/ERROR_SCENARIO_EVALUATION.md +124 -0
  121. package/docs/FRAME_ADAPTERS.md +70 -0
  122. package/docs/FRAME_ADAPTERS_GUIDE.md +195 -0
  123. package/docs/MINIPROGRAM.md +11 -0
  124. package/docs/OPTIMIZATION_PLAN.md +123 -0
  125. package/docs/PERFORMANCE_BASELINE.md +181 -0
  126. package/docs/README.md +30 -0
  127. package/docs/UI_LIB_COMPAT.md +31 -0
  128. package/docs/USAGE.md +4064 -0
  129. package/docs/VIEW_LOCAL_CACHE_AND_PROFILE.md +252 -0
  130. package/docs/VUE3_INTEGRATION.md +528 -0
  131. package/examples/README.md +54 -0
  132. package/examples/reference/user-action-profile.ts +446 -0
  133. package/examples/reference/user-profile-backend.ts +397 -0
  134. package/examples/reference/vue3-naive-ui-example.vue +211 -0
  135. package/package.json +38 -4
  136. package/tests/README.md +203 -0
@@ -0,0 +1,203 @@
1
+ # 测试地图
2
+
3
+ `tests/` 按“子系统所有权 + 发布风险”组织,回归入口和发布门禁也围绕这套分层展开。
4
+
5
+ ## 目录结构
6
+
7
+ - `tests/core`
8
+ - 核心工具、事件总线、存储、配置与基础能力
9
+ - `tests/runtime`
10
+ - `Tracker` 运行时协作对象、配置联动、桥接与 facade 语义
11
+ - `tests/processor`
12
+ - 采样、去重、压缩与 pipeline 行为
13
+ - `tests/collector`
14
+ - click / input / exposure / view / auto-tracking 等采集逻辑
15
+ - `tests/transport`
16
+ - sender、batch sender、离线恢复、状态机和销毁语义
17
+ - `tests/extension`
18
+ - 插件、frame adapters、SessionReplay、PerformanceMonitor、用户画像等扩展能力
19
+ - `tests/boundary`
20
+ - 生命周期、并发、资源回收、性能边界与回归边缘场景
21
+ - `tests/functional`
22
+ - 跨子系统的运行时行为验证
23
+ - `tests/e2e`
24
+ - 全链路工作流验证
25
+ - `tests/examples`
26
+ - `examples/runnable/` 的 smoke 验证,锁定示例可运行性
27
+
28
+ ## 回归矩阵
29
+
30
+ ### `core-regression`
31
+
32
+ 目标:锁定运行时主线、pipeline、配置联动和公开 API 兼容。
33
+
34
+ 覆盖范围:
35
+ - `tests/core/*`
36
+ - `tests/runtime/*`
37
+ - `tests/processor/*`
38
+ - `tests/tracker.test.ts`
39
+ - `tests/integration.test.ts`
40
+
41
+ 运行命令:
42
+
43
+ ```bash
44
+ pnpm test:regression:core
45
+ ```
46
+
47
+ ### `collector-regression`
48
+
49
+ 目标:锁定点击、输入、曝光、性能采集、touch 路径和组件解析主线。
50
+
51
+ 覆盖范围:
52
+ - `tests/collector/*`
53
+ - `tests/boundary/collector-boundary.test.ts`
54
+ - `tests/functional/auto-tracking.test.ts`
55
+
56
+ 运行命令:
57
+
58
+ ```bash
59
+ pnpm test:regression:collector
60
+ ```
61
+
62
+ ### `transport-regression`
63
+
64
+ 目标:锁定批量发送、离线恢复、状态机、destroy/destroyAsync 和空地址语义。
65
+
66
+ 覆盖范围:
67
+ - `tests/transport/*`
68
+ - `tests/boundary/transport-boundary.test.ts`
69
+ - `tests/boundary/error-recovery.test.ts`
70
+ - `tests/functional/transport-layer.test.ts`
71
+
72
+ 运行命令:
73
+
74
+ ```bash
75
+ pnpm test:regression:transport
76
+ ```
77
+
78
+ ### `extension-regression`
79
+
80
+ 目标:锁定插件、network interceptor、frame adapters、SessionReplay、PerformanceMonitor 和 UI 集成兼容。
81
+
82
+ 覆盖范围:
83
+ - `tests/extension/*`
84
+ - `tests/boundary/vue-integration-boundary.test.ts`
85
+ - `tests/functional/extension-features.test.ts`
86
+ - `tests/functional/performance-tracking.test.ts`
87
+
88
+ 运行命令:
89
+
90
+ ```bash
91
+ pnpm test:regression:extension
92
+ ```
93
+
94
+ ### `system-regression`
95
+
96
+ 目标:锁定长会话、并发、资源回收和全链路协同。
97
+
98
+ 覆盖范围:
99
+ - `tests/boundary/concurrency.test.ts`
100
+ - `tests/boundary/resource-cleanup.test.ts`
101
+ - `tests/boundary/performance-boundary.test.ts`
102
+ - `tests/e2e/full-workflow.test.ts`
103
+
104
+ 运行命令:
105
+
106
+ ```bash
107
+ pnpm test:regression:system
108
+ ```
109
+
110
+ ### `docs-examples-regression`
111
+
112
+ 目标:防止正式示例和文档示例漂移,确保 runnable 示例持续可执行。
113
+
114
+ 覆盖范围:
115
+ - `tests/examples/*`
116
+ - `examples/runnable/*`
117
+
118
+ 运行命令:
119
+
120
+ ```bash
121
+ pnpm test:examples
122
+ ```
123
+
124
+ ## 发布门禁
125
+
126
+ 完整门禁命令:
127
+
128
+ ```bash
129
+ pnpm test:release
130
+ ```
131
+
132
+ 执行顺序:
133
+
134
+ 1. `pnpm typecheck`
135
+ 2. `pnpm build`
136
+ 3. `pnpm test:regression:core`
137
+ 4. `pnpm test:regression:collector`
138
+ 5. `pnpm test:regression:transport`
139
+ 6. `pnpm test:regression:extension`
140
+ 7. `pnpm test:regression:system`
141
+ 8. `pnpm test:examples`
142
+
143
+ 失败分流:
144
+
145
+ - `typecheck/build` 失败:发布级阻塞
146
+ - `core/transport/runtime` 失败:发布级阻塞
147
+ - `collector/extension/system` 失败:发布级阻塞
148
+ - `examples` 失败:发布级阻塞,示例视为受支持资产
149
+
150
+ ## 公开契约与高风险验证点
151
+
152
+ 公开契约锁定主要集中在这些区域:
153
+
154
+ - `tests/tracker.test.ts`
155
+ - `tests/integration.test.ts`
156
+ - `tests/runtime/*`
157
+ - `tests/transport/*`
158
+
159
+ 高风险边界主要集中在这些区域:
160
+
161
+ - 初始化、配置更新、多实例
162
+ - 空 `serverUrl`
163
+ - flush / retry / offline recovery
164
+ - destroy / destroyAsync / 重复 destroy
165
+ - SessionReplay 监听器清理
166
+ - PerformanceMonitor 历史与告警路径
167
+ - 资源回收与长期运行
168
+
169
+ ## 示例与性能基线
170
+
171
+ 示例 smoke 不替代 functional/e2e 测试,它只验证:
172
+
173
+ - 示例能被加载
174
+ - 示例能实例化 SDK
175
+ - 关键交互路径不报错
176
+ - 示例中的运行说明与实际行为一致
177
+
178
+ 性能与资源基线文档见 [docs/PERFORMANCE_BASELINE.md](/Users/xinxin/Downloads/1.项目/tracker_sdk/docs/PERFORMANCE_BASELINE.md)。
179
+ 当前固定保留的基线入口包括:
180
+
181
+ - `ClickTracker` 主基线
182
+ - `SessionReplay` 主基线
183
+ - `PerformanceMonitor` 主基线
184
+ - `SessionReplay` 长驻留代理观测
185
+ - `Memory Leak Detection` 辅助基线
186
+
187
+ ## 常用命令
188
+
189
+ ```bash
190
+ pnpm test
191
+ pnpm test --run
192
+ pnpm test:regression:core
193
+ pnpm test:regression:transport
194
+ pnpm test:examples
195
+ pnpm test:release
196
+ ```
197
+
198
+ ## 注意事项
199
+
200
+ 1. 测试环境默认使用 jsdom,Node 专用场景会在单个测试文件内显式切换。
201
+ 2. `tests/examples` 依赖 `dist/` 产物,`pnpm test:examples` 会先执行 `pnpm build`。
202
+ 3. IndexedDB、网络发送、浏览器 API 在测试环境中通常需要 mock 或降级路径。
203
+