@ohos-cpf/3rdloop 0.0.2 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +290 -244
- package/bin/3rdloop.mjs +46 -46
- package/lib/cli.js +781 -781
- package/lib/config-cmd.js +451 -451
- package/lib/config.js +318 -318
- package/lib/doctor.js +113 -113
- package/lib/exit-codes.js +30 -30
- package/lib/opencode.js +155 -155
- package/lib/orch.js +426 -426
- package/lib/queries.js +263 -263
- package/lib/step.js +325 -325
- package/lib/ui.js +222 -222
- package/lib/update.js +279 -279
- package/lib/workflow.js +308 -308
- package/lib/workflows.js +131 -131
- package/package.json +50 -50
- package/vendor/Server/Agent/SkillSelector/README.md +343 -343
- package/vendor/Server/Agent/SkillSelector/core/Agent.js +207 -207
- package/vendor/Server/Agent/SkillSelector/index.js +14 -14
- package/vendor/Server/Agent/SkillSelector/llm/llmClient.js +313 -313
- package/vendor/Server/Agent/SkillSelector/llm/prompts.js +161 -161
- package/vendor/Server/Agent/SkillSelector/llm/reactSteps.js +144 -144
- package/vendor/Server/Agent/SkillSelector/matcher/fuzzyMatcher.js +433 -433
- package/vendor/Server/Agent/SkillSelector/scanner/skillScanner.js +382 -382
- package/vendor/Server/Agent/SkillSelector/utils/actionWords.js +59 -59
- package/vendor/Server/Brain/AnalysisStrategies.js +422 -422
- package/vendor/Server/Brain/Brain.js +686 -686
- package/vendor/Server/Brain/DecompositionStrategies.js +621 -621
- package/vendor/Server/Brain/PlanPersistence.js +196 -196
- package/vendor/Server/Brain/SkillExecutor.js +251 -251
- package/vendor/Server/Brain/index.js +11 -11
- package/vendor/Server/CLI/cli.js +275 -275
- package/vendor/Server/CLI/deveco-code/index.js +71 -71
- package/vendor/Server/CLI/deveco-code.js +5 -5
- package/vendor/Server/CLI/opencode/index.js +817 -818
- package/vendor/Server/CLI/opencode.js +5 -5
- package/vendor/Server/DbUse/MessageArchive.js +61 -61
- package/vendor/Server/DbUse/StorageManager.js +107 -107
- package/vendor/Server/DbUse/adapters/BaseAdapter.js +94 -94
- package/vendor/Server/DbUse/adapters/FileAdapter.js +138 -138
- package/vendor/Server/DbUse/adapters/JsonAdapter.js +138 -138
- package/vendor/Server/DbUse/adapters/JsonlAdapter.js +114 -114
- package/vendor/Server/DbUse/adapters/SqliteAdapter.js +157 -157
- package/vendor/Server/DbUse/index.js +160 -160
- package/vendor/Server/DbUse/stores/SessionStore.js +279 -279
- package/vendor/Server/DbUse/stores/TaskExecutionStore.js +133 -133
- package/vendor/Server/DbUse/stores/TaskRegistryStore.js +262 -262
- package/vendor/Server/DbUse/stores/TaskStepStore.js +279 -279
- package/vendor/Server/FlexRunner/FlexRunner.js +1759 -1759
- package/vendor/Server/FlexRunner/index.js +12 -12
- package/vendor/Server/Knowledge/KnowledgeImporter.js +523 -523
- package/vendor/Server/Knowledge/KnowledgeManager.js +341 -341
- package/vendor/Server/Knowledge/index.js +33 -33
- package/vendor/Server/LoopEngine/LoopEngine.js +1133 -1133
- package/vendor/Server/LoopEngine/index.js +11 -11
- package/vendor/Server/Orchestrator/Orchestrator.js +0 -3
- package/vendor/Server/Orchestrator/StepNode.js +312 -312
- package/vendor/Server/Orchestrator/index.js +13 -13
- package/vendor/Server/Routes/controllers/BrainController.js +241 -241
- package/vendor/Server/Routes/controllers/FlexRunnerController.js +1125 -1125
- package/vendor/Server/Routes/controllers/HealthController.js +44 -44
- package/vendor/Server/Routes/controllers/KnowledgeImportController.js +355 -355
- package/vendor/Server/Routes/controllers/LoopEngineController.js +788 -788
- package/vendor/Server/Routes/controllers/StatsController.js +57 -57
- package/vendor/Server/Routes/controllers/StreamController.js +67 -67
- package/vendor/Server/Routes/library/logger.js +179 -179
- package/vendor/Server/Routes/library/zipArchive.js +172 -172
- package/vendor/Server/Routes/router/Router.js +204 -204
- package/vendor/Server/Routes/routes/brain.js +47 -47
- package/vendor/Server/Routes/routes/flexrunner.js +72 -72
- package/vendor/Server/Routes/routes/health.js +28 -28
- package/vendor/Server/Routes/routes/index.js +57 -57
- package/vendor/Server/Routes/routes/knowledge.js +55 -55
- package/vendor/Server/Routes/routes/loopengine.js +58 -58
- package/vendor/Server/Routes/routes/orchestrator.js +61 -61
- package/vendor/Server/Routes/routes/registry.js +97 -97
- package/vendor/Server/Routes/routes/stats.js +23 -23
- package/vendor/Server/Routes/routes/stream.js +30 -30
- package/vendor/Server/Routes/server.js +203 -203
- package/vendor/Server/Routes/sse/SseHub.js +308 -308
- package/vendor/Server/Skills/acceptance-check/SKILL.md +191 -191
- package/vendor/Server/Skills/acceptance-check/references/PHASE1_ARTIFACT_COLLECTION.md +52 -52
- package/vendor/Server/Skills/acceptance-check/references/PHASE2_CRITERIA_EVALUATION.md +77 -77
- package/vendor/Server/Skills/acceptance-check/references/PHASE2_EVIDENCE_VERIFICATION.md +70 -70
- package/vendor/Server/Skills/arkts-code-check/SKILL.md +320 -320
- package/vendor/Server/Skills/arkts-code-check/references/CODE_CHECK_GUIDE.md +210 -210
- package/vendor/Server/Skills/arkts-code-check/references/FILE_TYPE_GUIDE.md +28 -28
- package/vendor/Server/Skills/arkts-code-check/references/PHASE1_INFO_COLLECTION.md +233 -233
- package/vendor/Server/Skills/arkts-code-check/references/REPORT_TEMPLATE.md +219 -219
- package/vendor/Server/Skills/arkts-library-compile-validate/SKILL.md +328 -328
- package/vendor/Server/Skills/arkts-library-compile-validate/scripts/build.ps1 +93 -93
- package/vendor/Server/Skills/arkts-library-compile-validate/scripts/code-linter.cjs +432 -432
- package/vendor/Server/Skills/arkts-library-compile-validate/scripts/migrate.cjs +851 -851
- package/vendor/Server/Skills/arkts-library-compile-validate/scripts/ohpm-switch.cjs +788 -788
- package/vendor/Server/Skills/arkts-library-demo-code/SKILL.md +291 -291
- package/vendor/Server/Skills/arkts-library-demo-code/references/API_SIGNATURE_CHECKS.md +68 -68
- package/vendor/Server/Skills/arkts-library-demo-code/references/BUILD_VALIDATION.md +184 -184
- package/vendor/Server/Skills/arkts-library-demo-code/references/CODE_STANDARDS.md +337 -337
- package/vendor/Server/Skills/arkts-library-demo-code/references/EXAMPLES.md +400 -400
- package/vendor/Server/Skills/arkts-library-demo-code/references/SYSTEM_API_LOOKUP.md +98 -98
- package/vendor/Server/Skills/arkts-library-demo-code/references/TEMPLATE.md +544 -544
- package/vendor/Server/Skills/arkts-library-demo-code/scripts/build.ps1 +93 -93
- package/vendor/Server/Skills/arkts-library-demo-code/scripts/code-linter.cjs +432 -432
- package/vendor/Server/Skills/arkts-library-demo-code/scripts/migrate.cjs +851 -851
- package/vendor/Server/Skills/arkts-library-demo-code/scripts/ohpm-switch.cjs +788 -788
- package/vendor/Server/Skills/arkts-library-demo-coverage/SKILL.md +174 -174
- package/vendor/Server/Skills/arkts-library-demo-scenario/SKILL.md +321 -321
- package/vendor/Server/Skills/arkts-library-demo-scenario/references/EXAMPLES.md +100 -100
- package/vendor/Server/Skills/arkts-library-demo-scenario/references/TEMPLATE.md +185 -185
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/SKILL.md +233 -233
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/assets/REPORT_TEMPLATE.md +102 -102
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/CHECK_DIMENSIONS.md +89 -89
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/COMPLIANCE_CHECKLIST.md +62 -62
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/KB_QUERY_GUIDE.md +107 -107
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/MCP_TOOL_DISCOVERY.md +124 -124
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/REPORT_TEMPLATE.md +90 -90
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/references/SCORING_FORMULA.md +57 -57
- package/vendor/Server/Skills/arkts-library-documentation-quality-check/scripts/validate-skill.cjs +259 -259
- package/vendor/Server/Skills/arkts-library-interface-spec/SKILL.md +97 -97
- package/vendor/Server/Skills/arkts-library-memory-leak-check/SKILL.md +391 -391
- package/vendor/Server/Skills/arkts-library-source-clone/SKILL.md +113 -113
- package/vendor/Server/Skills/arkts-library-stability-check/SKILL.md +312 -312
- package/vendor/Server/Skills/arkts-library-stability-check/assets/REPORT_TEMPLATE.md +154 -154
- package/vendor/Server/Skills/arkts-library-stability-check/references/CHECKLIST.md +165 -165
- package/vendor/Server/Skills/arkts-library-stability-check/references/CODE_EXAMPLES.md +308 -308
- package/vendor/Server/Skills/arkts-library-stability-check/references/SCORING_RULES.md +90 -90
- package/vendor/Server/Skills/arkts-library-stability-check/scripts/validate-skill.cjs +282 -282
- package/vendor/Server/Skills/arkts-library-test-coverage-check/SKILL.md +360 -360
- package/vendor/Server/Skills/arkts-library-test-coverage-check/assets/REPORT_TEMPLATE.md +145 -145
- package/vendor/Server/Skills/arkts-library-test-coverage-check/references/CHECKLIST.md +252 -252
- package/vendor/Server/Skills/arkts-library-test-coverage-check/references/MCP_TOOL_USAGE.md +114 -114
- package/vendor/Server/Skills/arkts-library-test-coverage-check/scripts/validate-skill.cjs +262 -262
- package/vendor/Server/Skills/arkts-library-xts-code/SKILL.md +455 -455
- package/vendor/Server/Skills/arkts-library-xts-code/assets/report-template.md +60 -60
- package/vendor/Server/Skills/arkts-library-xts-code/references/ACCESS_MODIFIER_PRECHECK.md +76 -76
- package/vendor/Server/Skills/arkts-library-xts-code/references/BUILD_VERIFICATION.md +200 -200
- package/vendor/Server/Skills/arkts-library-xts-code/references/CODE_STANDARDS.md +518 -518
- package/vendor/Server/Skills/arkts-library-xts-code/references/SUBAGENT_PROMPT_TEMPLATE.md +276 -276
- package/vendor/Server/Skills/arkts-library-xts-code/references/SYSTEM_API_LOOKUP.md +92 -92
- package/vendor/Server/Skills/arkts-library-xts-code/references/XTS_TEMPLATE.md +767 -767
- package/vendor/Server/Skills/arkts-library-xts-code/scripts/build.ps1 +93 -93
- package/vendor/Server/Skills/arkts-library-xts-code/scripts/code-linter.cjs +432 -432
- package/vendor/Server/Skills/arkts-library-xts-code/scripts/migrate.cjs +851 -851
- package/vendor/Server/Skills/arkts-library-xts-code/scripts/ohpm-switch.cjs +788 -788
- package/vendor/Server/Skills/arkts-library-xts-code/scripts/precheck-access-modifiers.cjs +221 -221
- package/vendor/Server/Skills/arkts-library-xts-code-fix/SKILL.md +228 -228
- package/vendor/Server/Skills/arkts-library-xts-coverage/SKILL.md +97 -97
- package/vendor/Server/Skills/arkts-library-xts-doc/SKILL.md +194 -194
- package/vendor/Server/Skills/arkts-library-xts-doc/references/EXAMPLES.md +575 -575
- package/vendor/Server/Skills/arkts-library-xts-doc/references/TEMPLATE.md +574 -574
- package/vendor/Server/Skills/arkts-library-xts-doc/references/TESTABILITY_GUIDE.md +182 -182
- package/vendor/Server/Skills/arkts-library-xts-execution/SKILL.md +490 -490
- package/vendor/Server/Skills/arkts-library-xts-execution/references/error-fixing-examples.md +217 -217
- package/vendor/Server/Skills/arkts-library-xts-execution/scripts/build.ps1 +93 -93
- package/vendor/Server/Skills/arkts-library-xts-execution/scripts/code-linter.cjs +432 -432
- package/vendor/Server/Skills/arkts-library-xts-execution/scripts/migrate.cjs +851 -851
- package/vendor/Server/Skills/arkts-library-xts-execution/scripts/ohpm-switch.cjs +788 -788
- package/vendor/Server/Skills/flutter-code-check/SKILL.md +299 -299
- package/vendor/Server/Skills/flutter-code-check/assets/OUTPUT_TEMPLATE.md +311 -311
- package/vendor/Server/Skills/flutter-code-check/references/CHECKLIST.md +190 -190
- package/vendor/Server/Skills/flutter-code-check/references/PLATFORMS.md +133 -133
- package/vendor/Server/Skills/flutter-code-check/scripts/validate-skill.cjs +259 -259
- package/vendor/Server/Skills/flutter-interface/README.md +75 -75
- package/vendor/Server/Skills/flutter-interface/SKILL.md +291 -291
- package/vendor/Server/Skills/flutter-interface/references/EXAMPLES.md +336 -336
- package/vendor/Server/Skills/flutter-interface/references/GIT_CLONE_GUIDE.md +190 -190
- package/vendor/Server/Skills/flutter-interface/references/SCRIPT_REFERENCE.md +258 -258
- package/vendor/Server/Skills/flutter-interface/references/TEMPLATE.md +254 -254
- package/vendor/Server/Skills/flutter-library-consistency-check/SKILL.md +517 -517
- package/vendor/Server/Skills/flutter-library-consistency-check/references/CHECKLIST.md +381 -381
- package/vendor/Server/Skills/flutter-library-consistency-check/references/FUNCTION_COMPARISON_GUIDE.md +341 -341
- package/vendor/Server/Skills/flutter-library-consistency-check/references/PLATFORM_LIMITATION_GUIDE.md +71 -71
- package/vendor/Server/Skills/flutter-library-documentation-quality-check/SKILL.md +518 -518
- package/vendor/Server/Skills/flutter-library-documentation-quality-check/references/CHECKLIST.md +406 -406
- package/vendor/Server/Skills/flutter-library-memory-leak-check/SKILL.md +652 -652
- package/vendor/Server/Skills/flutter-library-memory-leak-check/references/CHECKLIST.md +396 -396
- package/vendor/Server/Skills/flutter-library-stability-check/SKILL.md +744 -744
- package/vendor/Server/Skills/flutter-library-stability-check/references/CHECKLIST.md +720 -720
- package/vendor/Server/Skills/flutter-library-test-coverage-check/SKILL.md +414 -414
- package/vendor/Server/Skills/flutter-library-test-coverage-check/assets/REPORT_TEMPLATE.md +150 -150
- package/vendor/Server/Skills/flutter-library-test-coverage-check/references/CHECKLIST.md +304 -304
- package/vendor/Server/Skills/flutter-library-test-coverage-check/references/SCORING_RULES.md +265 -265
- package/vendor/Server/Skills/flutter-library-test-coverage-check/references/SCRIPT_USAGE.md +286 -286
- package/vendor/Server/Skills/knowledge-import/SKILL.md +383 -383
- package/vendor/Server/Skills/knowledge-import/references/MCP_TOOL_USAGE.md +165 -165
- package/vendor/Server/Skills/knowledge-import/references/SKILL_LOCATOR_GUIDE.md +91 -91
- package/vendor/Server/Skills/knowledge-import/references/SKILL_OPTIMIZATION_GUIDE.md +127 -127
- package/vendor/Server/Skills/ohos-lib-pr-push/SKILL.md +453 -301
- package/vendor/Server/Skills/ohos-lib-pr-push/assets/PR_CHECKLIST.md +151 -0
- package/vendor/Server/Skills/ohos-lib-pr-push/assets/PR_ISSUE_TEMPLATE.md +257 -105
- package/vendor/Server/Skills/ohos-lib-pr-push/references/GITCODE_API.md +191 -127
- package/vendor/Server/Skills/ohos-lib-pr-push/scripts/gitcode-api.cjs +317 -208
- package/vendor/Server/Skills/rn-code-check/SKILL.md +320 -320
- package/vendor/Server/Skills/rn-code-check/references/API-GUIDE.md +234 -234
- package/vendor/Server/Skills/rn-code-check/references/CHECKLIST.md +188 -188
- package/vendor/Server/Skills/rn-code-check/references/REPORT-TEMPLATE.md +246 -246
- package/vendor/Server/Skills/rn-lib-add-example/SKILL.md +198 -198
- package/vendor/Server/Skills/rn-lib-add-example/references/APP_RENAME_GUIDE.md +40 -40
- package/vendor/Server/Skills/rn-lib-add-example/references/SHELL_ADAPTATION_CHECKLIST.md +78 -78
- package/vendor/Server/Skills/rn-lib-add-example/references/TEMPLATE_REPO_GUIDE.md +70 -70
- package/vendor/Server/Skills/rn-lib-add-example/references/VERIFICATION_GUIDE.md +47 -47
- package/vendor/Server/Skills/rn-lib-add-example/scripts/create-example.cjs +252 -252
- package/vendor/Server/Skills/rn-lib-update-doc/SKILL.md +176 -176
- package/vendor/Server/Skills/rn-lib-update-doc/config.json +5 -5
- package/vendor/Server/Skills/rn-lib-update-doc/references/changelog-template.md +35 -35
- package/vendor/Server/Skills/rn-lib-update-doc/references/format-diff.md +137 -137
- package/vendor/Server/Skills/rn-lib-update-doc/references/link-registry.json +33 -33
- package/vendor/Server/Skills/rn-lib-update-doc/references/model-0.4.2-overview.md +40 -40
- package/vendor/Server/Skills/rn-lib-update-doc/references/model-0.4.2.md +429 -429
- package/vendor/Server/Skills/rn-lib-update-doc/scripts/detect-readme-format.cjs +105 -105
- package/vendor/Server/Skills/rn-lib-update-doc/scripts/find-usage-doc.cjs +90 -90
- package/vendor/Server/Skills/rn-lib-update-doc/scripts/link-verify.cjs +213 -213
- package/vendor/Server/Skills/rn-lib-update-doc/scripts/normalize-changelog.cjs +73 -73
- package/vendor/Server/Skills/rn-lib-update-doc/scripts/normalize-package-meta.cjs +258 -258
- package/vendor/Server/Skills/rn-lib-update-doc/scripts/normalize-readme-links.cjs +341 -341
- package/vendor/Server/Skills/rn-lib-update-doc/scripts/resolve-usage-docs.cjs +67 -67
- package/vendor/Server/Skills/rn-library-consistency-check/SKILL.md +299 -299
- package/vendor/Server/Skills/rn-library-consistency-check/assets/REPORT_TEMPLATE.md +293 -293
- package/vendor/Server/Skills/rn-library-consistency-check/references/ARKTS_COMPONENT_CHECK_GUIDE.md +857 -857
- package/vendor/Server/Skills/rn-library-consistency-check/references/ARKTS_TURBOMODULE_CHECK_GUIDE.md +856 -856
- package/vendor/Server/Skills/rn-library-consistency-check/references/CHECKLIST.md +157 -157
- package/vendor/Server/Skills/rn-library-consistency-check/references/CPP_COMPONENT_CHECK_GUIDE.md +801 -801
- package/vendor/Server/Skills/rn-library-consistency-check/references/CPP_TURBOMODULE_CHECK_GUIDE.md +683 -683
- package/vendor/Server/Skills/rn-library-consistency-check/references/FUNCTION_COMPARISON_GUIDE.md +233 -233
- package/vendor/Server/Skills/rn-library-consistency-check/references/NATIVE_COMPONENT_IDENTIFICATION.md +1373 -1373
- package/vendor/Server/Skills/rn-library-consistency-check/references/SCORING_STANDARD.md +220 -220
- package/vendor/Server/Skills/rn-library-consistency-check/scripts/validate-skill.py +245 -245
- package/vendor/Server/Skills/rn-library-documentation-quality-check/SKILL.md +263 -263
- package/vendor/Server/Skills/rn-library-documentation-quality-check/assets/MODEL.md +414 -414
- package/vendor/Server/Skills/rn-library-documentation-quality-check/assets/MODEL_en.md +413 -413
- package/vendor/Server/Skills/rn-library-documentation-quality-check/assets/REPORT_TEMPLATE.md +311 -311
- package/vendor/Server/Skills/rn-library-documentation-quality-check/references/CHECK_CHECKLIST.md +355 -355
- package/vendor/Server/Skills/rn-library-documentation-quality-check/references/CROSS_VALIDATION_GUIDE.md +115 -115
- package/vendor/Server/Skills/rn-library-documentation-quality-check/references/DOC_COLLECTION_GUIDE.md +139 -139
- package/vendor/Server/Skills/rn-library-documentation-quality-check/references/EXAMPLES.md +586 -586
- package/vendor/Server/Skills/rn-library-documentation-quality-check/references/GOTCHAS.md +57 -57
- package/vendor/Server/Skills/rn-library-documentation-quality-check/scripts/validate-skill.py +259 -259
- package/vendor/Server/Skills/rn-library-interface-analyzer/SKILL.md +301 -301
- package/vendor/Server/Skills/rn-library-interface-analyzer/assets/REPORT_TEMPLATE.md +148 -148
- package/vendor/Server/Skills/rn-library-interface-analyzer/references/DOC_ANNOTATION_GUIDE.md +118 -118
- package/vendor/Server/Skills/rn-library-interface-analyzer/references/SCRIPT_USAGE_GUIDE.md +168 -168
- package/vendor/Server/Skills/rn-library-interface-analyzer/references/URL_PARSING_RULES.md +176 -176
- package/vendor/Server/Skills/rn-library-issue-generalizer/SKILL.md +274 -274
- package/vendor/Server/Skills/rn-library-issue-generalizer/assets/case-template.md +45 -45
- package/vendor/Server/Skills/rn-library-issue-generalizer/assets/rule-template.md +25 -25
- package/vendor/Server/Skills/rn-library-issue-generalizer/references/PR_FETCH_GUIDE.md +61 -61
- package/vendor/Server/Skills/rn-library-issue-generalizer/references/RULE_TEMPLATE_GUIDE.md +165 -165
- package/vendor/Server/Skills/rn-library-issue-generalizer/scripts/fetch-pr-info.py +239 -239
- package/vendor/Server/Skills/rn-library-known-issue-check/SKILL.md +263 -263
- package/vendor/Server/Skills/rn-library-known-issue-check/assets/REPORT_TEMPLATE.md +96 -96
- package/vendor/Server/Skills/rn-library-known-issue-check/references/COMPLIANCE_CHECKLIST.md +57 -57
- package/vendor/Server/Skills/rn-library-known-issue-check/references/INSPECTION_GUIDE.md +99 -99
- package/vendor/Server/Skills/rn-library-known-issue-check/references/PRESCREEN_GUIDE.md +64 -64
- package/vendor/Server/Skills/rn-library-known-issue-check/references/SOURCE_PREP_GUIDE.md +74 -74
- package/vendor/Server/Skills/rn-library-known-issue-check/scripts/validate-known-issue-report.py +164 -164
- package/vendor/Server/Skills/rn-library-memory-leak-check/SKILL.md +356 -339
- package/vendor/Server/Skills/rn-library-memory-leak-check/assets/REPORT_TEMPLATE.md +85 -83
- package/vendor/Server/Skills/rn-library-memory-leak-check/references/CHECKLIST.md +905 -859
- package/vendor/Server/Skills/rn-library-memory-leak-check/references/HARMONY_CODE_PATTERNS.md +124 -122
- package/vendor/Server/Skills/rn-library-memory-leak-check/scripts/scan_harmony_code.py +287 -279
- package/vendor/Server/Skills/rn-library-stability-check/SKILL.md +273 -273
- package/vendor/Server/Skills/rn-library-stability-check/assets/REPORT_TEMPLATE.md +129 -129
- package/vendor/Server/Skills/rn-library-stability-check/references/CHECKLIST.md +581 -581
- package/vendor/Server/Skills/rn-library-stability-check/references/SCORING_RULES.md +138 -138
- package/vendor/Server/Skills/rn-library-stability-check/scripts/scan-harmony-code.py +168 -168
- package/vendor/Server/Skills/rn-library-test-coverage-check/SKILL.md +526 -506
- package/vendor/Server/Skills/rn-library-test-coverage-check/references/CHECKLIST.md +321 -280
- package/vendor/Server/Skills/rn-library-test-coverage-check/references/DEMO_LOCATION.md +221 -221
- package/vendor/Server/Skills/rn-library-test-coverage-check/references/REPORT_TEMPLATE.md +220 -209
- package/vendor/Server/Skills/rn-library-test-coverage-check/references/SCRIPT_USAGE.md +325 -325
- package/vendor/Server/Skills/rn-ohos-xts-generator/SKILL.md +279 -279
- package/vendor/Server/Skills/rn-ohos-xts-generator/assets/TEST_FILE_TEMPLATES.md +404 -404
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/BUILD_TROUBLESHOOTING.md +185 -185
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/BUILD_WORKFLOW.md +265 -265
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/COMMON_CONFIG.md +189 -189
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/CONFIG_GUIDE.md +203 -203
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/COVERAGE_ANALYZER.md +147 -147
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/DESIGN_DOC_GUIDE.md +148 -148
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/GENERATION_FLOW.md +165 -165
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/GENERATION_STRATEGY.md +195 -195
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/HARMONY_SCANNER.md +249 -249
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/JEST_FRAMEWORK.md +235 -235
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/PLATFORM_COMPAT.md +161 -161
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/RN_TEST_PATTERNS.md +413 -413
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/SOURCE_PARSER.md +235 -235
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/TEST_CONVENTIONS.md +245 -245
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/TROUBLESHOOTING.md +282 -282
- package/vendor/Server/Skills/rn-ohos-xts-generator/references/USAGE_GUIDE.md +251 -251
- package/vendor/Server/Skills/rnoh-cptf-api-test/SKILL.md +469 -469
- package/vendor/Server/Skills/rnoh-cptf-api-test/assets/CPTF_TEST_TEMPLATE.md +310 -310
- package/vendor/Server/Skills/rnoh-cptf-api-test/assets/DEMO_PAGE_TEMPLATE.md +303 -303
- package/vendor/Server/Skills/rnoh-cptf-api-test/references/CPTF_TEST_GENERATION_GUIDE.md +421 -421
- package/vendor/Server/Skills/rnoh-cptf-api-test/references/DEMO_GENERATION_GUIDE.md +358 -358
- package/vendor/Server/Skills/rnoh-cptf-api-test/references/QUALITY_CHECKLIST.md +114 -114
- package/vendor/Server/Skills/rnoh-cptf-api-test/references/SPEC_PARSING_GUIDE.md +274 -274
- package/vendor/Server/Skills/rnoh-cptf-api-test/scripts/validate-rnoh-cptf-api-test.sh +185 -185
- package/vendor/Server/Skills/rnoh-cptf-demo-test/SKILL.md +191 -191
- package/vendor/Server/Skills/rnoh-cptf-demo-test/assets/TEST_TEMPLATE.md +216 -216
- package/vendor/Server/Skills/rnoh-cptf-demo-test/references/CPTF_SETUP.md +107 -107
- package/vendor/Server/Skills/rnoh-cptf-demo-test/references/DEMO_ANALYSIS.md +120 -120
- package/vendor/Server/Skills/rnoh-cptf-demo-test/scripts/validate-rnoh-cptf-test.sh +108 -108
- package/vendor/Server/Skills/rnoh-cptf-test-run/SKILL.md +237 -237
- package/vendor/Server/Skills/rnoh-cptf-test-run/references/DEBUG_PLAYBOOK.md +261 -261
- package/vendor/Server/Skills/rnoh-cptf-test-run/scripts/validate-run-env.sh +112 -112
- package/vendor/Server/Skills/rnoh-lib-code-adapt/SKILL.md +497 -497
- package/vendor/Server/Skills/rnoh-lib-code-adapt/references/adapt-checklist.md +270 -270
- package/vendor/Server/Skills/rnoh-lib-code-adapt/references/api-migration-checklist.md +164 -164
- package/vendor/Server/Skills/rnoh-lib-code-adapt/references/common-compile-errors.md +556 -556
- package/vendor/Server/Skills/rnoh-lib-code-adapt/references/deveco-cli-tools.md +459 -459
- package/vendor/Server/Skills/rnoh-lib-code-adapt/references/edge-cases.md +65 -65
- package/vendor/Server/Skills/rnoh-lib-code-adapt/references/har-tgz-build.md +512 -512
- package/vendor/Server/Skills/rnoh-lib-code-adapt/references/version-compat-matrix.md +132 -132
- package/vendor/Server/Skills/rnoh-lib-code-adapt/scripts/auto-integrate.sh +424 -424
- package/vendor/Server/Skills/rnoh-lib-demo-coverage/SKILL.md +137 -137
- package/vendor/Server/Skills/rnoh-lib-demo-create/SKILL.md +306 -306
- package/vendor/Server/Skills/rnoh-lib-demo-create/assets/DEMO_PAGE_TEMPLATE.md +485 -485
- package/vendor/Server/Skills/rnoh-lib-demo-create/assets/INDEX_TEMPLATE.md +172 -172
- package/vendor/Server/Skills/rnoh-lib-demo-create/references/DEMO_CODE_RULES.md +422 -422
- package/vendor/Server/Skills/rnoh-lib-demo-create/references/QUALITY_CHECKLIST.md +95 -95
- package/vendor/Server/Skills/rnoh-lib-demo-create/references/SOURCE_EXPLORATION.md +169 -169
- package/vendor/Server/Skills/rnoh-lib-demo-doc/SKILL.md +554 -554
- package/vendor/Server/Skills/rnoh-lib-demo-doc/assets/DEMO_DOC_TEMPLATE.md +106 -106
- package/vendor/Server/Skills/rnoh-lib-demo-doc/references/COVERAGE_INCREMENTAL.md +216 -216
- package/vendor/Server/Skills/rnoh-lib-demo-doc/references/DEMO_DESIGN_RULES.md +413 -413
- package/vendor/Server/Skills/rnoh-lib-demo-doc/references/OUTPUT_FORMAT.md +269 -269
- package/vendor/Server/Skills/rnoh-lib-demo-doc/references/QUALITY_CHECKLIST.md +98 -98
- package/vendor/Server/Skills/rnoh-lib-func-test/SKILL.md +337 -337
- package/vendor/Server/Skills/rnoh-lib-rnt-search/SKILL.md +722 -722
- package/vendor/Server/Skills/rnoh-lib-rnt-search/assets/PORT_REPORT_TEMPLATE.md +219 -219
- package/vendor/Server/Skills/rnoh-lib-rnt-search/references/DEMO_PORTING_GUIDE.md +345 -345
- package/vendor/Server/Skills/rnoh-lib-rnt-search/references/PORT_VERIFICATION.md +269 -269
- package/vendor/Server/Skills/rnoh-lib-rnt-search/references/RNT_PROJECT_STRUCTURE.md +173 -173
- package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/analyze-demo-deps.cjs +267 -267
- package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/detect-rnoh-version.cjs +174 -174
- package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/find-rnt-demo.sh +111 -111
- package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/port-demo.sh +186 -186
- package/vendor/Server/Skills/rnoh-lib-rnt-search/scripts/read-lib-meta.cjs +150 -150
- package/vendor/Server/Skills/rnoh-lib-test-align/SKILL.md +296 -296
- package/vendor/Server/Skills/rnoh-lib-test-align/references/jest-troubleshooting.md +371 -371
- package/vendor/Server/Skills/rnoh-lib-test-align/references/port-test-demo-guide.md +212 -212
- package/vendor/Server/Skills/rnoh-lib-test-align/references/runtime-troubleshooting.md +345 -345
- package/vendor/Server/Skills/rnoh-lib-test-align/references/unit-test-template.md +223 -223
- package/vendor/Server/Skills/rnoh-lib-test-align/scripts/port-test-demo.sh +1053 -1053
- package/vendor/Server/Skills/rnoh-lib-version-diff/SKILL.md +295 -255
- package/vendor/Server/Skills/rnoh-lib-version-diff/references/OHOS_ADAPTATION.md +82 -77
- package/vendor/Server/Skills/rnoh-lib-version-diff/references/OHOS_API_LOOKUP.md +224 -224
- package/vendor/Server/Skills/rnoh-lib-version-diff/references/script-reference.md +175 -174
- package/vendor/Server/Skills/rnoh-lib-version-diff/scripts/detect-upstream-version.js +967 -967
- package/vendor/Server/Skills/rnoh-lib-version-diff/scripts/generate-diff.js +1798 -1798
- package/vendor/Server/Skills/rnoh-lib-version-diff/scripts/package.json +5 -5
- package/vendor/Server/Skills/rnoh-lib-version-diff/templates/report-template.md +180 -137
- package/vendor/Server/Skills/rnoh-lib-xts-coverage/SKILL.md +145 -145
- package/vendor/Server/Skills/skill-generator/SKILL.md +365 -365
- package/vendor/Server/Skills/skill-generator/assets/SKILL_TEMPLATE.md +183 -183
- package/vendor/Server/Skills/skill-generator/references/COMPLIANCE_CHECKLIST.md +82 -82
- package/vendor/Server/Skills/skill-generator/references/KB_QUERY_GUIDE.md +110 -110
- package/vendor/Server/Skills/skill-generator/references/MCP_TOOL_DISCOVERY.md +122 -122
- package/vendor/Server/Skills/skill-generator/references/SKILL_SPEC.md +121 -121
- package/vendor/Server/Skills/skill-generator/scripts/validate-skill.cjs +259 -259
- package/vendor/Server/Skills/task-analysis/SKILL.md +234 -234
- package/vendor/Server/Skills/task-analysis/assets/OUTPUT_EXAMPLES.md +160 -160
- package/vendor/Server/Skills/task-analysis/references/ACCEPTANCE_CRITERIA_GUIDE.md +190 -190
- package/vendor/Server/Skills/task-analysis/references/ANALYSIS_SCHEMA.md +224 -224
- package/vendor/Server/Skills/task-analysis/references/INTEGRATION_CONTEXT.md +162 -162
- package/vendor/Server/Skills/task-analysis/references/LESSONS_LEARNED.md +55 -55
- package/vendor/Server/Skills/task-analysis/references/REPLAN_CONTEXT_GUIDE.md +126 -126
- package/vendor/Server/Skills/task-analysis/scripts/validate-analysis-output.sh +256 -256
- package/vendor/Server/Skills/task-decomposition/SKILL.md +528 -528
- package/vendor/Server/Skills/task-decomposition/assets/OUTPUT_EXAMPLES.md +451 -451
- package/vendor/Server/Skills/task-decomposition/references/ACCEPTANCE_CRITERIA_GUIDE.md +179 -179
- package/vendor/Server/Skills/task-decomposition/references/DEPENDENCY_GRAPH_GUIDE.md +152 -152
- package/vendor/Server/Skills/task-decomposition/references/INTEGRATION_CONTEXT.md +175 -175
- package/vendor/Server/Skills/task-decomposition/references/REPLAN_CONTEXT_GUIDE.md +195 -195
- package/vendor/Server/Skills/task-decomposition/references/TASK_DECOMPOSITION_TEMPLATES.md +226 -226
- package/vendor/Server/Skills/task-decomposition/scripts/list-available-skills.cjs +263 -263
- package/vendor/Server/Skills/task-decomposition/scripts/skill-blacklist.json +29 -29
- package/vendor/Server/Skills/task-decomposition/scripts/validate-decomposition-output.cjs +376 -376
- package/vendor/Server/Skills/task-decomposition/scripts/validate-param-consistency.cjs +259 -259
- package/vendor/Server/Skills/task-decomposition/scripts/validate-specified-skills.cjs +216 -216
- package/vendor/Server/Skills/task-decomposition/scripts/validate-step-graph.cjs +424 -424
- package/vendor/Server/Skills/tpc-cpp-check/SKILL.md +427 -427
- package/vendor/Server/Skills/tpc-cpp-check/references/CHECKLIST.md +214 -214
- package/vendor/Server/Skills/tpc-cpp-check/references/HPKBUILD_GUIDE.md +235 -235
- package/vendor/Server/Skills/tpc-cpp-check/references/REPORT_TEMPLATE.md +250 -250
- package/vendor/Server/TestCheck/TestCheck.js +775 -775
- package/vendor/Server/TestCheck/index.js +11 -11
- package/vendor/Server/library/McpToolGuide.js +280 -280
- package/vendor/Server/library/StatsService.js +126 -126
- package/vendor/Server/library/cstTime.js +16 -16
- package/vendor/VERSION +3 -3
- package/workflows/pr-check.mjs +105 -105
- package/workflows/pr-push.mjs +192 -192
- package/vendor/Server/Agent/SkillSelector/types.js +0 -63
|
@@ -1,337 +1,337 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: rnoh-lib-func-test
|
|
3
|
-
description: >-
|
|
4
|
-
用于 RN 鸿蒙三方库升级:功能测试验证指引。
|
|
5
|
-
当用户已完成代码适配(rnoh-lib-code-adapt)和测试对齐(rnoh-lib-test-align),
|
|
6
|
-
需要生成功能测试清单、标注高风险场景、关联历史稳定性问题、
|
|
7
|
-
输出可执行的人工测试 checklist 时使用。
|
|
8
|
-
典型场景:用户说"适配完成了,帮我生成测试清单"、
|
|
9
|
-
"哪些功能需要重点测试"、"这次升级有哪些风险点"、
|
|
10
|
-
"帮我整理一个测试 checklist 给 QA"。
|
|
11
|
-
也适用于:单独分析某次版本升级的变更影响范围并生成测试建议、
|
|
12
|
-
根据历史稳定性修复案例预警可能复现的问题。
|
|
13
|
-
compatibility: 无特殊环境要求
|
|
14
|
-
allowed-tools: Read Grep Glob Bash
|
|
15
|
-
metadata:
|
|
16
|
-
version: "1.0.0"
|
|
17
|
-
---
|
|
18
|
-
|
|
19
|
-
# RN 鸿蒙三方库功能测试验证指引
|
|
20
|
-
|
|
21
|
-
这个 skill 是三方库升级适配流程的最后一步。目标是基于前序阶段的适配变更清单和测试用例,自动生成结构化的功能测试清单,标注高风险场景,关联历史稳定性问题,输出可执行的人工测试 checklist。
|
|
22
|
-
|
|
23
|
-
## 何时使用
|
|
24
|
-
|
|
25
|
-
- 用户已完成代码适配和测试对齐,需要生成功能测试清单。
|
|
26
|
-
- 用户想知道本次升级有哪些功能需要重点测试。
|
|
27
|
-
- 用户需要一份可交给 QA 的测试 checklist。
|
|
28
|
-
- 用户想了解升级后可能复现的历史稳定性问题。
|
|
29
|
-
- 用户想评估变更的影响范围和风险等级。
|
|
30
|
-
|
|
31
|
-
## 最小必要输入
|
|
32
|
-
|
|
33
|
-
- **必要**:适配变更清单(来自 rnoh-lib-code-adapt,记录改了哪些文件和内容)
|
|
34
|
-
- **有帮助**:diff patch 文件或变更摘要(来自 rnoh-lib-version-diff)
|
|
35
|
-
- **有帮助**:测试覆盖率报告(来自 rnoh-lib-test-align)
|
|
36
|
-
- **有帮助**:RNOH 版本信息(如 0.77→0.84)
|
|
37
|
-
|
|
38
|
-
如果用户没有适配变更清单,但有 diff patch 文件,可以从 diff 中提取变更清单。
|
|
39
|
-
如果什么都没有,引导用户先使用 rnoh-lib-version-diff 和 rnoh-lib-code-adapt。
|
|
40
|
-
|
|
41
|
-
## 工作流
|
|
42
|
-
|
|
43
|
-
### 第 1 步:提取变更影响范围
|
|
44
|
-
|
|
45
|
-
从适配变更清单和 diff 文件中,提取所有变更并分析其功能影响。
|
|
46
|
-
|
|
47
|
-
#### 变更影响分类
|
|
48
|
-
|
|
49
|
-
| 变更类型 | 功能影响 | 测试优先级 | 测试方式 |
|
|
50
|
-
|----------|---------|-----------|---------|
|
|
51
|
-
| 新增 API | 新功能可用 | 高 | 功能测试 |
|
|
52
|
-
| 修改 API 签名 | 调用方式变更 | 高 | 回归测试 |
|
|
53
|
-
| 删除 API | 旧功能不可用 | 高 | 兼容性测试 |
|
|
54
|
-
| 新增组件 Prop | 组件新属性 | 高 | 功能测试 |
|
|
55
|
-
| 修改组件行为 | 显示/交互变化 | 高 | 视觉+功能测试 |
|
|
56
|
-
| 原生层修改 | C++/ArkTS 变更 | 最高 | 稳定性+功能测试 |
|
|
57
|
-
| Codegen 产物变更 | TurboModule/Fabric 变更 | 最高 | 全量回归 |
|
|
58
|
-
| JS 层逻辑修改 | 业务逻辑变化 | 中 | 功能测试 |
|
|
59
|
-
| 依赖版本升级 | 传递性影响 | 中 | 回归测试 |
|
|
60
|
-
| 配置文件修改 | 构建配置变化 | 低 | 编译验证 |
|
|
61
|
-
|
|
62
|
-
#### 影响范围分析
|
|
63
|
-
|
|
64
|
-
对每个变更,回答以下问题:
|
|
65
|
-
|
|
66
|
-
1. **这个变更影响哪些功能?** — 列出受影响的功能点
|
|
67
|
-
2. **这个变更影响哪些组件?** — 列出受影响的组件
|
|
68
|
-
3. **这个变更是否影响生命周期?** — 初始化、渲染、销毁阶段
|
|
69
|
-
4. **这个变更是否涉及线程安全?** — 多线程访问、回调时序
|
|
70
|
-
5. **这个变更是否影响内存管理?** — 资源分配、释放
|
|
71
|
-
|
|
72
|
-
### 第 2 步:生成功能测试清单
|
|
73
|
-
|
|
74
|
-
基于变更影响范围,生成结构化的功能测试清单。
|
|
75
|
-
|
|
76
|
-
#### 测试清单结构
|
|
77
|
-
|
|
78
|
-
```markdown
|
|
79
|
-
# 功能测试清单
|
|
80
|
-
|
|
81
|
-
## 基本信息
|
|
82
|
-
- 三方库名称: <lib-name>
|
|
83
|
-
- 升级版本: <old-version> → <new-version>
|
|
84
|
-
- RNOH 版本: <old-rnoh> → <new-rnoh>
|
|
85
|
-
- 生成日期: <date>
|
|
86
|
-
|
|
87
|
-
## 测试清单
|
|
88
|
-
|
|
89
|
-
### 一、新增功能测试
|
|
90
|
-
|
|
91
|
-
#### 1.1 [P0] 新增 API: getXxx()
|
|
92
|
-
- **变更来源**: v7.4.0 新增
|
|
93
|
-
- **测试步骤**:
|
|
94
|
-
1. 调用 `NativeModule.getXxx(param)`
|
|
95
|
-
2. 验证返回值类型和内容正确
|
|
96
|
-
3. 测试异常参数(null/undefined/错误类型)
|
|
97
|
-
4. 测试并发调用
|
|
98
|
-
- **预期结果**: 正常返回结果,异常参数有合理错误处理
|
|
99
|
-
- **风险等级**: 🔴 高
|
|
100
|
-
|
|
101
|
-
#### 1.2 [P0] 新增组件 Prop: renderMode
|
|
102
|
-
- **变更来源**: v7.4.0 新增
|
|
103
|
-
- **测试步骤**:
|
|
104
|
-
1. 设置 `renderMode="automatic"`
|
|
105
|
-
2. 设置 `renderMode="hardware"`
|
|
106
|
-
3. 切换 renderMode 后验证渲染效果
|
|
107
|
-
4. 不设置 renderMode 验证默认值
|
|
108
|
-
- **预期结果**: 不同模式渲染正确,切换无闪烁
|
|
109
|
-
- **风险等级**: 🟡 中
|
|
110
|
-
|
|
111
|
-
### 二、回归测试
|
|
112
|
-
|
|
113
|
-
#### 2.1 [P0] 基本功能回归
|
|
114
|
-
- **测试范围**: 所有已有功能
|
|
115
|
-
- **测试步骤**:
|
|
116
|
-
1. 组件基本渲染
|
|
117
|
-
2. 所有已有 Props 验证
|
|
118
|
-
3. 所有已有事件回调验证
|
|
119
|
-
4. 组件挂载/卸载
|
|
120
|
-
- **预期结果**: 与升级前行为一致
|
|
121
|
-
- **风险等级**: 🔴 高
|
|
122
|
-
|
|
123
|
-
#### 2.2 [P1] 性能回归
|
|
124
|
-
- **测试步骤**:
|
|
125
|
-
1. 大量组件同时渲染
|
|
126
|
-
2. 频繁 props 更新
|
|
127
|
-
3. 长时间运行后内存占用
|
|
128
|
-
4. 动画帧率
|
|
129
|
-
- **预期结果**: 性能无明显退化
|
|
130
|
-
- **风险等级**: 🟡 中
|
|
131
|
-
|
|
132
|
-
### 三、稳定性测试
|
|
133
|
-
|
|
134
|
-
#### 3.1 [P0] 页面销毁后回调
|
|
135
|
-
- **变更来源**: 原生层修改
|
|
136
|
-
- **测试步骤**:
|
|
137
|
-
1. 进入组件页面
|
|
138
|
-
2. 立即返回(触发销毁)
|
|
139
|
-
3. 检查是否有崩溃/泄漏
|
|
140
|
-
4. 重复 10 次
|
|
141
|
-
- **预期结果**: 无崩溃,无内存泄漏
|
|
142
|
-
- **风险等级**: 🔴 高
|
|
143
|
-
|
|
144
|
-
#### 3.2 [P0] 快速切换页面
|
|
145
|
-
- **测试步骤**:
|
|
146
|
-
1. 快速在组件页面和其他页面间切换
|
|
147
|
-
2. 每次切换间隔 < 500ms
|
|
148
|
-
3. 持续 30 秒
|
|
149
|
-
4. 检查应用状态
|
|
150
|
-
- **预期结果**: 无崩溃,无卡死
|
|
151
|
-
- **风险等级**: 🔴 高
|
|
152
|
-
|
|
153
|
-
### 四、兼容性测试
|
|
154
|
-
|
|
155
|
-
#### 4.1 [P1] React 版本兼容
|
|
156
|
-
- **变更来源**: React 18→19 升级
|
|
157
|
-
- **测试步骤**:
|
|
158
|
-
1. 验证 Hooks 正常工作
|
|
159
|
-
2. 验证 Refs 正常工作
|
|
160
|
-
3. 验证 StrictMode 无警告
|
|
161
|
-
- **预期结果**: 无兼容性问题
|
|
162
|
-
- **风险等级**: 🟡 中
|
|
163
|
-
```
|
|
164
|
-
|
|
165
|
-
### 第 3 步:标注高风险场景
|
|
166
|
-
|
|
167
|
-
根据变更类型和历史经验,标注需要重点关注的高风险场景。
|
|
168
|
-
|
|
169
|
-
#### 高风险场景判断标准
|
|
170
|
-
|
|
171
|
-
| 判断维度 | 高风险信号 |
|
|
172
|
-
|----------|-----------|
|
|
173
|
-
| 变更位置 | 涉及 C++ 框架层、TurboModule 实现、Fabric 组件实例 |
|
|
174
|
-
| 变更时机 | 涉及生命周期(初始化、销毁、重载) |
|
|
175
|
-
| 变更性质 | 涉及线程同步、内存管理、资源释放 |
|
|
176
|
-
| 变更规模 | 原生层修改超过 100 行 |
|
|
177
|
-
| 版本跨度 | 跨大版本升级(如 0.72→0.84) |
|
|
178
|
-
| 历史问题 | 该模块曾有稳定性修复记录 |
|
|
179
|
-
|
|
180
|
-
#### 高风险场景清单模板
|
|
181
|
-
|
|
182
|
-
```markdown
|
|
183
|
-
## ⚠️ 高风险场景预警
|
|
184
|
-
|
|
185
|
-
### 🔴 风险1: TurboModule 销毁后回调
|
|
186
|
-
- **触发条件**: 页面快速退出时 TurboModule 异步回调仍在执行
|
|
187
|
-
- **关联变更**: NativeXxxModule.ts 新增异步方法
|
|
188
|
-
- **历史参考**: 0.77 分支曾有类似 UAF 修复
|
|
189
|
-
- **建议**: 重点测试快速退出场景,检查 FaultLog
|
|
190
|
-
|
|
191
|
-
### 🔴 风险2: 组件内存泄漏
|
|
192
|
-
- **触发条件**: 组件频繁挂载/卸载
|
|
193
|
-
- **关联变更**: 新增 Props 导致 ArkUI 节点持有额外引用
|
|
194
|
-
- **历史参考**: 0.82 分支曾有组件实例未释放修复
|
|
195
|
-
- **建议**: 使用 HiTrace 工具监控内存,重复挂载卸载 20+ 次
|
|
196
|
-
|
|
197
|
-
### 🟡 风险3: 动画帧率退化
|
|
198
|
-
- **触发条件**: 多个动画组件同时运行
|
|
199
|
-
- **关联变更**: renderMode 新增可能影响渲染路径
|
|
200
|
-
- **建议**: 对比升级前后的帧率数据
|
|
201
|
-
```
|
|
202
|
-
|
|
203
|
-
### 第 4 步:关联历史稳定性问题
|
|
204
|
-
|
|
205
|
-
检查工作区中的历史稳定性修复文档,预警可能复现的问题。
|
|
206
|
-
|
|
207
|
-
#### 历史问题检索路径
|
|
208
|
-
|
|
209
|
-
优先查看以下文档(如果工作区中存在):
|
|
210
|
-
|
|
211
|
-
1. `docs/开发者指南/05-分发运维/稳定性历史修复/0.72稳定性修复汇总/`
|
|
212
|
-
2. `docs/开发者指南/05-分发运维/稳定性历史修复/0.77稳定性修复汇总/`
|
|
213
|
-
3. `docs/开发者指南/05-分发运维/稳定性历史修复/0.82稳定性修复汇总/`
|
|
214
|
-
4. `docs/开发者指南/05-分发运维/稳定性问题介绍/稳定性案例.md`
|
|
215
|
-
|
|
216
|
-
#### 检索策略
|
|
217
|
-
|
|
218
|
-
1. 根据变更涉及的模块名称,在历史修复文档中搜索相同模块
|
|
219
|
-
2. 根据变更涉及的变更类型(UAF、泄漏、死锁等),在历史修复文档中搜索相同类型
|
|
220
|
-
3. 只检索用户当前版本之后的历史修复(与 rnoh-stability-triage 的版本边界规则一致)
|
|
221
|
-
4. 对找到的历史问题,判断当前变更是否可能复现
|
|
222
|
-
|
|
223
|
-
#### 关联报告格式
|
|
224
|
-
|
|
225
|
-
```markdown
|
|
226
|
-
## 历史稳定性问题关联
|
|
227
|
-
|
|
228
|
-
### 已检查的历史修复
|
|
229
|
-
|
|
230
|
-
| 版本分支 | 模块 | 问题类型 | 是否可能复现 | 说明 |
|
|
231
|
-
|----------|------|---------|-------------|------|
|
|
232
|
-
| 0.77 | AnimatedModule | UAF | ⚠️ 可能 | 本次新增异步回调,存在同类风险 |
|
|
233
|
-
| 0.82 | ImageComponent | 内存泄漏 | ✅ 低风险 | 本次未修改图片相关代码 |
|
|
234
|
-
| 0.82 | FontRegistry | 空指针 | ✅ 低风险 | 本次未修改字体相关代码 |
|
|
235
|
-
|
|
236
|
-
### 建议重点关注的历史修复
|
|
237
|
-
|
|
238
|
-
1. **0.77: AnimatedModule UAF 修复** (PR #xxx)
|
|
239
|
-
- 问题: VSync 回调在模块销毁后执行
|
|
240
|
-
- 当前风险: 本次新增的异步方法有类似时序风险
|
|
241
|
-
- 测试建议: 重点测试快速退出场景
|
|
242
|
-
```
|
|
243
|
-
|
|
244
|
-
### 第 5 步:输出最终测试 checklist
|
|
245
|
-
|
|
246
|
-
将前 4 步的分析结果整合为一份可执行的人工测试 checklist。
|
|
247
|
-
|
|
248
|
-
#### Checklist 格式
|
|
249
|
-
|
|
250
|
-
```markdown
|
|
251
|
-
# 人工功能测试 Checklist
|
|
252
|
-
|
|
253
|
-
## 测试环境
|
|
254
|
-
- 设备: ___________
|
|
255
|
-
- RNOH 版本: <version>
|
|
256
|
-
- 三方库版本: <old> → <new>
|
|
257
|
-
- 测试人员: ___________
|
|
258
|
-
- 测试日期: ___________
|
|
259
|
-
|
|
260
|
-
## 测试项
|
|
261
|
-
|
|
262
|
-
### P0 - 必须通过 (阻塞发布)
|
|
263
|
-
|
|
264
|
-
- [ ] 1. 新增 API getXxx() 正常调用
|
|
265
|
-
- [ ] 2. 新增 Prop renderMode 渲染正确
|
|
266
|
-
- [ ] 3. 基本功能回归:组件正常渲染
|
|
267
|
-
- [ ] 4. 基本功能回归:已有 Props 正常工作
|
|
268
|
-
- [ ] 5. 基本功能回归:已有事件回调正常触发
|
|
269
|
-
- [ ] 6. 稳定性:页面快速退出无崩溃 (重复 10 次)
|
|
270
|
-
- [ ] 7. 稳定性:快速切换页面无崩溃 (持续 30s)
|
|
271
|
-
- [ ] 8. 稳定性:组件挂载/卸载无内存泄漏 (重复 20 次)
|
|
272
|
-
|
|
273
|
-
### P1 - 应该通过 (建议修复)
|
|
274
|
-
|
|
275
|
-
- [ ] 9. 性能:大量组件渲染无明显卡顿
|
|
276
|
-
- [ ] 10. 性能:动画帧率无退化
|
|
277
|
-
- [ ] 11. 兼容性:React 19 Hooks 正常工作
|
|
278
|
-
- [ ] 12. 兼容性:StrictMode 无警告
|
|
279
|
-
|
|
280
|
-
### P2 - 建议验证
|
|
281
|
-
|
|
282
|
-
- [ ] 13. 异常参数处理合理
|
|
283
|
-
- [ ] 14. 默认值行为正确
|
|
284
|
-
- [ ] 15. 与其他三方库共存无冲突
|
|
285
|
-
|
|
286
|
-
## 测试结果汇总
|
|
287
|
-
|
|
288
|
-
| 优先级 | 总数 | 通过 | 失败 | 阻塞 |
|
|
289
|
-
|--------|------|------|------|------|
|
|
290
|
-
| P0 | 8 | __ | __ | __ |
|
|
291
|
-
| P1 | 4 | __ | __ | __ |
|
|
292
|
-
| P2 | 3 | __ | __ | __ |
|
|
293
|
-
|
|
294
|
-
## 问题记录
|
|
295
|
-
|
|
296
|
-
| # | 测试项 | 问题描述 | 严重程度 | 状态 |
|
|
297
|
-
|---|--------|---------|---------|------|
|
|
298
|
-
| 1 | | | | |
|
|
299
|
-
|
|
300
|
-
## 签字确认
|
|
301
|
-
|
|
302
|
-
- 测试人员: ___________ 日期: _________
|
|
303
|
-
- 开发人员: ___________ 日期: _________
|
|
304
|
-
```
|
|
305
|
-
|
|
306
|
-
## 常见边界情况
|
|
307
|
-
|
|
308
|
-
### 1. 没有适配变更清单
|
|
309
|
-
|
|
310
|
-
如果用户没有结构化的适配变更清单:
|
|
311
|
-
- 从 diff patch 文件中提取变更文件列表
|
|
312
|
-
- 用 `git diff` 或读取 patch 文件内容自行分析变更
|
|
313
|
-
- 生成简化版测试清单(基于文件变更而非逐项变更)
|
|
314
|
-
|
|
315
|
-
### 2. 跨大版本升级
|
|
316
|
-
|
|
317
|
-
跨大版本升级(如 0.72→0.84)的测试清单需要额外关注:
|
|
318
|
-
- 中间每个版本的不兼容变更都可能有功能影响
|
|
319
|
-
- 需要做全量回归测试而非增量测试
|
|
320
|
-
- 历史稳定性问题检索范围更大
|
|
321
|
-
|
|
322
|
-
### 3. 纯 JS 层升级
|
|
323
|
-
|
|
324
|
-
如果变更全部是 JS 层(无原生层修改):
|
|
325
|
-
- 风险等级整体降低
|
|
326
|
-
- 重点关注 JS 逻辑正确性和 API 兼容性
|
|
327
|
-
- 可以减少稳定性测试项
|
|
328
|
-
|
|
329
|
-
## 输出物
|
|
330
|
-
|
|
331
|
-
完成本 skill 后,产出一份完整的功能测试 checklist 文档(Markdown 格式),包含:
|
|
332
|
-
|
|
333
|
-
1. **变更影响范围分析** — 每个变更的功能影响和测试优先级
|
|
334
|
-
2. **功能测试清单** — 按 P0/P1/P2 分级的测试项
|
|
335
|
-
3. **高风险场景预警** — 标注需要重点关注的场景及原因
|
|
336
|
-
4. **历史稳定性问题关联** — 可能复现的历史问题及测试建议
|
|
337
|
-
5. **可执行 checklist** — 可直接打印给测试人员使用的勾选清单
|
|
1
|
+
---
|
|
2
|
+
name: rnoh-lib-func-test
|
|
3
|
+
description: >-
|
|
4
|
+
用于 RN 鸿蒙三方库升级:功能测试验证指引。
|
|
5
|
+
当用户已完成代码适配(rnoh-lib-code-adapt)和测试对齐(rnoh-lib-test-align),
|
|
6
|
+
需要生成功能测试清单、标注高风险场景、关联历史稳定性问题、
|
|
7
|
+
输出可执行的人工测试 checklist 时使用。
|
|
8
|
+
典型场景:用户说"适配完成了,帮我生成测试清单"、
|
|
9
|
+
"哪些功能需要重点测试"、"这次升级有哪些风险点"、
|
|
10
|
+
"帮我整理一个测试 checklist 给 QA"。
|
|
11
|
+
也适用于:单独分析某次版本升级的变更影响范围并生成测试建议、
|
|
12
|
+
根据历史稳定性修复案例预警可能复现的问题。
|
|
13
|
+
compatibility: 无特殊环境要求
|
|
14
|
+
allowed-tools: Read Grep Glob Bash
|
|
15
|
+
metadata:
|
|
16
|
+
version: "1.0.0"
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
# RN 鸿蒙三方库功能测试验证指引
|
|
20
|
+
|
|
21
|
+
这个 skill 是三方库升级适配流程的最后一步。目标是基于前序阶段的适配变更清单和测试用例,自动生成结构化的功能测试清单,标注高风险场景,关联历史稳定性问题,输出可执行的人工测试 checklist。
|
|
22
|
+
|
|
23
|
+
## 何时使用
|
|
24
|
+
|
|
25
|
+
- 用户已完成代码适配和测试对齐,需要生成功能测试清单。
|
|
26
|
+
- 用户想知道本次升级有哪些功能需要重点测试。
|
|
27
|
+
- 用户需要一份可交给 QA 的测试 checklist。
|
|
28
|
+
- 用户想了解升级后可能复现的历史稳定性问题。
|
|
29
|
+
- 用户想评估变更的影响范围和风险等级。
|
|
30
|
+
|
|
31
|
+
## 最小必要输入
|
|
32
|
+
|
|
33
|
+
- **必要**:适配变更清单(来自 rnoh-lib-code-adapt,记录改了哪些文件和内容)
|
|
34
|
+
- **有帮助**:diff patch 文件或变更摘要(来自 rnoh-lib-version-diff)
|
|
35
|
+
- **有帮助**:测试覆盖率报告(来自 rnoh-lib-test-align)
|
|
36
|
+
- **有帮助**:RNOH 版本信息(如 0.77→0.84)
|
|
37
|
+
|
|
38
|
+
如果用户没有适配变更清单,但有 diff patch 文件,可以从 diff 中提取变更清单。
|
|
39
|
+
如果什么都没有,引导用户先使用 rnoh-lib-version-diff 和 rnoh-lib-code-adapt。
|
|
40
|
+
|
|
41
|
+
## 工作流
|
|
42
|
+
|
|
43
|
+
### 第 1 步:提取变更影响范围
|
|
44
|
+
|
|
45
|
+
从适配变更清单和 diff 文件中,提取所有变更并分析其功能影响。
|
|
46
|
+
|
|
47
|
+
#### 变更影响分类
|
|
48
|
+
|
|
49
|
+
| 变更类型 | 功能影响 | 测试优先级 | 测试方式 |
|
|
50
|
+
|----------|---------|-----------|---------|
|
|
51
|
+
| 新增 API | 新功能可用 | 高 | 功能测试 |
|
|
52
|
+
| 修改 API 签名 | 调用方式变更 | 高 | 回归测试 |
|
|
53
|
+
| 删除 API | 旧功能不可用 | 高 | 兼容性测试 |
|
|
54
|
+
| 新增组件 Prop | 组件新属性 | 高 | 功能测试 |
|
|
55
|
+
| 修改组件行为 | 显示/交互变化 | 高 | 视觉+功能测试 |
|
|
56
|
+
| 原生层修改 | C++/ArkTS 变更 | 最高 | 稳定性+功能测试 |
|
|
57
|
+
| Codegen 产物变更 | TurboModule/Fabric 变更 | 最高 | 全量回归 |
|
|
58
|
+
| JS 层逻辑修改 | 业务逻辑变化 | 中 | 功能测试 |
|
|
59
|
+
| 依赖版本升级 | 传递性影响 | 中 | 回归测试 |
|
|
60
|
+
| 配置文件修改 | 构建配置变化 | 低 | 编译验证 |
|
|
61
|
+
|
|
62
|
+
#### 影响范围分析
|
|
63
|
+
|
|
64
|
+
对每个变更,回答以下问题:
|
|
65
|
+
|
|
66
|
+
1. **这个变更影响哪些功能?** — 列出受影响的功能点
|
|
67
|
+
2. **这个变更影响哪些组件?** — 列出受影响的组件
|
|
68
|
+
3. **这个变更是否影响生命周期?** — 初始化、渲染、销毁阶段
|
|
69
|
+
4. **这个变更是否涉及线程安全?** — 多线程访问、回调时序
|
|
70
|
+
5. **这个变更是否影响内存管理?** — 资源分配、释放
|
|
71
|
+
|
|
72
|
+
### 第 2 步:生成功能测试清单
|
|
73
|
+
|
|
74
|
+
基于变更影响范围,生成结构化的功能测试清单。
|
|
75
|
+
|
|
76
|
+
#### 测试清单结构
|
|
77
|
+
|
|
78
|
+
```markdown
|
|
79
|
+
# 功能测试清单
|
|
80
|
+
|
|
81
|
+
## 基本信息
|
|
82
|
+
- 三方库名称: <lib-name>
|
|
83
|
+
- 升级版本: <old-version> → <new-version>
|
|
84
|
+
- RNOH 版本: <old-rnoh> → <new-rnoh>
|
|
85
|
+
- 生成日期: <date>
|
|
86
|
+
|
|
87
|
+
## 测试清单
|
|
88
|
+
|
|
89
|
+
### 一、新增功能测试
|
|
90
|
+
|
|
91
|
+
#### 1.1 [P0] 新增 API: getXxx()
|
|
92
|
+
- **变更来源**: v7.4.0 新增
|
|
93
|
+
- **测试步骤**:
|
|
94
|
+
1. 调用 `NativeModule.getXxx(param)`
|
|
95
|
+
2. 验证返回值类型和内容正确
|
|
96
|
+
3. 测试异常参数(null/undefined/错误类型)
|
|
97
|
+
4. 测试并发调用
|
|
98
|
+
- **预期结果**: 正常返回结果,异常参数有合理错误处理
|
|
99
|
+
- **风险等级**: 🔴 高
|
|
100
|
+
|
|
101
|
+
#### 1.2 [P0] 新增组件 Prop: renderMode
|
|
102
|
+
- **变更来源**: v7.4.0 新增
|
|
103
|
+
- **测试步骤**:
|
|
104
|
+
1. 设置 `renderMode="automatic"`
|
|
105
|
+
2. 设置 `renderMode="hardware"`
|
|
106
|
+
3. 切换 renderMode 后验证渲染效果
|
|
107
|
+
4. 不设置 renderMode 验证默认值
|
|
108
|
+
- **预期结果**: 不同模式渲染正确,切换无闪烁
|
|
109
|
+
- **风险等级**: 🟡 中
|
|
110
|
+
|
|
111
|
+
### 二、回归测试
|
|
112
|
+
|
|
113
|
+
#### 2.1 [P0] 基本功能回归
|
|
114
|
+
- **测试范围**: 所有已有功能
|
|
115
|
+
- **测试步骤**:
|
|
116
|
+
1. 组件基本渲染
|
|
117
|
+
2. 所有已有 Props 验证
|
|
118
|
+
3. 所有已有事件回调验证
|
|
119
|
+
4. 组件挂载/卸载
|
|
120
|
+
- **预期结果**: 与升级前行为一致
|
|
121
|
+
- **风险等级**: 🔴 高
|
|
122
|
+
|
|
123
|
+
#### 2.2 [P1] 性能回归
|
|
124
|
+
- **测试步骤**:
|
|
125
|
+
1. 大量组件同时渲染
|
|
126
|
+
2. 频繁 props 更新
|
|
127
|
+
3. 长时间运行后内存占用
|
|
128
|
+
4. 动画帧率
|
|
129
|
+
- **预期结果**: 性能无明显退化
|
|
130
|
+
- **风险等级**: 🟡 中
|
|
131
|
+
|
|
132
|
+
### 三、稳定性测试
|
|
133
|
+
|
|
134
|
+
#### 3.1 [P0] 页面销毁后回调
|
|
135
|
+
- **变更来源**: 原生层修改
|
|
136
|
+
- **测试步骤**:
|
|
137
|
+
1. 进入组件页面
|
|
138
|
+
2. 立即返回(触发销毁)
|
|
139
|
+
3. 检查是否有崩溃/泄漏
|
|
140
|
+
4. 重复 10 次
|
|
141
|
+
- **预期结果**: 无崩溃,无内存泄漏
|
|
142
|
+
- **风险等级**: 🔴 高
|
|
143
|
+
|
|
144
|
+
#### 3.2 [P0] 快速切换页面
|
|
145
|
+
- **测试步骤**:
|
|
146
|
+
1. 快速在组件页面和其他页面间切换
|
|
147
|
+
2. 每次切换间隔 < 500ms
|
|
148
|
+
3. 持续 30 秒
|
|
149
|
+
4. 检查应用状态
|
|
150
|
+
- **预期结果**: 无崩溃,无卡死
|
|
151
|
+
- **风险等级**: 🔴 高
|
|
152
|
+
|
|
153
|
+
### 四、兼容性测试
|
|
154
|
+
|
|
155
|
+
#### 4.1 [P1] React 版本兼容
|
|
156
|
+
- **变更来源**: React 18→19 升级
|
|
157
|
+
- **测试步骤**:
|
|
158
|
+
1. 验证 Hooks 正常工作
|
|
159
|
+
2. 验证 Refs 正常工作
|
|
160
|
+
3. 验证 StrictMode 无警告
|
|
161
|
+
- **预期结果**: 无兼容性问题
|
|
162
|
+
- **风险等级**: 🟡 中
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
### 第 3 步:标注高风险场景
|
|
166
|
+
|
|
167
|
+
根据变更类型和历史经验,标注需要重点关注的高风险场景。
|
|
168
|
+
|
|
169
|
+
#### 高风险场景判断标准
|
|
170
|
+
|
|
171
|
+
| 判断维度 | 高风险信号 |
|
|
172
|
+
|----------|-----------|
|
|
173
|
+
| 变更位置 | 涉及 C++ 框架层、TurboModule 实现、Fabric 组件实例 |
|
|
174
|
+
| 变更时机 | 涉及生命周期(初始化、销毁、重载) |
|
|
175
|
+
| 变更性质 | 涉及线程同步、内存管理、资源释放 |
|
|
176
|
+
| 变更规模 | 原生层修改超过 100 行 |
|
|
177
|
+
| 版本跨度 | 跨大版本升级(如 0.72→0.84) |
|
|
178
|
+
| 历史问题 | 该模块曾有稳定性修复记录 |
|
|
179
|
+
|
|
180
|
+
#### 高风险场景清单模板
|
|
181
|
+
|
|
182
|
+
```markdown
|
|
183
|
+
## ⚠️ 高风险场景预警
|
|
184
|
+
|
|
185
|
+
### 🔴 风险1: TurboModule 销毁后回调
|
|
186
|
+
- **触发条件**: 页面快速退出时 TurboModule 异步回调仍在执行
|
|
187
|
+
- **关联变更**: NativeXxxModule.ts 新增异步方法
|
|
188
|
+
- **历史参考**: 0.77 分支曾有类似 UAF 修复
|
|
189
|
+
- **建议**: 重点测试快速退出场景,检查 FaultLog
|
|
190
|
+
|
|
191
|
+
### 🔴 风险2: 组件内存泄漏
|
|
192
|
+
- **触发条件**: 组件频繁挂载/卸载
|
|
193
|
+
- **关联变更**: 新增 Props 导致 ArkUI 节点持有额外引用
|
|
194
|
+
- **历史参考**: 0.82 分支曾有组件实例未释放修复
|
|
195
|
+
- **建议**: 使用 HiTrace 工具监控内存,重复挂载卸载 20+ 次
|
|
196
|
+
|
|
197
|
+
### 🟡 风险3: 动画帧率退化
|
|
198
|
+
- **触发条件**: 多个动画组件同时运行
|
|
199
|
+
- **关联变更**: renderMode 新增可能影响渲染路径
|
|
200
|
+
- **建议**: 对比升级前后的帧率数据
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
### 第 4 步:关联历史稳定性问题
|
|
204
|
+
|
|
205
|
+
检查工作区中的历史稳定性修复文档,预警可能复现的问题。
|
|
206
|
+
|
|
207
|
+
#### 历史问题检索路径
|
|
208
|
+
|
|
209
|
+
优先查看以下文档(如果工作区中存在):
|
|
210
|
+
|
|
211
|
+
1. `docs/开发者指南/05-分发运维/稳定性历史修复/0.72稳定性修复汇总/`
|
|
212
|
+
2. `docs/开发者指南/05-分发运维/稳定性历史修复/0.77稳定性修复汇总/`
|
|
213
|
+
3. `docs/开发者指南/05-分发运维/稳定性历史修复/0.82稳定性修复汇总/`
|
|
214
|
+
4. `docs/开发者指南/05-分发运维/稳定性问题介绍/稳定性案例.md`
|
|
215
|
+
|
|
216
|
+
#### 检索策略
|
|
217
|
+
|
|
218
|
+
1. 根据变更涉及的模块名称,在历史修复文档中搜索相同模块
|
|
219
|
+
2. 根据变更涉及的变更类型(UAF、泄漏、死锁等),在历史修复文档中搜索相同类型
|
|
220
|
+
3. 只检索用户当前版本之后的历史修复(与 rnoh-stability-triage 的版本边界规则一致)
|
|
221
|
+
4. 对找到的历史问题,判断当前变更是否可能复现
|
|
222
|
+
|
|
223
|
+
#### 关联报告格式
|
|
224
|
+
|
|
225
|
+
```markdown
|
|
226
|
+
## 历史稳定性问题关联
|
|
227
|
+
|
|
228
|
+
### 已检查的历史修复
|
|
229
|
+
|
|
230
|
+
| 版本分支 | 模块 | 问题类型 | 是否可能复现 | 说明 |
|
|
231
|
+
|----------|------|---------|-------------|------|
|
|
232
|
+
| 0.77 | AnimatedModule | UAF | ⚠️ 可能 | 本次新增异步回调,存在同类风险 |
|
|
233
|
+
| 0.82 | ImageComponent | 内存泄漏 | ✅ 低风险 | 本次未修改图片相关代码 |
|
|
234
|
+
| 0.82 | FontRegistry | 空指针 | ✅ 低风险 | 本次未修改字体相关代码 |
|
|
235
|
+
|
|
236
|
+
### 建议重点关注的历史修复
|
|
237
|
+
|
|
238
|
+
1. **0.77: AnimatedModule UAF 修复** (PR #xxx)
|
|
239
|
+
- 问题: VSync 回调在模块销毁后执行
|
|
240
|
+
- 当前风险: 本次新增的异步方法有类似时序风险
|
|
241
|
+
- 测试建议: 重点测试快速退出场景
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
### 第 5 步:输出最终测试 checklist
|
|
245
|
+
|
|
246
|
+
将前 4 步的分析结果整合为一份可执行的人工测试 checklist。
|
|
247
|
+
|
|
248
|
+
#### Checklist 格式
|
|
249
|
+
|
|
250
|
+
```markdown
|
|
251
|
+
# 人工功能测试 Checklist
|
|
252
|
+
|
|
253
|
+
## 测试环境
|
|
254
|
+
- 设备: ___________
|
|
255
|
+
- RNOH 版本: <version>
|
|
256
|
+
- 三方库版本: <old> → <new>
|
|
257
|
+
- 测试人员: ___________
|
|
258
|
+
- 测试日期: ___________
|
|
259
|
+
|
|
260
|
+
## 测试项
|
|
261
|
+
|
|
262
|
+
### P0 - 必须通过 (阻塞发布)
|
|
263
|
+
|
|
264
|
+
- [ ] 1. 新增 API getXxx() 正常调用
|
|
265
|
+
- [ ] 2. 新增 Prop renderMode 渲染正确
|
|
266
|
+
- [ ] 3. 基本功能回归:组件正常渲染
|
|
267
|
+
- [ ] 4. 基本功能回归:已有 Props 正常工作
|
|
268
|
+
- [ ] 5. 基本功能回归:已有事件回调正常触发
|
|
269
|
+
- [ ] 6. 稳定性:页面快速退出无崩溃 (重复 10 次)
|
|
270
|
+
- [ ] 7. 稳定性:快速切换页面无崩溃 (持续 30s)
|
|
271
|
+
- [ ] 8. 稳定性:组件挂载/卸载无内存泄漏 (重复 20 次)
|
|
272
|
+
|
|
273
|
+
### P1 - 应该通过 (建议修复)
|
|
274
|
+
|
|
275
|
+
- [ ] 9. 性能:大量组件渲染无明显卡顿
|
|
276
|
+
- [ ] 10. 性能:动画帧率无退化
|
|
277
|
+
- [ ] 11. 兼容性:React 19 Hooks 正常工作
|
|
278
|
+
- [ ] 12. 兼容性:StrictMode 无警告
|
|
279
|
+
|
|
280
|
+
### P2 - 建议验证
|
|
281
|
+
|
|
282
|
+
- [ ] 13. 异常参数处理合理
|
|
283
|
+
- [ ] 14. 默认值行为正确
|
|
284
|
+
- [ ] 15. 与其他三方库共存无冲突
|
|
285
|
+
|
|
286
|
+
## 测试结果汇总
|
|
287
|
+
|
|
288
|
+
| 优先级 | 总数 | 通过 | 失败 | 阻塞 |
|
|
289
|
+
|--------|------|------|------|------|
|
|
290
|
+
| P0 | 8 | __ | __ | __ |
|
|
291
|
+
| P1 | 4 | __ | __ | __ |
|
|
292
|
+
| P2 | 3 | __ | __ | __ |
|
|
293
|
+
|
|
294
|
+
## 问题记录
|
|
295
|
+
|
|
296
|
+
| # | 测试项 | 问题描述 | 严重程度 | 状态 |
|
|
297
|
+
|---|--------|---------|---------|------|
|
|
298
|
+
| 1 | | | | |
|
|
299
|
+
|
|
300
|
+
## 签字确认
|
|
301
|
+
|
|
302
|
+
- 测试人员: ___________ 日期: _________
|
|
303
|
+
- 开发人员: ___________ 日期: _________
|
|
304
|
+
```
|
|
305
|
+
|
|
306
|
+
## 常见边界情况
|
|
307
|
+
|
|
308
|
+
### 1. 没有适配变更清单
|
|
309
|
+
|
|
310
|
+
如果用户没有结构化的适配变更清单:
|
|
311
|
+
- 从 diff patch 文件中提取变更文件列表
|
|
312
|
+
- 用 `git diff` 或读取 patch 文件内容自行分析变更
|
|
313
|
+
- 生成简化版测试清单(基于文件变更而非逐项变更)
|
|
314
|
+
|
|
315
|
+
### 2. 跨大版本升级
|
|
316
|
+
|
|
317
|
+
跨大版本升级(如 0.72→0.84)的测试清单需要额外关注:
|
|
318
|
+
- 中间每个版本的不兼容变更都可能有功能影响
|
|
319
|
+
- 需要做全量回归测试而非增量测试
|
|
320
|
+
- 历史稳定性问题检索范围更大
|
|
321
|
+
|
|
322
|
+
### 3. 纯 JS 层升级
|
|
323
|
+
|
|
324
|
+
如果变更全部是 JS 层(无原生层修改):
|
|
325
|
+
- 风险等级整体降低
|
|
326
|
+
- 重点关注 JS 逻辑正确性和 API 兼容性
|
|
327
|
+
- 可以减少稳定性测试项
|
|
328
|
+
|
|
329
|
+
## 输出物
|
|
330
|
+
|
|
331
|
+
完成本 skill 后,产出一份完整的功能测试 checklist 文档(Markdown 格式),包含:
|
|
332
|
+
|
|
333
|
+
1. **变更影响范围分析** — 每个变更的功能影响和测试优先级
|
|
334
|
+
2. **功能测试清单** — 按 P0/P1/P2 分级的测试项
|
|
335
|
+
3. **高风险场景预警** — 标注需要重点关注的场景及原因
|
|
336
|
+
4. **历史稳定性问题关联** — 可能复现的历史问题及测试建议
|
|
337
|
+
5. **可执行 checklist** — 可直接打印给测试人员使用的勾选清单
|