@ohos-cpf/3rdloop 0.0.2 → 0.0.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.
Files changed (393) hide show
  1. package/README.md +244 -244
  2. package/bin/3rdloop.mjs +46 -46
  3. package/lib/cli.js +781 -781
  4. package/lib/config-cmd.js +451 -451
  5. package/lib/config.js +318 -318
  6. package/lib/doctor.js +113 -113
  7. package/lib/exit-codes.js +30 -30
  8. package/lib/opencode.js +155 -155
  9. package/lib/orch.js +426 -426
  10. package/lib/queries.js +263 -263
  11. package/lib/step.js +325 -325
  12. package/lib/ui.js +222 -222
  13. package/lib/update.js +279 -279
  14. package/lib/workflow.js +308 -308
  15. package/lib/workflows.js +131 -131
  16. package/package.json +50 -50
  17. package/vendor/Server/Agent/SkillSelector/README.md +343 -343
  18. package/vendor/Server/Agent/SkillSelector/core/Agent.js +207 -207
  19. package/vendor/Server/Agent/SkillSelector/index.js +14 -14
  20. package/vendor/Server/Agent/SkillSelector/llm/llmClient.js +313 -313
  21. package/vendor/Server/Agent/SkillSelector/llm/prompts.js +161 -161
  22. package/vendor/Server/Agent/SkillSelector/llm/reactSteps.js +144 -144
  23. package/vendor/Server/Agent/SkillSelector/matcher/fuzzyMatcher.js +433 -433
  24. package/vendor/Server/Agent/SkillSelector/scanner/skillScanner.js +382 -382
  25. package/vendor/Server/Agent/SkillSelector/utils/actionWords.js +59 -59
  26. package/vendor/Server/Brain/AnalysisStrategies.js +422 -422
  27. package/vendor/Server/Brain/Brain.js +686 -686
  28. package/vendor/Server/Brain/DecompositionStrategies.js +621 -621
  29. package/vendor/Server/Brain/PlanPersistence.js +196 -196
  30. package/vendor/Server/Brain/SkillExecutor.js +251 -251
  31. package/vendor/Server/Brain/index.js +11 -11
  32. package/vendor/Server/CLI/cli.js +275 -275
  33. package/vendor/Server/CLI/deveco-code/index.js +71 -71
  34. package/vendor/Server/CLI/deveco-code.js +5 -5
  35. package/vendor/Server/CLI/opencode/index.js +817 -818
  36. package/vendor/Server/CLI/opencode.js +5 -5
  37. package/vendor/Server/DbUse/MessageArchive.js +61 -61
  38. package/vendor/Server/DbUse/StorageManager.js +107 -107
  39. package/vendor/Server/DbUse/adapters/BaseAdapter.js +94 -94
  40. package/vendor/Server/DbUse/adapters/FileAdapter.js +138 -138
  41. package/vendor/Server/DbUse/adapters/JsonAdapter.js +138 -138
  42. package/vendor/Server/DbUse/adapters/JsonlAdapter.js +114 -114
  43. package/vendor/Server/DbUse/adapters/SqliteAdapter.js +157 -157
  44. package/vendor/Server/DbUse/index.js +160 -160
  45. package/vendor/Server/DbUse/stores/SessionStore.js +279 -279
  46. package/vendor/Server/DbUse/stores/TaskExecutionStore.js +133 -133
  47. package/vendor/Server/DbUse/stores/TaskRegistryStore.js +262 -262
  48. package/vendor/Server/DbUse/stores/TaskStepStore.js +279 -279
  49. package/vendor/Server/FlexRunner/FlexRunner.js +1759 -1759
  50. package/vendor/Server/FlexRunner/index.js +12 -12
  51. package/vendor/Server/Knowledge/KnowledgeImporter.js +523 -523
  52. package/vendor/Server/Knowledge/KnowledgeManager.js +341 -341
  53. package/vendor/Server/Knowledge/index.js +33 -33
  54. package/vendor/Server/LoopEngine/LoopEngine.js +1133 -1133
  55. package/vendor/Server/LoopEngine/index.js +11 -11
  56. package/vendor/Server/Orchestrator/Orchestrator.js +0 -3
  57. package/vendor/Server/Orchestrator/StepNode.js +312 -312
  58. package/vendor/Server/Orchestrator/index.js +13 -13
  59. package/vendor/Server/Routes/controllers/BrainController.js +241 -241
  60. package/vendor/Server/Routes/controllers/FlexRunnerController.js +1125 -1125
  61. package/vendor/Server/Routes/controllers/HealthController.js +44 -44
  62. package/vendor/Server/Routes/controllers/KnowledgeImportController.js +355 -355
  63. package/vendor/Server/Routes/controllers/LoopEngineController.js +788 -788
  64. package/vendor/Server/Routes/controllers/StatsController.js +57 -57
  65. package/vendor/Server/Routes/controllers/StreamController.js +67 -67
  66. package/vendor/Server/Routes/library/logger.js +179 -179
  67. package/vendor/Server/Routes/library/zipArchive.js +172 -172
  68. package/vendor/Server/Routes/router/Router.js +204 -204
  69. package/vendor/Server/Routes/routes/brain.js +47 -47
  70. package/vendor/Server/Routes/routes/flexrunner.js +72 -72
  71. package/vendor/Server/Routes/routes/health.js +28 -28
  72. package/vendor/Server/Routes/routes/index.js +57 -57
  73. package/vendor/Server/Routes/routes/knowledge.js +55 -55
  74. package/vendor/Server/Routes/routes/loopengine.js +58 -58
  75. package/vendor/Server/Routes/routes/orchestrator.js +61 -61
  76. package/vendor/Server/Routes/routes/registry.js +97 -97
  77. package/vendor/Server/Routes/routes/stats.js +23 -23
  78. package/vendor/Server/Routes/routes/stream.js +30 -30
  79. package/vendor/Server/Routes/server.js +203 -203
  80. package/vendor/Server/Routes/sse/SseHub.js +308 -308
  81. package/vendor/Server/Skills/acceptance-check/SKILL.md +191 -191
  82. package/vendor/Server/Skills/acceptance-check/references/PHASE1_ARTIFACT_COLLECTION.md +52 -52
  83. package/vendor/Server/Skills/acceptance-check/references/PHASE2_CRITERIA_EVALUATION.md +77 -77
  84. package/vendor/Server/Skills/acceptance-check/references/PHASE2_EVIDENCE_VERIFICATION.md +70 -70
  85. package/vendor/Server/Skills/arkts-code-check/SKILL.md +320 -320
  86. package/vendor/Server/Skills/arkts-code-check/references/CODE_CHECK_GUIDE.md +210 -210
  87. package/vendor/Server/Skills/arkts-code-check/references/FILE_TYPE_GUIDE.md +28 -28
  88. package/vendor/Server/Skills/arkts-code-check/references/PHASE1_INFO_COLLECTION.md +233 -233
  89. package/vendor/Server/Skills/arkts-code-check/references/REPORT_TEMPLATE.md +219 -219
  90. package/vendor/Server/Skills/arkts-library-compile-validate/SKILL.md +328 -328
  91. package/vendor/Server/Skills/arkts-library-compile-validate/scripts/build.ps1 +93 -93
  92. package/vendor/Server/Skills/arkts-library-compile-validate/scripts/code-linter.cjs +432 -432
  93. package/vendor/Server/Skills/arkts-library-compile-validate/scripts/migrate.cjs +851 -851
  94. package/vendor/Server/Skills/arkts-library-compile-validate/scripts/ohpm-switch.cjs +788 -788
  95. package/vendor/Server/Skills/arkts-library-demo-code/SKILL.md +291 -291
  96. package/vendor/Server/Skills/arkts-library-demo-code/references/API_SIGNATURE_CHECKS.md +68 -68
  97. package/vendor/Server/Skills/arkts-library-demo-code/references/BUILD_VALIDATION.md +184 -184
  98. package/vendor/Server/Skills/arkts-library-demo-code/references/CODE_STANDARDS.md +337 -337
  99. package/vendor/Server/Skills/arkts-library-demo-code/references/EXAMPLES.md +400 -400
  100. package/vendor/Server/Skills/arkts-library-demo-code/references/SYSTEM_API_LOOKUP.md +98 -98
  101. package/vendor/Server/Skills/arkts-library-demo-code/references/TEMPLATE.md +544 -544
  102. package/vendor/Server/Skills/arkts-library-demo-code/scripts/build.ps1 +93 -93
  103. package/vendor/Server/Skills/arkts-library-demo-code/scripts/code-linter.cjs +432 -432
  104. package/vendor/Server/Skills/arkts-library-demo-code/scripts/migrate.cjs +851 -851
  105. package/vendor/Server/Skills/arkts-library-demo-code/scripts/ohpm-switch.cjs +788 -788
  106. package/vendor/Server/Skills/arkts-library-demo-coverage/SKILL.md +174 -174
  107. package/vendor/Server/Skills/arkts-library-demo-scenario/SKILL.md +321 -321
  108. package/vendor/Server/Skills/arkts-library-demo-scenario/references/EXAMPLES.md +100 -100
  109. package/vendor/Server/Skills/arkts-library-demo-scenario/references/TEMPLATE.md +185 -185
  110. package/vendor/Server/Skills/arkts-library-documentation-quality-check/SKILL.md +233 -233
  111. package/vendor/Server/Skills/arkts-library-documentation-quality-check/assets/REPORT_TEMPLATE.md +102 -102
  112. package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/CHECK_DIMENSIONS.md +89 -89
  113. package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/COMPLIANCE_CHECKLIST.md +62 -62
  114. package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/KB_QUERY_GUIDE.md +107 -107
  115. package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/MCP_TOOL_DISCOVERY.md +124 -124
  116. package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/REPORT_TEMPLATE.md +90 -90
  117. package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/SCORING_FORMULA.md +57 -57
  118. package/vendor/Server/Skills/arkts-library-documentation-quality-check/scripts/validate-skill.cjs +259 -259
  119. package/vendor/Server/Skills/arkts-library-interface-spec/SKILL.md +97 -97
  120. package/vendor/Server/Skills/arkts-library-memory-leak-check/SKILL.md +391 -391
  121. package/vendor/Server/Skills/arkts-library-source-clone/SKILL.md +113 -113
  122. package/vendor/Server/Skills/arkts-library-stability-check/SKILL.md +312 -312
  123. package/vendor/Server/Skills/arkts-library-stability-check/assets/REPORT_TEMPLATE.md +154 -154
  124. package/vendor/Server/Skills/arkts-library-stability-check/references/CHECKLIST.md +165 -165
  125. package/vendor/Server/Skills/arkts-library-stability-check/references/CODE_EXAMPLES.md +308 -308
  126. package/vendor/Server/Skills/arkts-library-stability-check/references/SCORING_RULES.md +90 -90
  127. package/vendor/Server/Skills/arkts-library-stability-check/scripts/validate-skill.cjs +282 -282
  128. package/vendor/Server/Skills/arkts-library-test-coverage-check/SKILL.md +360 -360
  129. package/vendor/Server/Skills/arkts-library-test-coverage-check/assets/REPORT_TEMPLATE.md +145 -145
  130. package/vendor/Server/Skills/arkts-library-test-coverage-check/references/CHECKLIST.md +252 -252
  131. package/vendor/Server/Skills/arkts-library-test-coverage-check/references/MCP_TOOL_USAGE.md +114 -114
  132. package/vendor/Server/Skills/arkts-library-test-coverage-check/scripts/validate-skill.cjs +262 -262
  133. package/vendor/Server/Skills/arkts-library-xts-code/SKILL.md +455 -455
  134. package/vendor/Server/Skills/arkts-library-xts-code/assets/report-template.md +60 -60
  135. package/vendor/Server/Skills/arkts-library-xts-code/references/ACCESS_MODIFIER_PRECHECK.md +76 -76
  136. package/vendor/Server/Skills/arkts-library-xts-code/references/BUILD_VERIFICATION.md +200 -200
  137. package/vendor/Server/Skills/arkts-library-xts-code/references/CODE_STANDARDS.md +518 -518
  138. package/vendor/Server/Skills/arkts-library-xts-code/references/SUBAGENT_PROMPT_TEMPLATE.md +276 -276
  139. package/vendor/Server/Skills/arkts-library-xts-code/references/SYSTEM_API_LOOKUP.md +92 -92
  140. package/vendor/Server/Skills/arkts-library-xts-code/references/XTS_TEMPLATE.md +767 -767
  141. package/vendor/Server/Skills/arkts-library-xts-code/scripts/build.ps1 +93 -93
  142. package/vendor/Server/Skills/arkts-library-xts-code/scripts/code-linter.cjs +432 -432
  143. package/vendor/Server/Skills/arkts-library-xts-code/scripts/migrate.cjs +851 -851
  144. package/vendor/Server/Skills/arkts-library-xts-code/scripts/ohpm-switch.cjs +788 -788
  145. package/vendor/Server/Skills/arkts-library-xts-code/scripts/precheck-access-modifiers.cjs +221 -221
  146. package/vendor/Server/Skills/arkts-library-xts-code-fix/SKILL.md +228 -228
  147. package/vendor/Server/Skills/arkts-library-xts-coverage/SKILL.md +97 -97
  148. package/vendor/Server/Skills/arkts-library-xts-doc/SKILL.md +194 -194
  149. package/vendor/Server/Skills/arkts-library-xts-doc/references/EXAMPLES.md +575 -575
  150. package/vendor/Server/Skills/arkts-library-xts-doc/references/TEMPLATE.md +574 -574
  151. package/vendor/Server/Skills/arkts-library-xts-doc/references/TESTABILITY_GUIDE.md +182 -182
  152. package/vendor/Server/Skills/arkts-library-xts-execution/SKILL.md +490 -490
  153. package/vendor/Server/Skills/arkts-library-xts-execution/references/error-fixing-examples.md +217 -217
  154. package/vendor/Server/Skills/arkts-library-xts-execution/scripts/build.ps1 +93 -93
  155. package/vendor/Server/Skills/arkts-library-xts-execution/scripts/code-linter.cjs +432 -432
  156. package/vendor/Server/Skills/arkts-library-xts-execution/scripts/migrate.cjs +851 -851
  157. package/vendor/Server/Skills/arkts-library-xts-execution/scripts/ohpm-switch.cjs +788 -788
  158. package/vendor/Server/Skills/flutter-code-check/SKILL.md +299 -299
  159. package/vendor/Server/Skills/flutter-code-check/assets/OUTPUT_TEMPLATE.md +311 -311
  160. package/vendor/Server/Skills/flutter-code-check/references/CHECKLIST.md +190 -190
  161. package/vendor/Server/Skills/flutter-code-check/references/PLATFORMS.md +133 -133
  162. package/vendor/Server/Skills/flutter-code-check/scripts/validate-skill.cjs +259 -259
  163. package/vendor/Server/Skills/flutter-interface/README.md +75 -75
  164. package/vendor/Server/Skills/flutter-interface/SKILL.md +291 -291
  165. package/vendor/Server/Skills/flutter-interface/references/EXAMPLES.md +336 -336
  166. package/vendor/Server/Skills/flutter-interface/references/GIT_CLONE_GUIDE.md +190 -190
  167. package/vendor/Server/Skills/flutter-interface/references/SCRIPT_REFERENCE.md +258 -258
  168. package/vendor/Server/Skills/flutter-interface/references/TEMPLATE.md +254 -254
  169. package/vendor/Server/Skills/flutter-library-consistency-check/SKILL.md +517 -517
  170. package/vendor/Server/Skills/flutter-library-consistency-check/references/CHECKLIST.md +381 -381
  171. package/vendor/Server/Skills/flutter-library-consistency-check/references/FUNCTION_COMPARISON_GUIDE.md +341 -341
  172. package/vendor/Server/Skills/flutter-library-consistency-check/references/PLATFORM_LIMITATION_GUIDE.md +71 -71
  173. package/vendor/Server/Skills/flutter-library-documentation-quality-check/SKILL.md +518 -518
  174. package/vendor/Server/Skills/flutter-library-documentation-quality-check/references/CHECKLIST.md +406 -406
  175. package/vendor/Server/Skills/flutter-library-memory-leak-check/SKILL.md +652 -652
  176. package/vendor/Server/Skills/flutter-library-memory-leak-check/references/CHECKLIST.md +396 -396
  177. package/vendor/Server/Skills/flutter-library-stability-check/SKILL.md +744 -744
  178. package/vendor/Server/Skills/flutter-library-stability-check/references/CHECKLIST.md +720 -720
  179. package/vendor/Server/Skills/flutter-library-test-coverage-check/SKILL.md +414 -414
  180. package/vendor/Server/Skills/flutter-library-test-coverage-check/assets/REPORT_TEMPLATE.md +150 -150
  181. package/vendor/Server/Skills/flutter-library-test-coverage-check/references/CHECKLIST.md +304 -304
  182. package/vendor/Server/Skills/flutter-library-test-coverage-check/references/SCORING_RULES.md +265 -265
  183. package/vendor/Server/Skills/flutter-library-test-coverage-check/references/SCRIPT_USAGE.md +286 -286
  184. package/vendor/Server/Skills/knowledge-import/SKILL.md +383 -383
  185. package/vendor/Server/Skills/knowledge-import/references/MCP_TOOL_USAGE.md +165 -165
  186. package/vendor/Server/Skills/knowledge-import/references/SKILL_LOCATOR_GUIDE.md +91 -91
  187. package/vendor/Server/Skills/knowledge-import/references/SKILL_OPTIMIZATION_GUIDE.md +127 -127
  188. package/vendor/Server/Skills/ohos-lib-pr-push/SKILL.md +453 -301
  189. package/vendor/Server/Skills/ohos-lib-pr-push/assets/PR_CHECKLIST.md +151 -0
  190. package/vendor/Server/Skills/ohos-lib-pr-push/assets/PR_ISSUE_TEMPLATE.md +257 -105
  191. package/vendor/Server/Skills/ohos-lib-pr-push/references/GITCODE_API.md +191 -127
  192. package/vendor/Server/Skills/ohos-lib-pr-push/scripts/gitcode-api.cjs +317 -208
  193. package/vendor/Server/Skills/rn-code-check/SKILL.md +320 -320
  194. package/vendor/Server/Skills/rn-code-check/references/API-GUIDE.md +234 -234
  195. package/vendor/Server/Skills/rn-code-check/references/CHECKLIST.md +188 -188
  196. package/vendor/Server/Skills/rn-code-check/references/REPORT-TEMPLATE.md +246 -246
  197. package/vendor/Server/Skills/rn-lib-add-example/SKILL.md +198 -198
  198. package/vendor/Server/Skills/rn-lib-add-example/references/APP_RENAME_GUIDE.md +40 -40
  199. package/vendor/Server/Skills/rn-lib-add-example/references/SHELL_ADAPTATION_CHECKLIST.md +78 -78
  200. package/vendor/Server/Skills/rn-lib-add-example/references/TEMPLATE_REPO_GUIDE.md +70 -70
  201. package/vendor/Server/Skills/rn-lib-add-example/references/VERIFICATION_GUIDE.md +47 -47
  202. package/vendor/Server/Skills/rn-lib-add-example/scripts/create-example.cjs +252 -252
  203. package/vendor/Server/Skills/rn-lib-update-doc/SKILL.md +176 -176
  204. package/vendor/Server/Skills/rn-lib-update-doc/config.json +5 -5
  205. package/vendor/Server/Skills/rn-lib-update-doc/references/changelog-template.md +35 -35
  206. package/vendor/Server/Skills/rn-lib-update-doc/references/format-diff.md +137 -137
  207. package/vendor/Server/Skills/rn-lib-update-doc/references/link-registry.json +33 -33
  208. package/vendor/Server/Skills/rn-lib-update-doc/references/model-0.4.2-overview.md +40 -40
  209. package/vendor/Server/Skills/rn-lib-update-doc/references/model-0.4.2.md +429 -429
  210. package/vendor/Server/Skills/rn-lib-update-doc/scripts/detect-readme-format.cjs +105 -105
  211. package/vendor/Server/Skills/rn-lib-update-doc/scripts/find-usage-doc.cjs +90 -90
  212. package/vendor/Server/Skills/rn-lib-update-doc/scripts/link-verify.cjs +213 -213
  213. package/vendor/Server/Skills/rn-lib-update-doc/scripts/normalize-changelog.cjs +73 -73
  214. package/vendor/Server/Skills/rn-lib-update-doc/scripts/normalize-package-meta.cjs +258 -258
  215. package/vendor/Server/Skills/rn-lib-update-doc/scripts/normalize-readme-links.cjs +341 -341
  216. package/vendor/Server/Skills/rn-lib-update-doc/scripts/resolve-usage-docs.cjs +67 -67
  217. package/vendor/Server/Skills/rn-library-consistency-check/SKILL.md +299 -299
  218. package/vendor/Server/Skills/rn-library-consistency-check/assets/REPORT_TEMPLATE.md +293 -293
  219. package/vendor/Server/Skills/rn-library-consistency-check/references/ARKTS_COMPONENT_CHECK_GUIDE.md +857 -857
  220. package/vendor/Server/Skills/rn-library-consistency-check/references/ARKTS_TURBOMODULE_CHECK_GUIDE.md +856 -856
  221. package/vendor/Server/Skills/rn-library-consistency-check/references/CHECKLIST.md +157 -157
  222. package/vendor/Server/Skills/rn-library-consistency-check/references/CPP_COMPONENT_CHECK_GUIDE.md +801 -801
  223. package/vendor/Server/Skills/rn-library-consistency-check/references/CPP_TURBOMODULE_CHECK_GUIDE.md +683 -683
  224. package/vendor/Server/Skills/rn-library-consistency-check/references/FUNCTION_COMPARISON_GUIDE.md +233 -233
  225. package/vendor/Server/Skills/rn-library-consistency-check/references/NATIVE_COMPONENT_IDENTIFICATION.md +1373 -1373
  226. package/vendor/Server/Skills/rn-library-consistency-check/references/SCORING_STANDARD.md +220 -220
  227. package/vendor/Server/Skills/rn-library-consistency-check/scripts/validate-skill.py +245 -245
  228. package/vendor/Server/Skills/rn-library-documentation-quality-check/SKILL.md +263 -263
  229. package/vendor/Server/Skills/rn-library-documentation-quality-check/assets/MODEL.md +414 -414
  230. package/vendor/Server/Skills/rn-library-documentation-quality-check/assets/MODEL_en.md +413 -413
  231. package/vendor/Server/Skills/rn-library-documentation-quality-check/assets/REPORT_TEMPLATE.md +311 -311
  232. package/vendor/Server/Skills/rn-library-documentation-quality-check/references/CHECK_CHECKLIST.md +355 -355
  233. package/vendor/Server/Skills/rn-library-documentation-quality-check/references/CROSS_VALIDATION_GUIDE.md +115 -115
  234. package/vendor/Server/Skills/rn-library-documentation-quality-check/references/DOC_COLLECTION_GUIDE.md +139 -139
  235. package/vendor/Server/Skills/rn-library-documentation-quality-check/references/EXAMPLES.md +586 -586
  236. package/vendor/Server/Skills/rn-library-documentation-quality-check/references/GOTCHAS.md +57 -57
  237. package/vendor/Server/Skills/rn-library-documentation-quality-check/scripts/validate-skill.py +259 -259
  238. package/vendor/Server/Skills/rn-library-interface-analyzer/SKILL.md +301 -301
  239. package/vendor/Server/Skills/rn-library-interface-analyzer/assets/REPORT_TEMPLATE.md +148 -148
  240. package/vendor/Server/Skills/rn-library-interface-analyzer/references/DOC_ANNOTATION_GUIDE.md +118 -118
  241. package/vendor/Server/Skills/rn-library-interface-analyzer/references/SCRIPT_USAGE_GUIDE.md +168 -168
  242. package/vendor/Server/Skills/rn-library-interface-analyzer/references/URL_PARSING_RULES.md +176 -176
  243. package/vendor/Server/Skills/rn-library-issue-generalizer/SKILL.md +274 -274
  244. package/vendor/Server/Skills/rn-library-issue-generalizer/assets/case-template.md +45 -45
  245. package/vendor/Server/Skills/rn-library-issue-generalizer/assets/rule-template.md +25 -25
  246. package/vendor/Server/Skills/rn-library-issue-generalizer/references/PR_FETCH_GUIDE.md +61 -61
  247. package/vendor/Server/Skills/rn-library-issue-generalizer/references/RULE_TEMPLATE_GUIDE.md +165 -165
  248. package/vendor/Server/Skills/rn-library-issue-generalizer/scripts/fetch-pr-info.py +239 -239
  249. package/vendor/Server/Skills/rn-library-known-issue-check/SKILL.md +263 -263
  250. package/vendor/Server/Skills/rn-library-known-issue-check/assets/REPORT_TEMPLATE.md +96 -96
  251. package/vendor/Server/Skills/rn-library-known-issue-check/references/COMPLIANCE_CHECKLIST.md +57 -57
  252. package/vendor/Server/Skills/rn-library-known-issue-check/references/INSPECTION_GUIDE.md +99 -99
  253. package/vendor/Server/Skills/rn-library-known-issue-check/references/PRESCREEN_GUIDE.md +64 -64
  254. package/vendor/Server/Skills/rn-library-known-issue-check/references/SOURCE_PREP_GUIDE.md +74 -74
  255. package/vendor/Server/Skills/rn-library-known-issue-check/scripts/validate-known-issue-report.py +164 -164
  256. package/vendor/Server/Skills/rn-library-memory-leak-check/SKILL.md +356 -339
  257. package/vendor/Server/Skills/rn-library-memory-leak-check/assets/REPORT_TEMPLATE.md +85 -83
  258. package/vendor/Server/Skills/rn-library-memory-leak-check/references/CHECKLIST.md +905 -859
  259. package/vendor/Server/Skills/rn-library-memory-leak-check/references/HARMONY_CODE_PATTERNS.md +124 -122
  260. package/vendor/Server/Skills/rn-library-memory-leak-check/scripts/scan_harmony_code.py +287 -279
  261. package/vendor/Server/Skills/rn-library-stability-check/SKILL.md +273 -273
  262. package/vendor/Server/Skills/rn-library-stability-check/assets/REPORT_TEMPLATE.md +129 -129
  263. package/vendor/Server/Skills/rn-library-stability-check/references/CHECKLIST.md +581 -581
  264. package/vendor/Server/Skills/rn-library-stability-check/references/SCORING_RULES.md +138 -138
  265. package/vendor/Server/Skills/rn-library-stability-check/scripts/scan-harmony-code.py +168 -168
  266. package/vendor/Server/Skills/rn-library-test-coverage-check/SKILL.md +526 -506
  267. package/vendor/Server/Skills/rn-library-test-coverage-check/references/CHECKLIST.md +321 -280
  268. package/vendor/Server/Skills/rn-library-test-coverage-check/references/DEMO_LOCATION.md +221 -221
  269. package/vendor/Server/Skills/rn-library-test-coverage-check/references/REPORT_TEMPLATE.md +220 -209
  270. package/vendor/Server/Skills/rn-library-test-coverage-check/references/SCRIPT_USAGE.md +325 -325
  271. package/vendor/Server/Skills/rn-ohos-xts-generator/SKILL.md +279 -279
  272. package/vendor/Server/Skills/rn-ohos-xts-generator/assets/TEST_FILE_TEMPLATES.md +404 -404
  273. package/vendor/Server/Skills/rn-ohos-xts-generator/references/BUILD_TROUBLESHOOTING.md +185 -185
  274. package/vendor/Server/Skills/rn-ohos-xts-generator/references/BUILD_WORKFLOW.md +265 -265
  275. package/vendor/Server/Skills/rn-ohos-xts-generator/references/COMMON_CONFIG.md +189 -189
  276. package/vendor/Server/Skills/rn-ohos-xts-generator/references/CONFIG_GUIDE.md +203 -203
  277. package/vendor/Server/Skills/rn-ohos-xts-generator/references/COVERAGE_ANALYZER.md +147 -147
  278. package/vendor/Server/Skills/rn-ohos-xts-generator/references/DESIGN_DOC_GUIDE.md +148 -148
  279. package/vendor/Server/Skills/rn-ohos-xts-generator/references/GENERATION_FLOW.md +165 -165
  280. package/vendor/Server/Skills/rn-ohos-xts-generator/references/GENERATION_STRATEGY.md +195 -195
  281. package/vendor/Server/Skills/rn-ohos-xts-generator/references/HARMONY_SCANNER.md +249 -249
  282. package/vendor/Server/Skills/rn-ohos-xts-generator/references/JEST_FRAMEWORK.md +235 -235
  283. package/vendor/Server/Skills/rn-ohos-xts-generator/references/PLATFORM_COMPAT.md +161 -161
  284. package/vendor/Server/Skills/rn-ohos-xts-generator/references/RN_TEST_PATTERNS.md +413 -413
  285. package/vendor/Server/Skills/rn-ohos-xts-generator/references/SOURCE_PARSER.md +235 -235
  286. package/vendor/Server/Skills/rn-ohos-xts-generator/references/TEST_CONVENTIONS.md +245 -245
  287. package/vendor/Server/Skills/rn-ohos-xts-generator/references/TROUBLESHOOTING.md +282 -282
  288. package/vendor/Server/Skills/rn-ohos-xts-generator/references/USAGE_GUIDE.md +251 -251
  289. package/vendor/Server/Skills/rnoh-cptf-api-test/SKILL.md +469 -469
  290. package/vendor/Server/Skills/rnoh-cptf-api-test/assets/CPTF_TEST_TEMPLATE.md +310 -310
  291. package/vendor/Server/Skills/rnoh-cptf-api-test/assets/DEMO_PAGE_TEMPLATE.md +303 -303
  292. package/vendor/Server/Skills/rnoh-cptf-api-test/references/CPTF_TEST_GENERATION_GUIDE.md +421 -421
  293. package/vendor/Server/Skills/rnoh-cptf-api-test/references/DEMO_GENERATION_GUIDE.md +358 -358
  294. package/vendor/Server/Skills/rnoh-cptf-api-test/references/QUALITY_CHECKLIST.md +114 -114
  295. package/vendor/Server/Skills/rnoh-cptf-api-test/references/SPEC_PARSING_GUIDE.md +274 -274
  296. package/vendor/Server/Skills/rnoh-cptf-api-test/scripts/validate-rnoh-cptf-api-test.sh +185 -185
  297. package/vendor/Server/Skills/rnoh-cptf-demo-test/SKILL.md +191 -191
  298. package/vendor/Server/Skills/rnoh-cptf-demo-test/assets/TEST_TEMPLATE.md +216 -216
  299. package/vendor/Server/Skills/rnoh-cptf-demo-test/references/CPTF_SETUP.md +107 -107
  300. package/vendor/Server/Skills/rnoh-cptf-demo-test/references/DEMO_ANALYSIS.md +120 -120
  301. package/vendor/Server/Skills/rnoh-cptf-demo-test/scripts/validate-rnoh-cptf-test.sh +108 -108
  302. package/vendor/Server/Skills/rnoh-cptf-test-run/SKILL.md +237 -237
  303. package/vendor/Server/Skills/rnoh-cptf-test-run/references/DEBUG_PLAYBOOK.md +261 -261
  304. package/vendor/Server/Skills/rnoh-cptf-test-run/scripts/validate-run-env.sh +112 -112
  305. package/vendor/Server/Skills/rnoh-lib-code-adapt/SKILL.md +497 -497
  306. package/vendor/Server/Skills/rnoh-lib-code-adapt/references/adapt-checklist.md +270 -270
  307. package/vendor/Server/Skills/rnoh-lib-code-adapt/references/api-migration-checklist.md +164 -164
  308. package/vendor/Server/Skills/rnoh-lib-code-adapt/references/common-compile-errors.md +556 -556
  309. package/vendor/Server/Skills/rnoh-lib-code-adapt/references/deveco-cli-tools.md +459 -459
  310. package/vendor/Server/Skills/rnoh-lib-code-adapt/references/edge-cases.md +65 -65
  311. package/vendor/Server/Skills/rnoh-lib-code-adapt/references/har-tgz-build.md +512 -512
  312. package/vendor/Server/Skills/rnoh-lib-code-adapt/references/version-compat-matrix.md +132 -132
  313. package/vendor/Server/Skills/rnoh-lib-code-adapt/scripts/auto-integrate.sh +424 -424
  314. package/vendor/Server/Skills/rnoh-lib-demo-coverage/SKILL.md +137 -137
  315. package/vendor/Server/Skills/rnoh-lib-demo-create/SKILL.md +306 -306
  316. package/vendor/Server/Skills/rnoh-lib-demo-create/assets/DEMO_PAGE_TEMPLATE.md +485 -485
  317. package/vendor/Server/Skills/rnoh-lib-demo-create/assets/INDEX_TEMPLATE.md +172 -172
  318. package/vendor/Server/Skills/rnoh-lib-demo-create/references/DEMO_CODE_RULES.md +422 -422
  319. package/vendor/Server/Skills/rnoh-lib-demo-create/references/QUALITY_CHECKLIST.md +95 -95
  320. package/vendor/Server/Skills/rnoh-lib-demo-create/references/SOURCE_EXPLORATION.md +169 -169
  321. package/vendor/Server/Skills/rnoh-lib-demo-doc/SKILL.md +554 -554
  322. package/vendor/Server/Skills/rnoh-lib-demo-doc/assets/DEMO_DOC_TEMPLATE.md +106 -106
  323. package/vendor/Server/Skills/rnoh-lib-demo-doc/references/COVERAGE_INCREMENTAL.md +216 -216
  324. package/vendor/Server/Skills/rnoh-lib-demo-doc/references/DEMO_DESIGN_RULES.md +413 -413
  325. package/vendor/Server/Skills/rnoh-lib-demo-doc/references/OUTPUT_FORMAT.md +269 -269
  326. package/vendor/Server/Skills/rnoh-lib-demo-doc/references/QUALITY_CHECKLIST.md +98 -98
  327. package/vendor/Server/Skills/rnoh-lib-func-test/SKILL.md +337 -337
  328. package/vendor/Server/Skills/rnoh-lib-rnt-search/SKILL.md +722 -722
  329. package/vendor/Server/Skills/rnoh-lib-rnt-search/assets/PORT_REPORT_TEMPLATE.md +219 -219
  330. package/vendor/Server/Skills/rnoh-lib-rnt-search/references/DEMO_PORTING_GUIDE.md +345 -345
  331. package/vendor/Server/Skills/rnoh-lib-rnt-search/references/PORT_VERIFICATION.md +269 -269
  332. package/vendor/Server/Skills/rnoh-lib-rnt-search/references/RNT_PROJECT_STRUCTURE.md +173 -173
  333. package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/analyze-demo-deps.cjs +267 -267
  334. package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/detect-rnoh-version.cjs +174 -174
  335. package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/find-rnt-demo.sh +111 -111
  336. package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/port-demo.sh +186 -186
  337. package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/read-lib-meta.cjs +150 -150
  338. package/vendor/Server/Skills/rnoh-lib-test-align/SKILL.md +296 -296
  339. package/vendor/Server/Skills/rnoh-lib-test-align/references/jest-troubleshooting.md +371 -371
  340. package/vendor/Server/Skills/rnoh-lib-test-align/references/port-test-demo-guide.md +212 -212
  341. package/vendor/Server/Skills/rnoh-lib-test-align/references/runtime-troubleshooting.md +345 -345
  342. package/vendor/Server/Skills/rnoh-lib-test-align/references/unit-test-template.md +223 -223
  343. package/vendor/Server/Skills/rnoh-lib-test-align/scripts/port-test-demo.sh +1053 -1053
  344. package/vendor/Server/Skills/rnoh-lib-version-diff/SKILL.md +295 -255
  345. package/vendor/Server/Skills/rnoh-lib-version-diff/references/OHOS_ADAPTATION.md +82 -77
  346. package/vendor/Server/Skills/rnoh-lib-version-diff/references/OHOS_API_LOOKUP.md +224 -224
  347. package/vendor/Server/Skills/rnoh-lib-version-diff/references/script-reference.md +175 -174
  348. package/vendor/Server/Skills/rnoh-lib-version-diff/scripts/detect-upstream-version.js +967 -967
  349. package/vendor/Server/Skills/rnoh-lib-version-diff/scripts/generate-diff.js +1798 -1798
  350. package/vendor/Server/Skills/rnoh-lib-version-diff/scripts/package.json +5 -5
  351. package/vendor/Server/Skills/rnoh-lib-version-diff/templates/report-template.md +180 -137
  352. package/vendor/Server/Skills/rnoh-lib-xts-coverage/SKILL.md +145 -145
  353. package/vendor/Server/Skills/skill-generator/SKILL.md +365 -365
  354. package/vendor/Server/Skills/skill-generator/assets/SKILL_TEMPLATE.md +183 -183
  355. package/vendor/Server/Skills/skill-generator/references/COMPLIANCE_CHECKLIST.md +82 -82
  356. package/vendor/Server/Skills/skill-generator/references/KB_QUERY_GUIDE.md +110 -110
  357. package/vendor/Server/Skills/skill-generator/references/MCP_TOOL_DISCOVERY.md +122 -122
  358. package/vendor/Server/Skills/skill-generator/references/SKILL_SPEC.md +121 -121
  359. package/vendor/Server/Skills/skill-generator/scripts/validate-skill.cjs +259 -259
  360. package/vendor/Server/Skills/task-analysis/SKILL.md +234 -234
  361. package/vendor/Server/Skills/task-analysis/assets/OUTPUT_EXAMPLES.md +160 -160
  362. package/vendor/Server/Skills/task-analysis/references/ACCEPTANCE_CRITERIA_GUIDE.md +190 -190
  363. package/vendor/Server/Skills/task-analysis/references/ANALYSIS_SCHEMA.md +224 -224
  364. package/vendor/Server/Skills/task-analysis/references/INTEGRATION_CONTEXT.md +162 -162
  365. package/vendor/Server/Skills/task-analysis/references/LESSONS_LEARNED.md +55 -55
  366. package/vendor/Server/Skills/task-analysis/references/REPLAN_CONTEXT_GUIDE.md +126 -126
  367. package/vendor/Server/Skills/task-analysis/scripts/validate-analysis-output.sh +256 -256
  368. package/vendor/Server/Skills/task-decomposition/SKILL.md +528 -528
  369. package/vendor/Server/Skills/task-decomposition/assets/OUTPUT_EXAMPLES.md +451 -451
  370. package/vendor/Server/Skills/task-decomposition/references/ACCEPTANCE_CRITERIA_GUIDE.md +179 -179
  371. package/vendor/Server/Skills/task-decomposition/references/DEPENDENCY_GRAPH_GUIDE.md +152 -152
  372. package/vendor/Server/Skills/task-decomposition/references/INTEGRATION_CONTEXT.md +175 -175
  373. package/vendor/Server/Skills/task-decomposition/references/REPLAN_CONTEXT_GUIDE.md +195 -195
  374. package/vendor/Server/Skills/task-decomposition/references/TASK_DECOMPOSITION_TEMPLATES.md +226 -226
  375. package/vendor/Server/Skills/task-decomposition/scripts/list-available-skills.cjs +263 -263
  376. package/vendor/Server/Skills/task-decomposition/scripts/skill-blacklist.json +29 -29
  377. package/vendor/Server/Skills/task-decomposition/scripts/validate-decomposition-output.cjs +376 -376
  378. package/vendor/Server/Skills/task-decomposition/scripts/validate-param-consistency.cjs +259 -259
  379. package/vendor/Server/Skills/task-decomposition/scripts/validate-specified-skills.cjs +216 -216
  380. package/vendor/Server/Skills/task-decomposition/scripts/validate-step-graph.cjs +424 -424
  381. package/vendor/Server/Skills/tpc-cpp-check/SKILL.md +427 -427
  382. package/vendor/Server/Skills/tpc-cpp-check/references/CHECKLIST.md +214 -214
  383. package/vendor/Server/Skills/tpc-cpp-check/references/HPKBUILD_GUIDE.md +235 -235
  384. package/vendor/Server/Skills/tpc-cpp-check/references/REPORT_TEMPLATE.md +250 -250
  385. package/vendor/Server/TestCheck/TestCheck.js +775 -775
  386. package/vendor/Server/TestCheck/index.js +11 -11
  387. package/vendor/Server/library/McpToolGuide.js +280 -280
  388. package/vendor/Server/library/StatsService.js +126 -126
  389. package/vendor/Server/library/cstTime.js +16 -16
  390. package/vendor/VERSION +3 -3
  391. package/workflows/pr-check.mjs +105 -105
  392. package/workflows/pr-push.mjs +192 -192
  393. package/vendor/Server/Agent/SkillSelector/types.js +0 -63
@@ -1,269 +1,269 @@
1
- # 迁移验证与边界情况
2
-
3
- > 本文档列出 demo 迁移的验证检查清单与常见边界情况的处理策略。
4
-
5
- ---
6
-
7
- ## 1. 迁移验证检查清单
8
-
9
- 迁移完成后,**逐项**确认以下检查通过。未通过项列入报告「待人工确认」。
10
-
11
- ### 1.1 文件完整性
12
-
13
- | # | 检查项 | 命令 | 通过标准 |
14
- |---|--------|------|---------|
15
- | 1.1.1 | demo 新增文件全部迁移 | `diff <(cd <demoPath> && find . -type f -not -path './node_modules/*' -not -path './build/*' | sort) <(cd <targetExampleSrc> && find . -type f -not -path './node_modules/*' -not -path './build/*' | sort)` | **本次新增文件**全部到位(冲突文件保留目标版本,不计入缺失) |
16
- | 1.1.2 | 入口文件存在 | `find <targetExampleSrc> -name "App.tsx" -o -name "index.tsx"` | 两个文件都存在(可在嵌套子目录中) |
17
- | 1.1.3 | testerino 注册存在 | `find <targetExampleSrc> -path "*/Test/index.tsx" -o -path "*/tests/index.tsx"` | 退出码 0(路径可为嵌套) |
18
- | 1.1.4 | 无排除项残留 | `ls <targetExampleSrc>/node_modules 2>/dev/null` | 无输出(应被排除) |
19
- | 1.1.5 | index.tsx 引用 demo 入口 | `grep -r "testCase/App\|demo/App\|./App" <targetExampleSrc>/index.tsx` | index.tsx 已接入 demo 入口(若为已有文件未接入,标注待人工确认) |
20
-
21
- ### 1.2 路径正确性
22
-
23
- | # | 检查项 | 命令 | 通过标准 |
24
- |---|--------|------|---------|
25
- | 1.2.1 | 子目录下无错误相对路径 | `grep -rn "from '\./" <targetExampleSrc>/testCase/Test/ <targetExampleSrc>/tests/` | 无同级引用应为 `../` 的情况 |
26
- | 1.2.2 | 所有 import 路径可解析 | 静态分析(Agent 读取每个 .tsx 文件) | 无 `Cannot find module` 风险 |
27
-
28
- ### 1.3 引用一致性
29
-
30
- | # | 检查项 | 命令 | 通过标准 |
31
- |---|--------|------|---------|
32
- | 1.3.1 | 目标库引用方式一致 | `grep -rn "import.*from.*'<alias>\|<packageName>'" <targetExampleSrc>/` | 引用方式统一(全部用 alias 或全部用 packageName),仅检查本次新增文件 |
33
- | 1.3.2 | displayName 存在 | `grep -rn "displayName" <targetExampleSrc>/` | 存在且与 demo 名称一致 |
34
- | 1.3.3 | 无硬编码其他库标题 | `grep -rn "RN.*Tester" <targetExampleSrc>/` | 本次新增文件无遗留的其他库名称(Phase 6.5 已修正);已有文件中的硬编码标题标注为待人工处理 |
35
-
36
- ### 1.4 依赖完整性
37
-
38
- | # | 检查项 | 方法 | 通过标准 |
39
- |---|--------|------|---------|
40
- | 1.4.1 | 所有外部依赖已列出 | 对比 `analyze-demo-deps.cjs` 输出与报告「依赖增量」章节 | 全部列出 |
41
- | 1.4.2 | 无未识别的 require | `grep -rn "require(" <targetExampleSrc>/` | 所有 require 参数是字符串字面量且已分类 |
42
- | 1.4.3 | **外部依赖已在 example/package.json 声明** | 对比 `externalDeps` 与 `example/package.json` 的 dependencies/devDependencies | 所有外部依赖已声明;未声明的在报告中标注为高优先级缺失项(Phase 4.1) |
43
-
44
- ### 1.5 Demo 可访问性
45
-
46
- | # | 检查项 | 方法 | 通过标准 |
47
- |---|--------|------|---------|
48
- | 1.5.1 | **无孤立文件** | 对比迁移文件列表与 `index.tsx` 的 `demos` 数组 | 所有有 `export` 的 `.tsx`/`.ts` 文件都被入口直接/间接引用(Phase 6.6) |
49
- | 1.5.2 | **菜单可滚动** | 检查 `demos` 条目数与菜单容器类型 | 条目 > 5 时菜单容器为 `<ScrollView>`(Phase 6.7) |
50
- | 1.5.3 | **原有 App.tsx 可访问** | 检查 `index.tsx` 是否包含原有 `App.tsx` 的菜单项 | 原有 demo 入口未丢失(Phase 6.8) |
51
- | 1.5.4 | **入口链路完整** | 追踪 `index.js` → `src/index.tsx` → `demos` → 各组件 → `./demo/` | 全链路可导入,无断裂(Phase 6.9) |
52
-
53
- ### 1.6 构建前置
54
-
55
- | # | 检查项 | 方法 | 通过标准 |
56
- |---|--------|------|---------|
57
- | 1.6.1 | **build-profile 无越界路径** | 检查 `modules[].srcPath` 是否以 `../` 开头 | 所有路径在 `example/harmony/` 工程内(Phase 5.1) |
58
- | 1.6.2 | **.har 文件路径有效** | 逐一 `ls -la` 验证 `oh-package.json5` 中的 `file:` 引用 | 所有 `.har` 文件存在于指定路径(Phase 5.2) |
59
-
60
- ### 1.7 版本一致性
61
-
62
- | # | 检查项 | 方法 | 通过标准 |
63
- |---|--------|------|---------|
64
- | 1.5.1 | 库与 rnt 版本一致 | `detect-rnoh-version.cjs` 输出对比 | 版本号相同 |
65
- | 1.5.2 | example/package.json 版本匹配 | 检查 react-native / react-native-harmony 版本 | 与目标 RNOH 版本一致 |
66
-
67
- ---
68
-
69
- ## 2. 边界情况与处理策略
70
-
71
- ### 2.1 目标 example/ 不存在
72
-
73
- **场景**:`libPath/example/` 目录不存在。
74
-
75
- **处理**:
76
- 1. 终止本 SKILL
77
- 2. 输出提示:「目标 RN 工程 `example/` 目录不存在,请先执行 `rn-lib-add-example` 创建模板」
78
- 3. 在报告中记录阻塞原因
79
-
80
- > 本 SKILL 不创建 example 模板,职责边界清晰。
81
-
82
- ### 2.2 rnt 工程无 rn-tester/examples/
83
-
84
- **场景**:`{rnt-root}/*/rn-tester/examples/` 路径不存在。
85
-
86
- **处理**:
87
- 1. 检查 rnt 根路径是否正确
88
- 2. 列出 `{rnt-root}` 下的子目录,提示用户确认 rnt 根路径
89
- 3. 询问是否换一个 rnt 工程根路径
90
-
91
- ### 2.3 demo 与已有 example/src 内容冲突
92
-
93
- **场景**:迁移时发现 `targetExampleSrc` 已有同名文件。
94
-
95
- **处理**:
96
- - **默认(无 --clean)**:**增量添加,不覆盖**。列出冲突文件清单,**保留目标版本**,demo 版本不写入(`rsync --ignore-existing`),在报告中标注冲突项供人工确认是否合并
97
- - **--clean 启用**:直接清空目标,但**必须**用户明确同意
98
-
99
- **通用组件保留**:
100
- - `components/Navigation.tsx` 等 example 模板通用组件,若 demo 仍引用,**保留**
101
- - 脚本默认 `--clean` 时不清除 `components/Navigation.tsx`,可通过 `--clean-all` 强制全清
102
-
103
- **冲突文件后续处理**:
104
- - Agent 在报告中列出冲突文件清单
105
- - 询问用户是否需要手动合并(demo 版本 vs 目标版本的差异)
106
- - 若用户不需要合并,保持目标版本即可
107
-
108
- ### 2.4 demo 引用目标库内部路径
109
-
110
- **场景**:demo 中出现 `import { X } from 'react-native-camera-kit/src/internal'`。
111
-
112
- **处理**:
113
- 1. 列入报告「待人工确认」清单
114
- 2. 不自动改写(内部路径可能依赖库源码结构)
115
- 3. 提示用户:可能需要调整 demo 改用公开导出,或调整 example 配置
116
-
117
- ### 2.5 demo 含原生代码
118
-
119
- **场景**:demo 目录含 `.ets` / `.cpp` / `.h` 文件。
120
-
121
- **处理**:
122
- 1. JS/TS 文件正常迁移到 `example/src/`
123
- 2. 原生文件**不迁移**到 `example/src/`(应放到 `example/harmony/` 下,由 `rn-lib-add-example` 壳层适配处理)
124
- 3. 在报告中标注:「demo 含原生代码 <文件列表>,需由 `rn-lib-add-example` 处理壳层适配」
125
-
126
- ### 2.6 rnt 工程路径跨盘/网络挂载
127
-
128
- **场景**:rnt 工程在 NFS / SMB / iCloud 等网络挂载盘上,`rsync` / `find` 较慢。
129
-
130
- **处理**:
131
- 1. 检测路径是否为网络挂载(`mount | grep <rntPath>`)
132
- 2. 若是,提示用户:「rnt 工程在网络挂载盘上,扫描/迁移可能较慢,建议本地拷贝后执行」
133
- 3. 不强制终止,由用户决定
134
-
135
- ### 2.7 候选名匹配到多个不同库
136
-
137
- **场景**:`searchNames` 中的短名匹配到多个不同库的 demo(如 `react-native-svg` 匹配 `react-native-svg-uri`、`react-native-svg-transformer`)。
138
-
139
- **处理**:
140
- 1. `find-rnt-demo.sh` 退出码 2(多个命中)
141
- 2. 列出所有命中路径与对应的库候选名
142
- 3. 自动选择第一个命中项,在报告中标注全部命中路径
143
- 4. 用户可通过 `--demo-path` 参数指定其他 demo
144
-
145
- ### 2.8 demo 入口文件缺失
146
-
147
- **场景**:demo 目录无 `App.tsx` 或 `index.tsx`。
148
-
149
- **处理**:
150
- 1. 检查是否有其他入口文件(`Main.tsx`、`Demo.tsx`、`index.js`)
151
- 2. 若有,在报告中标注实际入口文件
152
- 3. 若无任何入口文件,列入「待人工确认」,提示用户检查 demo 完整性
153
-
154
- ### 2.9 demo 引用 rnt 工程特有的全局变量/组件
155
-
156
- **场景**:demo 中引用了 rnt 工程全局注入的组件(如 `__rntTesterGlobals`、特殊的 `Navigation`)。
157
-
158
- **处理**:
159
- 1. 通过 `analyze-demo-deps.cjs` 的 `libReferences` 分析识别非标准引用
160
- 2. 列入报告「待人工确认」
161
- 3. 提示用户:可能需要移除或替换为 example 工程的等价物
162
-
163
- ### 2.10 大量 demo 文件导致迁移耗时
164
-
165
- **场景**:demo 文件数 > 100,`rsync` 耗时较长。
166
-
167
- **处理**:
168
- 1. 报告文件数与预估耗时
169
- 2. 正常执行(`rsync` 通常足够快,秒级完成)
170
- 3. 若超过 30 秒,检查是否有意外的大文件或排除项失效
171
-
172
- ### 2.11 demo 引用 rnt 特有外部依赖(如 @rnoh/testerino)
173
-
174
- **场景**:demo 引用了 `@rnoh/testerino` 等 rnt 工程特有的包,但 `example/package.json` 未声明。
175
-
176
- **影响**:所有使用该依赖的组件(如 `Tester`、`TestCase`、`TestSuite`)运行时崩溃,白屏。
177
-
178
- **处理**:
179
- 1. Phase 4.1 检测到缺失依赖后,从 rnt 工程的 `package.json` 中提取版本与引用方式
180
- 2. 将 rnt 工程中的 tgz 文件复制到 example 目录
181
- 3. 在报告依赖增量清单中给出建议写入值(如 `"@rnoh/testerino": "file:./rnoh-testerino-0.0.12.tgz"`)
182
- 4. 由 `rn-lib-add-example` 或 Agent 写入 `example/package.json`
183
-
184
- ### 2.12 build-profile.json5 模块路径越界
185
-
186
- **场景**:`build-profile.json5` 中 `modules[].srcPath` 为 `../../harmony/safe_area` 等越界路径。
187
-
188
- **影响**:hvigor 报错 `Path escapes project root`,编译失败。
189
-
190
- **处理**:
191
- 1. Phase 5.1 检测到越界路径
192
- 2. 物理复制模块目录到 `example/harmony/` 下
193
- 3. 修改 `srcPath` 为工程内路径(如 `./safe_area`)
194
- 4. 同步修正被复制模块的 `oh-package.json5` 中的 `.har` 路径
195
- 5. ⚠️ 符号链接不可行(hvigor 不跟随 symlink)
196
-
197
- ### 2.13 oh-package.json5 中 .har 路径错误
198
-
199
- **场景**:模块的 `oh-package.json5` 中 `file:` 引用的 `.har` 路径多/少一层子目录。
200
-
201
- **影响**:`ohpm install` 静默跳过该依赖,编译时报 `Cannot find module`。
202
-
203
- **处理**:
204
- 1. Phase 5.2 逐一验证 `.har` 文件存在性
205
- 2. 修正 `oh-package.json5` 中的路径,使其指向实际 `.har` 文件位置
206
-
207
- ### 2.14 迁移的独立 demo 文件未被入口引用
208
-
209
- **场景**:`demo03.tsx`、`demo05.tsx` 等文件已迁移到 `example/src/`,但未被 `index.tsx` 的 `demos` 数组引用。
210
-
211
- **影响**:用户无法通过菜单导航访问这些 demo,文件虽存在但运行时不加载。
212
-
213
- **处理**:
214
- 1. Phase 6.6 检测孤立文件
215
- 2. 将组件加入 `demos` 数组,确保用户可导航到
216
-
217
- ### 2.15 菜单条目过多无法滚动
218
-
219
- **场景**:`demos` 数组条目 > 5,菜单容器为 `<View>`(不支持滚动)。
220
-
221
- **影响**:底部 demo 条目不可见、不可点击,用户无法访问。
222
-
223
- **处理**:
224
- 1. Phase 6.7 检测条目数与容器类型
225
- 2. 将 `<View>` 改为 `<ScrollView>`
226
-
227
- ### 2.16 替换入口丢失原有 App.tsx demo
228
-
229
- **场景**:`index.js` 从 `./src/App` 改为 `./src/index` 后,原有 `App.tsx` 的 demo 不可访问。
230
-
231
- **影响**:原有 demo(如 SafeAreaView、Hooks、Listener 等)完全丢失。
232
-
233
- **处理**:
234
- 1. Phase 6.8 检查原有 `App.tsx` 是否仍可访问
235
- 2. 将原有 `App.tsx` 作为菜单项接入 `index.tsx` 的 `demos` 数组
236
-
237
- ---
238
-
239
- ## 3. 验证失败处理
240
-
241
- | 失败项 | 处理 |
242
- |--------|------|
243
- | 文件完整性失败 | 重新执行 `port-demo.sh`,检查排除项配置(冲突文件保留目标版本属正常,不计入失败) |
244
- | 路径错误 | Agent 用 `Edit` 工具逐个修正(仅本次新增文件) |
245
- | 引用不一致 | 在报告中标注,由 `rn-lib-add-example` 配置 alias 时统一 |
246
- | 依赖未列出 | 重新运行 `analyze-demo-deps.cjs`,检查 demo 新增的 import |
247
- | displayName 冲突 | 询问用户保留哪个 |
248
- | 冲突文件需合并 | 列出 demo 版本与目标版本差异,由用户决策是否手动合并 |
249
-
250
- ---
251
-
252
- ## 4. 报告必含字段
253
-
254
- 迁移报告**必须**包含以下字段,缺失则视为迁移未完成:
255
-
256
- | 字段 | 说明 |
257
- |------|------|
258
- | demo 来源路径 | rnt 工程路径 + demo 子目录 |
259
- | 命中候选名 | `searchNames` 中实际匹配到的名称 |
260
- | 迁移文件清单 | 相对路径列表 + 文件总数(区分「本次新增」与「冲突保留」) |
261
- | 冲突文件清单 | demo 与目标同名文件列表,标注「目标版本已保留,demo 版本未写入」 |
262
- | 依赖增量清单 | 分类列表(目标库 / RNOH / RN 通用 / 待确认);**标注 example/package.json 中缺失的依赖及建议写入值** |
263
- | 路径修正记录 | 修正的文件 + 改动内容(仅本次新增文件) |
264
- | 入口文件信息 | App.tsx / index.tsx 路径 + displayName |
265
- | **构建前置检查结果** | build-profile 路径越界检查、.har 路径验证、外部依赖缺失清单、入口链路验证结果 |
266
- | **Demo 可访问性验证** | 孤立文件检测、菜单 ScrollView 适配、原有 App.tsx 保留、入口链路端到端验证 |
267
- | 待人工确认项 | 业务无关依赖、冲突文件合并、入口文件接入、原生代码、特殊引用 |
268
- | 验证检查结果 | 1.1-1.6 各项通过/失败状态 |
269
- | 后续步骤建议 | 引导执行 `rn-lib-add-example` 完成壳层适配;执行 `npm i` → `ohpm install` → `npm run dev` → `devecocli build` 编译验证 |
1
+ # 迁移验证与边界情况
2
+
3
+ > 本文档列出 demo 迁移的验证检查清单与常见边界情况的处理策略。
4
+
5
+ ---
6
+
7
+ ## 1. 迁移验证检查清单
8
+
9
+ 迁移完成后,**逐项**确认以下检查通过。未通过项列入报告「待人工确认」。
10
+
11
+ ### 1.1 文件完整性
12
+
13
+ | # | 检查项 | 命令 | 通过标准 |
14
+ |---|--------|------|---------|
15
+ | 1.1.1 | demo 新增文件全部迁移 | `diff <(cd <demoPath> && find . -type f -not -path './node_modules/*' -not -path './build/*' | sort) <(cd <targetExampleSrc> && find . -type f -not -path './node_modules/*' -not -path './build/*' | sort)` | **本次新增文件**全部到位(冲突文件保留目标版本,不计入缺失) |
16
+ | 1.1.2 | 入口文件存在 | `find <targetExampleSrc> -name "App.tsx" -o -name "index.tsx"` | 两个文件都存在(可在嵌套子目录中) |
17
+ | 1.1.3 | testerino 注册存在 | `find <targetExampleSrc> -path "*/Test/index.tsx" -o -path "*/tests/index.tsx"` | 退出码 0(路径可为嵌套) |
18
+ | 1.1.4 | 无排除项残留 | `ls <targetExampleSrc>/node_modules 2>/dev/null` | 无输出(应被排除) |
19
+ | 1.1.5 | index.tsx 引用 demo 入口 | `grep -r "testCase/App\|demo/App\|./App" <targetExampleSrc>/index.tsx` | index.tsx 已接入 demo 入口(若为已有文件未接入,标注待人工确认) |
20
+
21
+ ### 1.2 路径正确性
22
+
23
+ | # | 检查项 | 命令 | 通过标准 |
24
+ |---|--------|------|---------|
25
+ | 1.2.1 | 子目录下无错误相对路径 | `grep -rn "from '\./" <targetExampleSrc>/testCase/Test/ <targetExampleSrc>/tests/` | 无同级引用应为 `../` 的情况 |
26
+ | 1.2.2 | 所有 import 路径可解析 | 静态分析(Agent 读取每个 .tsx 文件) | 无 `Cannot find module` 风险 |
27
+
28
+ ### 1.3 引用一致性
29
+
30
+ | # | 检查项 | 命令 | 通过标准 |
31
+ |---|--------|------|---------|
32
+ | 1.3.1 | 目标库引用方式一致 | `grep -rn "import.*from.*'<alias>\|<packageName>'" <targetExampleSrc>/` | 引用方式统一(全部用 alias 或全部用 packageName),仅检查本次新增文件 |
33
+ | 1.3.2 | displayName 存在 | `grep -rn "displayName" <targetExampleSrc>/` | 存在且与 demo 名称一致 |
34
+ | 1.3.3 | 无硬编码其他库标题 | `grep -rn "RN.*Tester" <targetExampleSrc>/` | 本次新增文件无遗留的其他库名称(Phase 6.5 已修正);已有文件中的硬编码标题标注为待人工处理 |
35
+
36
+ ### 1.4 依赖完整性
37
+
38
+ | # | 检查项 | 方法 | 通过标准 |
39
+ |---|--------|------|---------|
40
+ | 1.4.1 | 所有外部依赖已列出 | 对比 `analyze-demo-deps.cjs` 输出与报告「依赖增量」章节 | 全部列出 |
41
+ | 1.4.2 | 无未识别的 require | `grep -rn "require(" <targetExampleSrc>/` | 所有 require 参数是字符串字面量且已分类 |
42
+ | 1.4.3 | **外部依赖已在 example/package.json 声明** | 对比 `externalDeps` 与 `example/package.json` 的 dependencies/devDependencies | 所有外部依赖已声明;未声明的在报告中标注为高优先级缺失项(Phase 4.1) |
43
+
44
+ ### 1.5 Demo 可访问性
45
+
46
+ | # | 检查项 | 方法 | 通过标准 |
47
+ |---|--------|------|---------|
48
+ | 1.5.1 | **无孤立文件** | 对比迁移文件列表与 `index.tsx` 的 `demos` 数组 | 所有有 `export` 的 `.tsx`/`.ts` 文件都被入口直接/间接引用(Phase 6.6) |
49
+ | 1.5.2 | **菜单可滚动** | 检查 `demos` 条目数与菜单容器类型 | 条目 > 5 时菜单容器为 `<ScrollView>`(Phase 6.7) |
50
+ | 1.5.3 | **原有 App.tsx 可访问** | 检查 `index.tsx` 是否包含原有 `App.tsx` 的菜单项 | 原有 demo 入口未丢失(Phase 6.8) |
51
+ | 1.5.4 | **入口链路完整** | 追踪 `index.js` → `src/index.tsx` → `demos` → 各组件 → `./demo/` | 全链路可导入,无断裂(Phase 6.9) |
52
+
53
+ ### 1.6 构建前置
54
+
55
+ | # | 检查项 | 方法 | 通过标准 |
56
+ |---|--------|------|---------|
57
+ | 1.6.1 | **build-profile 无越界路径** | 检查 `modules[].srcPath` 是否以 `../` 开头 | 所有路径在 `example/harmony/` 工程内(Phase 5.1) |
58
+ | 1.6.2 | **.har 文件路径有效** | 逐一 `ls -la` 验证 `oh-package.json5` 中的 `file:` 引用 | 所有 `.har` 文件存在于指定路径(Phase 5.2) |
59
+
60
+ ### 1.7 版本一致性
61
+
62
+ | # | 检查项 | 方法 | 通过标准 |
63
+ |---|--------|------|---------|
64
+ | 1.5.1 | 库与 rnt 版本一致 | `detect-rnoh-version.cjs` 输出对比 | 版本号相同 |
65
+ | 1.5.2 | example/package.json 版本匹配 | 检查 react-native / react-native-harmony 版本 | 与目标 RNOH 版本一致 |
66
+
67
+ ---
68
+
69
+ ## 2. 边界情况与处理策略
70
+
71
+ ### 2.1 目标 example/ 不存在
72
+
73
+ **场景**:`libPath/example/` 目录不存在。
74
+
75
+ **处理**:
76
+ 1. 终止本 SKILL
77
+ 2. 输出提示:「目标 RN 工程 `example/` 目录不存在,请先执行 `rn-lib-add-example` 创建模板」
78
+ 3. 在报告中记录阻塞原因
79
+
80
+ > 本 SKILL 不创建 example 模板,职责边界清晰。
81
+
82
+ ### 2.2 rnt 工程无 rn-tester/examples/
83
+
84
+ **场景**:`{rnt-root}/*/rn-tester/examples/` 路径不存在。
85
+
86
+ **处理**:
87
+ 1. 检查 rnt 根路径是否正确
88
+ 2. 列出 `{rnt-root}` 下的子目录,提示用户确认 rnt 根路径
89
+ 3. 询问是否换一个 rnt 工程根路径
90
+
91
+ ### 2.3 demo 与已有 example/src 内容冲突
92
+
93
+ **场景**:迁移时发现 `targetExampleSrc` 已有同名文件。
94
+
95
+ **处理**:
96
+ - **默认(无 --clean)**:**增量添加,不覆盖**。列出冲突文件清单,**保留目标版本**,demo 版本不写入(`rsync --ignore-existing`),在报告中标注冲突项供人工确认是否合并
97
+ - **--clean 启用**:直接清空目标,但**必须**用户明确同意
98
+
99
+ **通用组件保留**:
100
+ - `components/Navigation.tsx` 等 example 模板通用组件,若 demo 仍引用,**保留**
101
+ - 脚本默认 `--clean` 时不清除 `components/Navigation.tsx`,可通过 `--clean-all` 强制全清
102
+
103
+ **冲突文件后续处理**:
104
+ - Agent 在报告中列出冲突文件清单
105
+ - 询问用户是否需要手动合并(demo 版本 vs 目标版本的差异)
106
+ - 若用户不需要合并,保持目标版本即可
107
+
108
+ ### 2.4 demo 引用目标库内部路径
109
+
110
+ **场景**:demo 中出现 `import { X } from 'react-native-camera-kit/src/internal'`。
111
+
112
+ **处理**:
113
+ 1. 列入报告「待人工确认」清单
114
+ 2. 不自动改写(内部路径可能依赖库源码结构)
115
+ 3. 提示用户:可能需要调整 demo 改用公开导出,或调整 example 配置
116
+
117
+ ### 2.5 demo 含原生代码
118
+
119
+ **场景**:demo 目录含 `.ets` / `.cpp` / `.h` 文件。
120
+
121
+ **处理**:
122
+ 1. JS/TS 文件正常迁移到 `example/src/`
123
+ 2. 原生文件**不迁移**到 `example/src/`(应放到 `example/harmony/` 下,由 `rn-lib-add-example` 壳层适配处理)
124
+ 3. 在报告中标注:「demo 含原生代码 <文件列表>,需由 `rn-lib-add-example` 处理壳层适配」
125
+
126
+ ### 2.6 rnt 工程路径跨盘/网络挂载
127
+
128
+ **场景**:rnt 工程在 NFS / SMB / iCloud 等网络挂载盘上,`rsync` / `find` 较慢。
129
+
130
+ **处理**:
131
+ 1. 检测路径是否为网络挂载(`mount | grep <rntPath>`)
132
+ 2. 若是,提示用户:「rnt 工程在网络挂载盘上,扫描/迁移可能较慢,建议本地拷贝后执行」
133
+ 3. 不强制终止,由用户决定
134
+
135
+ ### 2.7 候选名匹配到多个不同库
136
+
137
+ **场景**:`searchNames` 中的短名匹配到多个不同库的 demo(如 `react-native-svg` 匹配 `react-native-svg-uri`、`react-native-svg-transformer`)。
138
+
139
+ **处理**:
140
+ 1. `find-rnt-demo.sh` 退出码 2(多个命中)
141
+ 2. 列出所有命中路径与对应的库候选名
142
+ 3. 自动选择第一个命中项,在报告中标注全部命中路径
143
+ 4. 用户可通过 `--demo-path` 参数指定其他 demo
144
+
145
+ ### 2.8 demo 入口文件缺失
146
+
147
+ **场景**:demo 目录无 `App.tsx` 或 `index.tsx`。
148
+
149
+ **处理**:
150
+ 1. 检查是否有其他入口文件(`Main.tsx`、`Demo.tsx`、`index.js`)
151
+ 2. 若有,在报告中标注实际入口文件
152
+ 3. 若无任何入口文件,列入「待人工确认」,提示用户检查 demo 完整性
153
+
154
+ ### 2.9 demo 引用 rnt 工程特有的全局变量/组件
155
+
156
+ **场景**:demo 中引用了 rnt 工程全局注入的组件(如 `__rntTesterGlobals`、特殊的 `Navigation`)。
157
+
158
+ **处理**:
159
+ 1. 通过 `analyze-demo-deps.cjs` 的 `libReferences` 分析识别非标准引用
160
+ 2. 列入报告「待人工确认」
161
+ 3. 提示用户:可能需要移除或替换为 example 工程的等价物
162
+
163
+ ### 2.10 大量 demo 文件导致迁移耗时
164
+
165
+ **场景**:demo 文件数 > 100,`rsync` 耗时较长。
166
+
167
+ **处理**:
168
+ 1. 报告文件数与预估耗时
169
+ 2. 正常执行(`rsync` 通常足够快,秒级完成)
170
+ 3. 若超过 30 秒,检查是否有意外的大文件或排除项失效
171
+
172
+ ### 2.11 demo 引用 rnt 特有外部依赖(如 @rnoh/testerino)
173
+
174
+ **场景**:demo 引用了 `@rnoh/testerino` 等 rnt 工程特有的包,但 `example/package.json` 未声明。
175
+
176
+ **影响**:所有使用该依赖的组件(如 `Tester`、`TestCase`、`TestSuite`)运行时崩溃,白屏。
177
+
178
+ **处理**:
179
+ 1. Phase 4.1 检测到缺失依赖后,从 rnt 工程的 `package.json` 中提取版本与引用方式
180
+ 2. 将 rnt 工程中的 tgz 文件复制到 example 目录
181
+ 3. 在报告依赖增量清单中给出建议写入值(如 `"@rnoh/testerino": "file:./rnoh-testerino-0.0.12.tgz"`)
182
+ 4. 由 `rn-lib-add-example` 或 Agent 写入 `example/package.json`
183
+
184
+ ### 2.12 build-profile.json5 模块路径越界
185
+
186
+ **场景**:`build-profile.json5` 中 `modules[].srcPath` 为 `../../harmony/safe_area` 等越界路径。
187
+
188
+ **影响**:hvigor 报错 `Path escapes project root`,编译失败。
189
+
190
+ **处理**:
191
+ 1. Phase 5.1 检测到越界路径
192
+ 2. 物理复制模块目录到 `example/harmony/` 下
193
+ 3. 修改 `srcPath` 为工程内路径(如 `./safe_area`)
194
+ 4. 同步修正被复制模块的 `oh-package.json5` 中的 `.har` 路径
195
+ 5. ⚠️ 符号链接不可行(hvigor 不跟随 symlink)
196
+
197
+ ### 2.13 oh-package.json5 中 .har 路径错误
198
+
199
+ **场景**:模块的 `oh-package.json5` 中 `file:` 引用的 `.har` 路径多/少一层子目录。
200
+
201
+ **影响**:`ohpm install` 静默跳过该依赖,编译时报 `Cannot find module`。
202
+
203
+ **处理**:
204
+ 1. Phase 5.2 逐一验证 `.har` 文件存在性
205
+ 2. 修正 `oh-package.json5` 中的路径,使其指向实际 `.har` 文件位置
206
+
207
+ ### 2.14 迁移的独立 demo 文件未被入口引用
208
+
209
+ **场景**:`demo03.tsx`、`demo05.tsx` 等文件已迁移到 `example/src/`,但未被 `index.tsx` 的 `demos` 数组引用。
210
+
211
+ **影响**:用户无法通过菜单导航访问这些 demo,文件虽存在但运行时不加载。
212
+
213
+ **处理**:
214
+ 1. Phase 6.6 检测孤立文件
215
+ 2. 将组件加入 `demos` 数组,确保用户可导航到
216
+
217
+ ### 2.15 菜单条目过多无法滚动
218
+
219
+ **场景**:`demos` 数组条目 > 5,菜单容器为 `<View>`(不支持滚动)。
220
+
221
+ **影响**:底部 demo 条目不可见、不可点击,用户无法访问。
222
+
223
+ **处理**:
224
+ 1. Phase 6.7 检测条目数与容器类型
225
+ 2. 将 `<View>` 改为 `<ScrollView>`
226
+
227
+ ### 2.16 替换入口丢失原有 App.tsx demo
228
+
229
+ **场景**:`index.js` 从 `./src/App` 改为 `./src/index` 后,原有 `App.tsx` 的 demo 不可访问。
230
+
231
+ **影响**:原有 demo(如 SafeAreaView、Hooks、Listener 等)完全丢失。
232
+
233
+ **处理**:
234
+ 1. Phase 6.8 检查原有 `App.tsx` 是否仍可访问
235
+ 2. 将原有 `App.tsx` 作为菜单项接入 `index.tsx` 的 `demos` 数组
236
+
237
+ ---
238
+
239
+ ## 3. 验证失败处理
240
+
241
+ | 失败项 | 处理 |
242
+ |--------|------|
243
+ | 文件完整性失败 | 重新执行 `port-demo.sh`,检查排除项配置(冲突文件保留目标版本属正常,不计入失败) |
244
+ | 路径错误 | Agent 用 `Edit` 工具逐个修正(仅本次新增文件) |
245
+ | 引用不一致 | 在报告中标注,由 `rn-lib-add-example` 配置 alias 时统一 |
246
+ | 依赖未列出 | 重新运行 `analyze-demo-deps.cjs`,检查 demo 新增的 import |
247
+ | displayName 冲突 | 询问用户保留哪个 |
248
+ | 冲突文件需合并 | 列出 demo 版本与目标版本差异,由用户决策是否手动合并 |
249
+
250
+ ---
251
+
252
+ ## 4. 报告必含字段
253
+
254
+ 迁移报告**必须**包含以下字段,缺失则视为迁移未完成:
255
+
256
+ | 字段 | 说明 |
257
+ |------|------|
258
+ | demo 来源路径 | rnt 工程路径 + demo 子目录 |
259
+ | 命中候选名 | `searchNames` 中实际匹配到的名称 |
260
+ | 迁移文件清单 | 相对路径列表 + 文件总数(区分「本次新增」与「冲突保留」) |
261
+ | 冲突文件清单 | demo 与目标同名文件列表,标注「目标版本已保留,demo 版本未写入」 |
262
+ | 依赖增量清单 | 分类列表(目标库 / RNOH / RN 通用 / 待确认);**标注 example/package.json 中缺失的依赖及建议写入值** |
263
+ | 路径修正记录 | 修正的文件 + 改动内容(仅本次新增文件) |
264
+ | 入口文件信息 | App.tsx / index.tsx 路径 + displayName |
265
+ | **构建前置检查结果** | build-profile 路径越界检查、.har 路径验证、外部依赖缺失清单、入口链路验证结果 |
266
+ | **Demo 可访问性验证** | 孤立文件检测、菜单 ScrollView 适配、原有 App.tsx 保留、入口链路端到端验证 |
267
+ | 待人工确认项 | 业务无关依赖、冲突文件合并、入口文件接入、原生代码、特殊引用 |
268
+ | 验证检查结果 | 1.1-1.6 各项通过/失败状态 |
269
+ | 后续步骤建议 | 引导执行 `rn-lib-add-example` 完成壳层适配;执行 `npm i` → `ohpm install` → `npm run dev` → `devecocli build` 编译验证 |