@hmos-library-adapter/fast 0.0.17-beta.0 → 0.0.17-beta.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 (149) hide show
  1. package/node_modules/@hmos-library-adapter/executer/README.md +2 -2
  2. package/node_modules/@hmos-library-adapter/executer/shared/skill-map.json +5 -1
  3. package/node_modules/@hmos-library-adapter/executer/shared/skills/arkts-rules/SKILL.md +400 -0
  4. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/CHANGELOG.md +1391 -0
  5. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/COMPATIBILITY.md +53 -0
  6. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/README.md +123 -0
  7. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/SKILL.md +48 -0
  8. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/agents/upgrade-assess-change.md +37 -0
  9. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/agents/upgrade-fix-file.md +23 -0
  10. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/package.json +19 -0
  11. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/26.0.0/beta1-changes-for-all-apps.md +1793 -0
  12. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/26.0.0/beta1-ux-style-and-effect-changes.md +288 -0
  13. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/26.0.0/beta2-changes-for-all-apps.md +148 -0
  14. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/26.0.0/release-changes-for-all-apps.md +662 -0
  15. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/5.0.1(13)/beta3-os-api-behavior-changes.md +652 -0
  16. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/5.0.1(13)/beta3-ux-style-and-effect-changes.md +222 -0
  17. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/5.0.1(13)/release-os-api-behavior-changes.md +444 -0
  18. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/5.0.1(13)/release-ux-style-and-effect-changes.md +221 -0
  19. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/5.0.2(14)/os-api-behavior-changes.md +1767 -0
  20. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/5.0.2(14)/ux-style-and-effect-changes.md +134 -0
  21. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/5.0.3(15)/beta1-os-api-behavior-changes.md +430 -0
  22. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/5.0.3(15)/beta1-ux-style-and-effect-changes.md +49 -0
  23. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/5.0.3(15)/beta2-os-api-behavior-changes.md +240 -0
  24. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/5.0.3(15)/beta2-ux-style-and-effect-changes.md +90 -0
  25. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/5.0.3(15)/release-os-api-behavior-changes.md +69 -0
  26. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/5.1.0(18)/os-api-behavior-changes.md +1294 -0
  27. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/5.1.0(18)/ux-style-and-effect-changes.md +147 -0
  28. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/6.0.0(20)/beta1-os-api-behavior-changes.md +1019 -0
  29. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/6.0.0(20)/beta1-ux-style-and-effect-changes.md +153 -0
  30. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/6.0.0(20)/beta2-os-api-behavior-changes.md +662 -0
  31. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/6.0.0(20)/beta2-ux-style-and-effect-changes.md +78 -0
  32. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/6.0.0(20)/beta3-os-api-behavior-changes.md +167 -0
  33. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/6.0.0(20)/beta5-os-api-behavior-changes.md +52 -0
  34. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs/6.1.0(23)/changes-for-all-apps.md +397 -0
  35. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/changelogs-index.json +883 -0
  36. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/common/arkts-coding-standards.md +53 -0
  37. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/common/compatibility.md +207 -0
  38. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/common/native-adaptation.md +21 -0
  39. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/common/runtime-functional-tests.md +62 -0
  40. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/common/sdk-versions.md +77 -0
  41. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/common/troubleshooting.md +54 -0
  42. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/common/verification.md +79 -0
  43. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/common/workflow-scan.md +41 -0
  44. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/deprecated/context-migration.md +274 -0
  45. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/deprecated/deprecated-api-adaptation.md +157 -0
  46. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/deprecated/deprecated-api-examples.md +219 -0
  47. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/toolchain/hvigor.md +50 -0
  48. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/upgrade/har-upgrade.md +60 -0
  49. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/upgrade/scanner-missed-cases.md +171 -0
  50. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/upgrade/upgrade-compatibility.md +112 -0
  51. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/upgrade/upgrade-examples.md +289 -0
  52. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/references/upgrade/upgrade-workflow.md +122 -0
  53. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/references/generate-behavior-policy.mjs +96 -0
  54. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/references/references.mjs +9 -0
  55. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/regression/compare-deprecated.mjs +57 -0
  56. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/regression/compare-golden.mjs +130 -0
  57. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/regression/regress-deprecated.mjs +120 -0
  58. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/test/behavior-catalog-generation.test.mjs +59 -0
  59. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/test/behavior-local-sources.test.mjs +44 -0
  60. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/test/changelog-index.test.mjs +66 -0
  61. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/test/compare-golden.test.mjs +103 -0
  62. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/test/fixtures/behavior/local-sources.csv +5 -0
  63. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/test/references.test.mjs +16 -0
  64. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/test/skill-content.test.mjs +139 -0
  65. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/test/skill-frontmatter.test.mjs +11 -0
  66. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/test/test-suite.test.mjs +65 -0
  67. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/validation/skill-content.mjs +125 -0
  68. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/validation/skill-frontmatter.mjs +6 -0
  69. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/maintenance/validation/validate-skill.mjs +57 -0
  70. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/CHANGELOG.md +506 -0
  71. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/GOLDEN_VALIDATION.md +42 -0
  72. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/README.md +137 -0
  73. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/behavior/behavior-policy.mjs +117 -0
  74. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/behavior/upgrade-coverage.mjs +29 -0
  75. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/bin/deveco-worker-compat.cjs +21 -0
  76. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/bin/harmony-api-scan.mjs +17 -0
  77. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/core/cli.mjs +416 -0
  78. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/core/deveco.mjs +348 -0
  79. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/core/project.mjs +81 -0
  80. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/core/rules.mjs +425 -0
  81. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/core/runtime-identity.mjs +23 -0
  82. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/core/scan-runner.mjs +521 -0
  83. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/core/sdk-deprecations.mjs +204 -0
  84. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/data/behavior-change-policy.json +4378 -0
  85. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/deprecated/arkts-deprecations.mjs +363 -0
  86. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/deprecated/build-log.mjs +72 -0
  87. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/native/native.mjs +95 -0
  88. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/package.json +16 -0
  89. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/batch-layout.test.mjs +94 -0
  90. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/behavior-policy.test.mjs +75 -0
  91. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/build-log.test.mjs +69 -0
  92. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/cli.test.mjs +102 -0
  93. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/csv.test.mjs +35 -0
  94. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/deprecations.test.mjs +283 -0
  95. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/deveco.test.mjs +262 -0
  96. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/helpers/scan-batch.mjs +10 -0
  97. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/native.test.mjs +108 -0
  98. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/project.test.mjs +42 -0
  99. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/rules.test.mjs +190 -0
  100. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/runtime-identity.test.mjs +53 -0
  101. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/scan-mode.test.mjs +38 -0
  102. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/scan-runner.test.mjs +481 -0
  103. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/scan-scope.test.mjs +110 -0
  104. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/source-inputs.test.mjs +64 -0
  105. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/scanner/test/upgrade.test.mjs +164 -0
  106. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/format/args.mjs +66 -0
  107. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/format/csv.mjs +85 -0
  108. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/format/json5.mjs +92 -0
  109. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/format/upgrade-results.mjs +45 -0
  110. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/format/zip.mjs +87 -0
  111. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/io/fs-utils.mjs +60 -0
  112. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/artifact-layout.mjs +74 -0
  113. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/changelog-index.mjs +29 -0
  114. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/deveco-version.mjs +40 -0
  115. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/document-links.mjs +30 -0
  116. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/errors.mjs +41 -0
  117. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/fs.mjs +72 -0
  118. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/paths.mjs +34 -0
  119. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/process.mjs +154 -0
  120. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/scan-mode.mjs +7 -0
  121. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/scan-statistics.mjs +7 -0
  122. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/scan-version-catalog.json +43 -0
  123. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/scan-versions.mjs +51 -0
  124. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/sdk-layout.mjs +27 -0
  125. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/source-scope.mjs +108 -0
  126. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/source-types.mjs +7 -0
  127. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/platform/version.mjs +76 -0
  128. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/test/deveco-version.test.mjs +50 -0
  129. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/test/document-links.test.mjs +13 -0
  130. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/test/errors.test.mjs +40 -0
  131. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/test/fs-utils.test.mjs +31 -0
  132. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/test/platform-paths.test.mjs +19 -0
  133. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/test/process-utils.test.mjs +68 -0
  134. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/test/scan-versions.test.mjs +26 -0
  135. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/test/sdk-version.test.mjs +17 -0
  136. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/shared/test/upgrade-results.test.mjs +140 -0
  137. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/scripts/test-suite.mjs +29 -0
  138. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/templates/deprecated-report.md +86 -0
  139. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/templates/progress.md +150 -0
  140. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/templates/results.md +110 -0
  141. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/templates/upgrade-report.md +105 -0
  142. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/templates/upgrade-spec.md +58 -0
  143. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-api-upgrade-adapter/templates/upgrade-test-report.md +47 -0
  144. package/node_modules/@hmos-library-adapter/executer/shared/skills/harmonyos-knowledge/SKILL.md +70 -0
  145. package/node_modules/@hmos-library-adapter/executer/src/config.js +3 -4
  146. package/node_modules/@hmos-library-adapter/executer/src/doctor.js +1 -1
  147. package/node_modules/@hmos-library-adapter/executer/src/install.js +1 -1
  148. package/node_modules/@hmos-library-adapter/executer/src/paths.js +4 -4
  149. package/package.json +1 -1
@@ -16,7 +16,7 @@ hmos-library-adapter-executer ← 唯一可见入口(检测 + 路由)
16
16
  ├─ flutter-fast (hidden) → flutter-fast-01-analysis / -02-coding-library / -03-validation
17
17
  ├─ rn-fast (hidden) → rn-fast-01-analysis / -02-coding-library / -03-validation
18
18
  └─ sdk-fast (hidden) → sdk-fast-01-analysis / -02-implementation / -03-validation
19
- 公共能力(只装一份): harmonyos-docs-lookup + harmonyos-sdk-api-lookup
19
+ 公共能力(只装一份): harmonyos-knowledge + arkts-rules + harmonyos-api-upgrade-adapter
20
20
  ```
21
21
 
22
22
  ## 检测规则(`src/detect.js`,工程根,优先级固定)
@@ -32,7 +32,7 @@ hmos-library-adapter-executer ← 唯一可见入口(检测 + 路由)
32
32
 
33
33
  ## 单一事实源 + 公共抽取
34
34
 
35
- - 源不在本包:`../agent-flutter-fast`、`../agent-rn-fast`、`../agent-android-sdk-fast`(各平台)+ `../agent-core`(公共 doc skill)。
35
+ - 源不在本包:`../agent-flutter-fast`、`../agent-rn-fast`、`../agent-android-sdk-fast`(各平台)+ `../common-skills`(公共 skill)。
36
36
  - `prepack` 把它们快照进 `shared/`(`shared/<id>/` + 去重的 `shared/skills/`),`postpack` 删除——git 仓不留快照。
37
37
  - **公共 doc skill(128M)整个包只装一份**,比 3 个独立包各背一份省一大截。
38
38
  - 顶层路由 prompt(`agent/orchestrator.md`)是本包自有,直接随包发布。
@@ -24,5 +24,9 @@
24
24
  "ohos-native-cross-compile"
25
25
  ]
26
26
  },
27
- "common": []
27
+ "common": [
28
+ "arkts-rules",
29
+ "harmonyos-api-upgrade-adapter",
30
+ "harmonyos-knowledge"
31
+ ]
28
32
  }
@@ -0,0 +1,400 @@
1
+ ---
2
+ name: arkts-rules
3
+ description: |
4
+ ArkTS (HarmonyOS) language rules and constraints for writing correct, compilable .ets code.
5
+ ArkTS is based on TypeScript but removes most dynamic features for AOT compilation.
6
+ TRIGGER when: writing or editing .ets files, generating ArkTS code, fixing ArkTS compilation errors,
7
+ migrating TypeScript to ArkTS, or any HarmonyOS application development involving ArkTS code.
8
+ Triggers on: ArkTS, HarmonyOS code, .ets file, ETS, arkts compilation error, HarmonyOS app development,
9
+ write ArkTS, generate ETS code, fix ArkTS error, HarmonyOS component, ArkUI.
10
+ Do NOT trigger for: pure TypeScript projects, general JavaScript questions, non-HarmonyOS mobile development.
11
+ ---
12
+
13
+ # ArkTS 编程规则
14
+
15
+ ArkTS 是鸿蒙(HarmonyOS)的开发语言,基于 TypeScript 但**移除了大量动态特性**以支持 AOT 编译。源文件扩展名为 `.ets`,声明文件为 `.d.ts`。
16
+
17
+ > 核心原则:ArkTS = TypeScript - 动态特性 + 更严格的静态类型。生成代码时,**假设所有 TS 动态特性都不可用**。
18
+ >
19
+ > ArkTS 强制开启 `strictNullChecks`、`strictFunctionTypes`、`strictPropertyInitialization`、`noImplicitReturns`,不可关闭。
20
+
21
+ 在编写或审查 ArkTS 代码时,严格遵循以下所有规则。违反任何一条都会导致编译失败。
22
+
23
+ ---
24
+
25
+ ## 一、类型系统
26
+
27
+ ### 禁止的类型特性
28
+
29
+ | 禁止 | 替代写法 |
30
+ |------|---------|
31
+ | `any` / `unknown` | 使用具体类型,灵活场景用 `Object` 或 `Record<string, Object>` |
32
+ | 结构化类型(鸭子类型) | 必须通过 `extends` 或 `implements` 建立类型关系 |
33
+ | 交叉类型 `A & B` | `interface C extends A, B {}` |
34
+ | 条件类型 `T extends X ? Y : Z` | 用泛型约束 `T extends X` 或函数重载 |
35
+ | 映射类型 `{ [P in keyof T]: X }` | `Record<keyof T, X>` |
36
+ | 索引签名 `{ [key: string]: T }` | `Record<string, T>` |
37
+ | 索引访问类型 `Type['prop']` | 直接写出具体类型 |
38
+ | `typeof x` 作为类型 | 写出 x 的实际类型名 |
39
+ | `as const` 断言 | 用显式类型注解 |
40
+ | `this` 作为类型 | 使用具体类名 |
41
+ | 类型守卫 `arg is Foo` | `instanceof` + `as` 类型转换 |
42
+ | `@ts-ignore` / `@ts-nocheck` / `@ts-expect-error` | 禁止使用,必须修复类型错误本身 |
43
+ | `type` 别名定义对象类型 `type T = { x: number }` | `interface T { x: number }` (`type` 仅可用于函数类型别名) |
44
+ | 任意联合类型 `string \| number` | 仅允许 `T \| null`、`T \| undefined`、`T \| null \| undefined`;其他场景用函数重载或公共父类/接口 |
45
+
46
+ ### 限制的工具类型
47
+
48
+ 仅支持 `Partial<T>`、`Required<T>`、`Readonly<T>`、`Record<K,V>`。禁止 Pick、Omit、Exclude、Extract 等其他工具类型。其中 `Partial<T>` 的泛型参数 T 必须为 class 或 interface 类型。
49
+
50
+ ### 类型转换
51
+
52
+ ```typescript
53
+ // 禁止:尖括号语法
54
+ let c = <Circle>shape;
55
+
56
+ // 正确:as 语法(注意:错误的类型转换会在运行时抛出 ClassCastException,与 TS 不同)
57
+ let c = shape as Circle;
58
+ ```
59
+
60
+ ### 泛型
61
+
62
+ ```typescript
63
+ // 禁止:依赖返回类型推断泛型参数
64
+ let z = greet();
65
+
66
+ // 正确:显式提供泛型参数
67
+ let z = greet<string>();
68
+ ```
69
+
70
+ ---
71
+
72
+ ## 二、类与对象
73
+
74
+ ### 字段必须初始化
75
+
76
+ ```typescript
77
+ // 错误
78
+ class Person {
79
+ name: string; // 编译错误:未初始化
80
+ }
81
+
82
+ // 正确:声明时初始化
83
+ class Person {
84
+ name: string = '';
85
+ }
86
+
87
+ // 正确:构造函数中初始化
88
+ class Person {
89
+ name: string;
90
+ constructor(name: string) {
91
+ this.name = name;
92
+ }
93
+ }
94
+
95
+ // 正确:可选属性
96
+ class Person {
97
+ name?: string; // 类型为 string | undefined
98
+ }
99
+
100
+ // 正确:确定赋值断言(仅类属性,如装饰器场景;变量声明中禁止)
101
+ class Person {
102
+ name!: string; // 承诺会在使用前赋值,如通过 @State 等装饰器
103
+ }
104
+ ```
105
+
106
+ ### 禁止的类特性
107
+
108
+ | 禁止 | 替代写法 |
109
+ |------|---------|
110
+ | 构造器参数属性 `constructor(private x: T)` | 在类体中声明字段,构造函数中赋值 |
111
+ | `#privateField` 私有字段语法 | `private field` |
112
+ | 类表达式 `const C = class { }` | `class C { }` 声明 |
113
+ | 运行时修改方法 `obj.foo = bar` | 继承重写,或用箭头函数属性 |
114
+ | `delete obj.prop` | 设为 `null`(属性类型需含 `null`) |
115
+ | 原型赋值 | 不支持 |
116
+ | 多个 static 块 | 只允许一个 |
117
+ | `implements` 一个类 | 只能 `implements` 接口 |
118
+ | 接口继承类 | 接口只能 `extends` 接口 |
119
+ | 声明合并(class/interface/enum) | 不支持,类型名/变量名/函数名必须全局唯一 |
120
+ | 接口中同名方法冲突 | 接口不能继承两个有同名方法的接口 |
121
+ | 类作为值传递 `let c = MyClass` | 不支持,class 只是类型声明,不能赋值给变量或传参;用工厂函数替代 |
122
+
123
+ ### 对象字面量必须有类型上下文
124
+
125
+ ```typescript
126
+ // 错误:无类型注解
127
+ let obj = { x: 1, y: 2 };
128
+
129
+ // 错误:类型注解为 object 字面量
130
+ let obj: { x: number, y: number } = { x: 1, y: 2 };
131
+
132
+ // 正确:声明 class 或 interface
133
+ class Point {
134
+ x: number = 0;
135
+ y: number = 0;
136
+ }
137
+ let obj: Point = { x: 1, y: 2 };
138
+ ```
139
+
140
+ **对象字面量限制:**
141
+ - 不能用于初始化含自定义构造函数的类
142
+ - 不能用于初始化含 `readonly` 字段的类
143
+ - 不能用于初始化含方法(非箭头函数属性)的类
144
+ - 属性名必须是合法标识符(不能用引号括起),但 `Record` 类型的键必须用引号
145
+ - `export default { ... }` 匿名对象被禁止,需封装为类
146
+
147
+ ### 接口限制
148
+
149
+ 接口是纯抽象的:无方法实现、无静态成员、无静态代码块、无构造函数。
150
+
151
+ ### 枚举限制
152
+
153
+ - 不支持 `const enum`
154
+ - 枚举成员初始化值必须类型一致(不能混合 number 和 string)
155
+ - 不能用运行时计算表达式初始化(如 `A = someFunc()`)
156
+
157
+ ---
158
+
159
+ ## 三、函数
160
+
161
+ ### 禁止的函数特性
162
+
163
+ | 禁止 | 替代写法 |
164
+ |------|---------|
165
+ | `function` 表达式 `let f = function() {}` | 箭头函数 `let f = () => {}` |
166
+ | 嵌套函数声明 `function outer() { function inner() {} }` | `let inner = () => {}` |
167
+ | generator 函数 `function*` | `async/await` |
168
+ | 参数解构 `function f({x, y})` | 展开为独立参数 |
169
+ | 调用签名 `interface { (x: T): R }` | 类型别名 `type F = (x: T) => R` |
170
+ | 构造签名 `new (x: T) => R` | 工厂函数 `() => R` |
171
+ | `.apply()` / `.call()` | 直接调用或展开参数 |
172
+ | `.bind(this)` | 箭头函数 `() => this.foo()` |
173
+ | 函数上定义属性 | 不支持 |
174
+
175
+ ### this 的限制
176
+
177
+ ```typescript
178
+ // 错误:独立函数中的 this
179
+ function foo() { this.x = 1; }
180
+
181
+ // 错误:静态方法中的 this
182
+ class A { static f() { this.x = 1; } }
183
+
184
+ // 正确:仅在实例方法中使用 this
185
+ class A {
186
+ x: number = 0;
187
+ f() { this.x = 1; } // OK
188
+ }
189
+ ```
190
+
191
+ ### 返回类型
192
+
193
+ 当 return 语句调用另一个未标注返回类型的函数时,必须显式标注当前函数的返回类型。
194
+
195
+ ---
196
+
197
+ ## 四、变量与表达式
198
+
199
+ ### 禁止的表达式特性
200
+
201
+ | 禁止 | 替代写法 |
202
+ |------|---------|
203
+ | `var` | `let` 或 `const` |
204
+ | 解构声明 `let {x, y} = obj` | `let tmp = obj; let x = tmp.x; let y = tmp.y;` |
205
+ | 解构赋值 `[a, b] = [b, a]` | 使用临时变量交换 |
206
+ | `for...in` | `for...of` 或索引 `for` 循环,配合 `Object.entries()` |
207
+ | `in` 操作符 `'x' in obj` | `instanceof` 或 `Object.keys()` 检查 |
208
+ | 对象展开 `{...obj}` | 手动逐属性拷贝 |
209
+ | 隐式类型转换 `+'5'` / `-'3'` | `Number.parseFloat('5')` / `Number.parseInt('3')` |
210
+ | `throw 'error'` / `throw 4` | `throw new Error('error')` |
211
+ | 逗号运算符(`for` 循环外) | 拆分为独立语句 |
212
+ | `Symbol()`(`Symbol.iterator` 除外) | 不支持 |
213
+ | `with` 语句 | 不支持 |
214
+ | `new.target` | 不支持 |
215
+ | `globalThis` | import/export 共享,或单例模式 |
216
+ | `eval()` | 不支持 |
217
+ | `obj['prop']` 索引访问 | `obj.prop` 点访问 |
218
+
219
+ ### Null 安全
220
+
221
+ ```typescript
222
+ // 错误:非空类型赋 null
223
+ let x: number = null;
224
+
225
+ // 正确:联合类型
226
+ let x: number | null = null;
227
+
228
+ // 正确:可选链访问
229
+ let len = str?.length;
230
+
231
+ // 正确:非空断言(确信非空时)
232
+ let len = str!.length;
233
+ ```
234
+
235
+ ### catch 语句
236
+
237
+ ```typescript
238
+ // 错误:catch 参数带类型
239
+ try { } catch (e: BusinessError) { }
240
+
241
+ // 正确:无类型 + as 转换
242
+ try { } catch (error) {
243
+ let e: BusinessError = error as BusinessError;
244
+ }
245
+ ```
246
+
247
+ ### 展开运算符
248
+
249
+ 仅限于数组/TypedArray,且只用于:rest 参数、数组字面量中复制数组。**不能展开对象。**
250
+
251
+ ---
252
+
253
+ ## 五、模块
254
+
255
+ | 禁止 | 替代写法 |
256
+ |------|---------|
257
+ | `require('mod')` | `import * as m from 'mod'` |
258
+ | `export = X` | `export default X` 或命名导出 |
259
+ | `declare module 'x'` 环境声明 | 不支持 |
260
+ | 模块名通配符 | 不支持 |
261
+ | UMD | 不支持 |
262
+ | import 断言 | 不支持 |
263
+ | `.ts`/`.js` 文件导入 `.ets` | 不允许,`.ets` 可导入 `.ts` |
264
+ | import 语句不在文件顶部 | 所有 import 必须在最前面 |
265
+ | `import *` 导入整个 Kit | 使用命名导入减少包体积 |
266
+ | `import type { A } from '...'` | 直接用 `import { A } from '...'` |
267
+ | 副作用导入 `import 'module'` | 不支持,改用动态 `import()` |
268
+ | 命名空间中写非声明语句 | 将执行语句包装到函数中 |
269
+
270
+ ### Kit 导入风格
271
+
272
+ ```typescript
273
+ // 推荐:Kit 方式
274
+ import { UIAbility } from '@kit.AbilityKit';
275
+
276
+ // 兼容:旧式导入
277
+ import UIAbility from '@ohos.app.ability.UIAbility';
278
+ ```
279
+
280
+ ### 动态导入
281
+
282
+ ```typescript
283
+ // 注意:ESObject 仅用于 JS/TS 互操作场景,其他场景禁止使用
284
+ import('./Calc').then((obj: ESObject) => {
285
+ console.info(obj.add(3, 5));
286
+ });
287
+ ```
288
+
289
+ ---
290
+
291
+ ## 六、标准库限制
292
+
293
+ **禁止使用的 API:**
294
+ - `eval()`
295
+ - `Object.assign`、`Object.create`、`Object.defineProperty`、`Object.freeze`、`Object.fromEntries`、`Object.getPrototypeOf`、`Object.setPrototypeOf` 等 Object 静态方法(`Object.keys()`、`Object.values()`、`Object.entries()` 允许使用)
296
+ - 大部分 `Reflect` 方法
297
+ - 所有 `Proxy` handler 方法
298
+ - `Function.apply`、`Function.call`、`Function.bind`
299
+ - 正则字面量 `/pattern/flags` → 用 `new RegExp('pattern', 'flags')`
300
+
301
+ ---
302
+
303
+ ## 七、编码风格要求
304
+
305
+ ### 命名
306
+ - 类名/枚举名/命名空间名:`UpperCamelCase`
307
+ - 变量名/方法名/参数名:`lowerCamelCase`
308
+ - 常量/枚举值:`UPPER_SNAKE_CASE`
309
+ - 布尔变量加 `is`/`has`/`can`/`should` 前缀,避免否定命名
310
+
311
+ ### 格式
312
+ - 缩进:2 空格(换行缩进 4 空格),禁止 tab
313
+ - 行宽:不超过 120 字符
314
+ - 字符串:使用单引号
315
+ - 数组类型:用 `T[]` 而非 `Array<T>`
316
+ - 浮点数:小数点前后都写 `0`(`0.5` 非 `.5`)
317
+ - 每行只声明一个变量
318
+ - `if`/`for`/`while` 始终使用大括号
319
+ - `else`/`catch` 与 `}` 同行
320
+ - 对象字面量属性超过 4 个时每个属性换行
321
+
322
+ ---
323
+
324
+ ## 八、高性能实践
325
+
326
+ - 用 `const` 声明不变量
327
+ - 避免 number 整型/浮点型混用
328
+ - 数值计算避免溢出 INT32 范围
329
+ - 循环中提取不变量到循环外
330
+ - 用参数传递替代闭包捕获
331
+ - 避免可选参数,用默认参数值替代
332
+ - 数值数组用 `TypedArray`(如 `Int8Array`、`Float32Array`)
333
+ - 避免稀疏数组和联合类型数组
334
+ - 避免频繁抛异常,用返回值表示错误
335
+ - 避免使用 `ESObject`(仅用于 TS/JS 互操作)
336
+ - 数组遍历优先用 `map`/`filter`/`forEach` 等方法
337
+
338
+ ---
339
+
340
+ ## 九、常见替代模式速查
341
+
342
+ ```
343
+ TS 写法 → ArkTS 替代
344
+ ─────────────────────────────────────────────────────────
345
+ any / unknown → 具体类型 或 Object
346
+ var x → let x
347
+ obj['prop'] → obj.prop
348
+ { x: 1 } (无类型字面量) → 声明 class/interface 后标注类型
349
+ type T = { x: number } → interface T { x: number }
350
+ A & B → interface C extends A, B {}
351
+ let f = function() {} → let f = () => {}
352
+ function outer() { function inner(){} } → let inner = () => {}
353
+ for (let k in obj) → for (let e of Object.entries(obj))
354
+ let {x, y} = obj → let x = obj.x; let y = obj.y;
355
+ [a, b] = [b, a] → let tmp = a; a = b; b = tmp;
356
+ delete obj.prop → obj.prop = null
357
+ arg is Foo → arg instanceof Foo + as Foo
358
+ require('mod') → import ... from 'mod'
359
+ <Type>value → value as Type
360
+ throw 'error' → throw new Error('error')
361
+ constructor(private x: T) → 字段声明在类体 + 构造函数赋值
362
+ {...obj} 展开对象 → 手动拷贝属性
363
+ /regex/g → new RegExp('regex', 'g')
364
+ +'5' (隐式转换) → Number.parseFloat('5')
365
+ catch (e: Error) → catch (e) { let err = e as Error; }
366
+ globalThis.x → 单例类模式 或 import/export
367
+ obj.method.bind(this) → () => this.method()
368
+ @ts-ignore / @ts-nocheck → 禁止,必须修复类型错误
369
+ string | number (任意联合) → 函数重载 或 公共父类/接口
370
+ import type { A } → import { A }
371
+ import 'module' (副作用导入) → 动态 import()
372
+ let c = MyClass (类作为值) → 工厂函数
373
+ ```
374
+
375
+ ---
376
+
377
+ ## 十、全局 Singleton 模式(替代 globalThis)
378
+
379
+ ```typescript
380
+ export class GlobalContext {
381
+ private constructor() {}
382
+ private static instance: GlobalContext;
383
+ private _objects = new Map<string, Object>();
384
+
385
+ public static getContext(): GlobalContext {
386
+ if (!GlobalContext.instance) {
387
+ GlobalContext.instance = new GlobalContext();
388
+ }
389
+ return GlobalContext.instance;
390
+ }
391
+
392
+ public getObject(value: string): Object | undefined {
393
+ return this._objects.get(value);
394
+ }
395
+
396
+ public setObject(key: string, objectClass: Object): void {
397
+ this._objects.set(key, objectClass);
398
+ }
399
+ }
400
+ ```