@ohos-cpf/3rdloop 0.0.1 → 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.
- package/README.md +245 -425
- package/bin/3rdloop.mjs +46 -46
- package/lib/cli.js +781 -740
- package/lib/config-cmd.js +452 -0
- package/lib/config.js +318 -317
- 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 +280 -0
- package/lib/workflow.js +308 -290
- 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 -243
- package/vendor/Server/CLI/deveco-code/index.js +71 -0
- package/vendor/Server/CLI/deveco-code.js +5 -0
- package/vendor/Server/CLI/opencode/index.js +817 -804
- 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 -202
- package/vendor/Server/Routes/sse/SseHub.js +308 -308
- package/vendor/Server/Skills/acceptance-check/SKILL.md +191 -174
- 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 -0
- package/vendor/Server/Skills/arkts-code-check/SKILL.md +320 -313
- package/vendor/Server/Skills/arkts-code-check/references/CODE_CHECK_GUIDE.md +210 -159
- 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 -222
- 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 +193 -0
- package/vendor/Server/Agent/SkillSelector/types.js +0 -63
|
@@ -1,100 +1,100 @@
|
|
|
1
|
-
# 示例:测试 Demo 描述文档
|
|
2
|
-
|
|
3
|
-
本文档展示使用 `ohos-arkts-demo-doc-generator` 技能针对一个虚构的图像处理鸿蒙原生库(`ohos-blur-kit`)生成的测试 Demo 描述文档示例。
|
|
4
|
-
|
|
5
|
-
> 📌 注意:以下所有接口均为示范用途,实际生成时应严格依据真实规格文档。
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## 假设的接口规格文档(输入)
|
|
10
|
-
|
|
11
|
-
```typescript
|
|
12
|
-
// Index.ets - 导出接口清单
|
|
13
|
-
|
|
14
|
-
// 图像模糊处理管理类
|
|
15
|
-
export class BlurManager {
|
|
16
|
-
constructor(radius: number)
|
|
17
|
-
blur(pixelMap: PixelMap): Promise<PixelMap>
|
|
18
|
-
blurSync(pixelMap: PixelMap): PixelMap
|
|
19
|
-
setRadius(radius: number): void
|
|
20
|
-
getRadius(): number
|
|
21
|
-
release(): void
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
// 工具函数
|
|
25
|
-
export function createBlurConfig(radius: number, mode: BlurMode): BlurConfig
|
|
26
|
-
export function isSupported(): boolean
|
|
27
|
-
|
|
28
|
-
// 枚举
|
|
29
|
-
export enum BlurMode {
|
|
30
|
-
GAUSSIAN = 'gaussian',
|
|
31
|
-
STACK = 'stack',
|
|
32
|
-
BOX = 'box'
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
// 接口
|
|
36
|
-
export interface BlurConfig {
|
|
37
|
-
radius: number
|
|
38
|
-
mode: BlurMode
|
|
39
|
-
quality?: number
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
// 常量
|
|
43
|
-
export const VERSION: string
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
---
|
|
47
|
-
|
|
48
|
-
## 生成的输出文档示例
|
|
49
|
-
|
|
50
|
-
以下为技能输出的 `ohos-blur-kit测试demo描述.md` 内容:
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
# ohos-blur-kit 测试 Demo 描述文档
|
|
55
|
-
|
|
56
|
-
## 概述
|
|
57
|
-
|
|
58
|
-
本文档基于 `ohos-blur-kit` 库的接口规格说明文档自动生成,提供该库各接口的 ArkTS 测试 Demo 描述,供开发者参考实现功能验证页面。文档按功能相关性对接口进行分组,每组接口对应一个 Demo 页面描述。
|
|
59
|
-
|
|
60
|
-
## Demo 总览
|
|
61
|
-
|
|
62
|
-
| Demo 数量 | 覆盖接口数量 | 生成日期 |
|
|
63
|
-
|----------|------------|---------|
|
|
64
|
-
| 4 个 | 8 个 | 2026-03-11 |
|
|
65
|
-
|
|
66
|
-
## 测试 Demo 描述列表
|
|
67
|
-
|
|
68
|
-
| 序号 | 测试 Demo 名称 | 测试 Demo 描述 | 测试 Demo 步骤 | 测试 Demo 预期结果 | 对应函数接口 |
|
|
69
|
-
|-----|--------------|--------------|--------------|-----------------|------------|
|
|
70
|
-
| 1 | 环境检测与配置创建 Demo | 展示如何在使用 BlurManager 前检测当前设备是否支持模糊能力,以及如何通过 `createBlurConfig()` 创建合法的模糊配置对象。帮助开发者理解使用前置条件检查和配置初始化的标准流程。 | 1. 创建 Demo 页面,包含"检测支持"按钮、BlurMode 选择器(Gaussian/Stack/Box)、radius 输入框和"创建配置"按钮,以及 JSON 展示区域。<br>2. 点击"检测支持"按钮,调用 `isSupported()`,将返回的布尔值显示在页面上("当前设备支持模糊 ✅" 或 "当前设备不支持 ❌")。<br>3. 选择 BlurMode 并输入 radius 值,点击"创建配置"按钮,调用 `createBlurConfig(radius, mode)`。<br>4. 在 JSON 展示区域展示返回的 `BlurConfig` 对象,格式化显示 radius、mode、quality 字段。 | 1. 页面加载完成,按钮与选择器可正常操作。<br>2. 调用 `isSupported()` 返回布尔值,页面相应显示支持/不支持状态。<br>3. 调用 `createBlurConfig()` 后成功返回 `BlurConfig` 对象,页面格式化展示该对象的 radius 和 mode 字段,无抛出异常。 | `isSupported(): boolean`<br>`createBlurConfig(radius: number, mode: BlurMode): BlurConfig` |
|
|
71
|
-
| 2 | BlurManager 生命周期管理 Demo | 展示 `BlurManager` 的完整生命周期:构造(传入 radius)、设置/获取 radius、最终释放资源。帮助开发者理解 BlurManager 对象的创建方式、radius 属性的读写机制,以及释放资源的时机。 | 1. 创建 Demo 页面,包含 radius 输入框、"创建 BlurManager"按钮、新 radius 输入框、"更新 radius"按钮、"获取 radius"按钮和"释放"按钮,以及状态日志区域。<br>2. 填写 radius 值(如 15),点击"创建 BlurManager",调用 `new BlurManager(15)`,在日志区域显示"BlurManager 已创建,初始 radius=15"。<br>3. 修改 radius 值(如 25),点击"更新 radius",调用 `setRadius(25)`,日志显示"radius 已更新为 25"。<br>4. 点击"获取 radius",调用 `getRadius()`,日志显示"当前 radius=25",验证与上一步设置一致。<br>5. 点击"释放",调用 `release()`,日志显示"BlurManager 已释放",此后操作按钮禁用。 | 1. `new BlurManager(radius)` 成功创建实例,无异常。<br>2. `setRadius(newValue)` 调用后,再次 `getRadius()` 返回与设置值一致,验证读写一致性。<br>3. `release()` 调用后页面日志提示释放成功,后续调用不再可用(按钮变灰)。<br>4. 整个生命周期无内存泄漏提示,无崩溃。 | `new BlurManager(radius: number)`<br>`setRadius(radius: number): void`<br>`getRadius(): number`<br>`release(): void` |
|
|
72
|
-
| 3 | 同步图像模糊处理 Demo | 展示使用 `blurSync()` 对 PixelMap 进行同步模糊处理的完整流程,帮助开发者理解同步调用方式、传参规范及处理后图像的获取与展示。 | 1. 创建 Demo 页面,包含"选择图片"按钮(调用图库选择器)、原图展示区域、radius 滑动条、"执行同步模糊"按钮和模糊后图片展示区域。<br>2. 点击"选择图片",从图库选取一张图片,在原图展示区域预览。<br>3. 拖动 radius 滑动条调整模糊半径(范围 1-50)。<br>4. 点击"执行同步模糊",创建 `BlurManager(radius)`,调用 `blurSync(pixelMap)`,传入原图 PixelMap。<br>5. 将返回的 PixelMap 在模糊后图片展示区域显示,并在图片下方标注"模糊半径: {radius}"。 | 1. 选图后原图在页面正常预览。<br>2. `blurSync()` 同步返回处理后的 PixelMap,页面立即更新展示模糊后图片。<br>3. 模糊后图片的尺寸(宽高像素数)与原图一致,仅视觉效果有模糊。<br>4. 调整不同 radius 值后重复操作,模糊程度随 radius 增大而加深。<br>5. 无异常抛出,UI 线程无卡顿超过 3 秒的提示。 | `new BlurManager(radius: number)`<br>`blurSync(pixelMap: PixelMap): PixelMap` |
|
|
73
|
-
| 4 | 异步图像模糊处理 Demo | 展示使用 `blur()` 对 PixelMap 进行异步模糊处理的完整流程,以及与同步方式的对比体验。帮助开发者理解 Promise 异步调用方式、await 使用规范,以及如何在 ArkTS 中处理异步返回结果。 | 1. 创建 Demo 页面,包含"选择图片"按钮、原图展示区域、radius 输入框、"执行异步模糊"按钮、Loading 指示器和模糊后图片展示区域。<br>2. 选取一张图片,在原图区域预览。<br>3. 输入 radius 值,点击"执行异步模糊",按钮变为禁用状态,显示 Loading 指示器。<br>4. 调用 `await blurManager.blur(pixelMap)`,等待 Promise resolve。<br>5. Promise 完成后,隐藏 Loading、启用按钮,将返回的 PixelMap 在结果区域显示,下方标注"异步模糊完成,耗时: {ms}ms"。 | 1. 点击"执行异步模糊"后,按钮立即变为禁用,Loading 指示器显示,表明异步任务已开始。<br>2. `blur()` 返回的 Promise 正常 resolve,Loading 消失,模糊后图片显示在结果区域。<br>3. 模糊后图片尺寸与原图一致,视觉上出现模糊效果。<br>4. UI 线程在等待期间不冻结(可滚动页面或切换其他控件)。<br>5. 页面正确展示异步耗时,无 Promise reject 或未捕获异常。 | `new BlurManager(radius: number)`<br>`blur(pixelMap: PixelMap): Promise<PixelMap>` |
|
|
74
|
-
|
|
75
|
-
## 接口覆盖矩阵
|
|
76
|
-
|
|
77
|
-
| 序号 | 接口名称 | 所在 Demo | 覆盖状态 |
|
|
78
|
-
|-----|---------|----------|---------|
|
|
79
|
-
| 1 | `isSupported(): boolean` | 环境检测与配置创建 Demo | ✅ 已覆盖 |
|
|
80
|
-
| 2 | `createBlurConfig(radius, mode): BlurConfig` | 环境检测与配置创建 Demo | ✅ 已覆盖 |
|
|
81
|
-
| 3 | `new BlurManager(radius: number)` | BlurManager 生命周期管理 Demo / 同步模糊 Demo / 异步模糊 Demo | ✅ 已覆盖 |
|
|
82
|
-
| 4 | `setRadius(radius: number): void` | BlurManager 生命周期管理 Demo | ✅ 已覆盖 |
|
|
83
|
-
| 5 | `getRadius(): number` | BlurManager 生命周期管理 Demo | ✅ 已覆盖 |
|
|
84
|
-
| 6 | `release(): void` | BlurManager 生命周期管理 Demo | ✅ 已覆盖 |
|
|
85
|
-
| 7 | `blurSync(pixelMap: PixelMap): PixelMap` | 同步图像模糊处理 Demo | ✅ 已覆盖 |
|
|
86
|
-
| 8 | `blur(pixelMap: PixelMap): Promise<PixelMap>` | 异步图像模糊处理 Demo | ✅ 已覆盖 |
|
|
87
|
-
|
|
88
|
-
---
|
|
89
|
-
|
|
90
|
-
## 关键生成规则说明
|
|
91
|
-
|
|
92
|
-
上述示例展示了以下技能规则的应用:
|
|
93
|
-
|
|
94
|
-
1. **生命周期合并**:`constructor`、`setRadius`、`getRadius`、`release` 四个接口合并到一个 Demo,因为它们共同描述 `BlurManager` 的完整生命周期管理流程。
|
|
95
|
-
|
|
96
|
-
2. **前置条件合并**:`isSupported()` 与 `createBlurConfig()` 合并到一个 Demo,因为它们都属于"使用前准备"阶段,且 `createBlurConfig` 的结果可作为构造函数的配置依据。
|
|
97
|
-
|
|
98
|
-
3. **异步/同步分开**:`blur()` 和 `blurSync()` 虽然功能类似,但因调用方式(异步 vs 同步)差异明显,分别在独立 Demo 中展示,便于开发者对比。
|
|
99
|
-
|
|
100
|
-
4. **以页面为载体**:每个步骤都明确描述了对应的 UI 组件(按钮、展示区、日志区等)和用户操作,使开发者可直接按步骤实现 Demo 页面。
|
|
1
|
+
# 示例:测试 Demo 描述文档
|
|
2
|
+
|
|
3
|
+
本文档展示使用 `ohos-arkts-demo-doc-generator` 技能针对一个虚构的图像处理鸿蒙原生库(`ohos-blur-kit`)生成的测试 Demo 描述文档示例。
|
|
4
|
+
|
|
5
|
+
> 📌 注意:以下所有接口均为示范用途,实际生成时应严格依据真实规格文档。
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## 假设的接口规格文档(输入)
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
// Index.ets - 导出接口清单
|
|
13
|
+
|
|
14
|
+
// 图像模糊处理管理类
|
|
15
|
+
export class BlurManager {
|
|
16
|
+
constructor(radius: number)
|
|
17
|
+
blur(pixelMap: PixelMap): Promise<PixelMap>
|
|
18
|
+
blurSync(pixelMap: PixelMap): PixelMap
|
|
19
|
+
setRadius(radius: number): void
|
|
20
|
+
getRadius(): number
|
|
21
|
+
release(): void
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// 工具函数
|
|
25
|
+
export function createBlurConfig(radius: number, mode: BlurMode): BlurConfig
|
|
26
|
+
export function isSupported(): boolean
|
|
27
|
+
|
|
28
|
+
// 枚举
|
|
29
|
+
export enum BlurMode {
|
|
30
|
+
GAUSSIAN = 'gaussian',
|
|
31
|
+
STACK = 'stack',
|
|
32
|
+
BOX = 'box'
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// 接口
|
|
36
|
+
export interface BlurConfig {
|
|
37
|
+
radius: number
|
|
38
|
+
mode: BlurMode
|
|
39
|
+
quality?: number
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// 常量
|
|
43
|
+
export const VERSION: string
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## 生成的输出文档示例
|
|
49
|
+
|
|
50
|
+
以下为技能输出的 `ohos-blur-kit测试demo描述.md` 内容:
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
# ohos-blur-kit 测试 Demo 描述文档
|
|
55
|
+
|
|
56
|
+
## 概述
|
|
57
|
+
|
|
58
|
+
本文档基于 `ohos-blur-kit` 库的接口规格说明文档自动生成,提供该库各接口的 ArkTS 测试 Demo 描述,供开发者参考实现功能验证页面。文档按功能相关性对接口进行分组,每组接口对应一个 Demo 页面描述。
|
|
59
|
+
|
|
60
|
+
## Demo 总览
|
|
61
|
+
|
|
62
|
+
| Demo 数量 | 覆盖接口数量 | 生成日期 |
|
|
63
|
+
|----------|------------|---------|
|
|
64
|
+
| 4 个 | 8 个 | 2026-03-11 |
|
|
65
|
+
|
|
66
|
+
## 测试 Demo 描述列表
|
|
67
|
+
|
|
68
|
+
| 序号 | 测试 Demo 名称 | 测试 Demo 描述 | 测试 Demo 步骤 | 测试 Demo 预期结果 | 对应函数接口 |
|
|
69
|
+
|-----|--------------|--------------|--------------|-----------------|------------|
|
|
70
|
+
| 1 | 环境检测与配置创建 Demo | 展示如何在使用 BlurManager 前检测当前设备是否支持模糊能力,以及如何通过 `createBlurConfig()` 创建合法的模糊配置对象。帮助开发者理解使用前置条件检查和配置初始化的标准流程。 | 1. 创建 Demo 页面,包含"检测支持"按钮、BlurMode 选择器(Gaussian/Stack/Box)、radius 输入框和"创建配置"按钮,以及 JSON 展示区域。<br>2. 点击"检测支持"按钮,调用 `isSupported()`,将返回的布尔值显示在页面上("当前设备支持模糊 ✅" 或 "当前设备不支持 ❌")。<br>3. 选择 BlurMode 并输入 radius 值,点击"创建配置"按钮,调用 `createBlurConfig(radius, mode)`。<br>4. 在 JSON 展示区域展示返回的 `BlurConfig` 对象,格式化显示 radius、mode、quality 字段。 | 1. 页面加载完成,按钮与选择器可正常操作。<br>2. 调用 `isSupported()` 返回布尔值,页面相应显示支持/不支持状态。<br>3. 调用 `createBlurConfig()` 后成功返回 `BlurConfig` 对象,页面格式化展示该对象的 radius 和 mode 字段,无抛出异常。 | `isSupported(): boolean`<br>`createBlurConfig(radius: number, mode: BlurMode): BlurConfig` |
|
|
71
|
+
| 2 | BlurManager 生命周期管理 Demo | 展示 `BlurManager` 的完整生命周期:构造(传入 radius)、设置/获取 radius、最终释放资源。帮助开发者理解 BlurManager 对象的创建方式、radius 属性的读写机制,以及释放资源的时机。 | 1. 创建 Demo 页面,包含 radius 输入框、"创建 BlurManager"按钮、新 radius 输入框、"更新 radius"按钮、"获取 radius"按钮和"释放"按钮,以及状态日志区域。<br>2. 填写 radius 值(如 15),点击"创建 BlurManager",调用 `new BlurManager(15)`,在日志区域显示"BlurManager 已创建,初始 radius=15"。<br>3. 修改 radius 值(如 25),点击"更新 radius",调用 `setRadius(25)`,日志显示"radius 已更新为 25"。<br>4. 点击"获取 radius",调用 `getRadius()`,日志显示"当前 radius=25",验证与上一步设置一致。<br>5. 点击"释放",调用 `release()`,日志显示"BlurManager 已释放",此后操作按钮禁用。 | 1. `new BlurManager(radius)` 成功创建实例,无异常。<br>2. `setRadius(newValue)` 调用后,再次 `getRadius()` 返回与设置值一致,验证读写一致性。<br>3. `release()` 调用后页面日志提示释放成功,后续调用不再可用(按钮变灰)。<br>4. 整个生命周期无内存泄漏提示,无崩溃。 | `new BlurManager(radius: number)`<br>`setRadius(radius: number): void`<br>`getRadius(): number`<br>`release(): void` |
|
|
72
|
+
| 3 | 同步图像模糊处理 Demo | 展示使用 `blurSync()` 对 PixelMap 进行同步模糊处理的完整流程,帮助开发者理解同步调用方式、传参规范及处理后图像的获取与展示。 | 1. 创建 Demo 页面,包含"选择图片"按钮(调用图库选择器)、原图展示区域、radius 滑动条、"执行同步模糊"按钮和模糊后图片展示区域。<br>2. 点击"选择图片",从图库选取一张图片,在原图展示区域预览。<br>3. 拖动 radius 滑动条调整模糊半径(范围 1-50)。<br>4. 点击"执行同步模糊",创建 `BlurManager(radius)`,调用 `blurSync(pixelMap)`,传入原图 PixelMap。<br>5. 将返回的 PixelMap 在模糊后图片展示区域显示,并在图片下方标注"模糊半径: {radius}"。 | 1. 选图后原图在页面正常预览。<br>2. `blurSync()` 同步返回处理后的 PixelMap,页面立即更新展示模糊后图片。<br>3. 模糊后图片的尺寸(宽高像素数)与原图一致,仅视觉效果有模糊。<br>4. 调整不同 radius 值后重复操作,模糊程度随 radius 增大而加深。<br>5. 无异常抛出,UI 线程无卡顿超过 3 秒的提示。 | `new BlurManager(radius: number)`<br>`blurSync(pixelMap: PixelMap): PixelMap` |
|
|
73
|
+
| 4 | 异步图像模糊处理 Demo | 展示使用 `blur()` 对 PixelMap 进行异步模糊处理的完整流程,以及与同步方式的对比体验。帮助开发者理解 Promise 异步调用方式、await 使用规范,以及如何在 ArkTS 中处理异步返回结果。 | 1. 创建 Demo 页面,包含"选择图片"按钮、原图展示区域、radius 输入框、"执行异步模糊"按钮、Loading 指示器和模糊后图片展示区域。<br>2. 选取一张图片,在原图区域预览。<br>3. 输入 radius 值,点击"执行异步模糊",按钮变为禁用状态,显示 Loading 指示器。<br>4. 调用 `await blurManager.blur(pixelMap)`,等待 Promise resolve。<br>5. Promise 完成后,隐藏 Loading、启用按钮,将返回的 PixelMap 在结果区域显示,下方标注"异步模糊完成,耗时: {ms}ms"。 | 1. 点击"执行异步模糊"后,按钮立即变为禁用,Loading 指示器显示,表明异步任务已开始。<br>2. `blur()` 返回的 Promise 正常 resolve,Loading 消失,模糊后图片显示在结果区域。<br>3. 模糊后图片尺寸与原图一致,视觉上出现模糊效果。<br>4. UI 线程在等待期间不冻结(可滚动页面或切换其他控件)。<br>5. 页面正确展示异步耗时,无 Promise reject 或未捕获异常。 | `new BlurManager(radius: number)`<br>`blur(pixelMap: PixelMap): Promise<PixelMap>` |
|
|
74
|
+
|
|
75
|
+
## 接口覆盖矩阵
|
|
76
|
+
|
|
77
|
+
| 序号 | 接口名称 | 所在 Demo | 覆盖状态 |
|
|
78
|
+
|-----|---------|----------|---------|
|
|
79
|
+
| 1 | `isSupported(): boolean` | 环境检测与配置创建 Demo | ✅ 已覆盖 |
|
|
80
|
+
| 2 | `createBlurConfig(radius, mode): BlurConfig` | 环境检测与配置创建 Demo | ✅ 已覆盖 |
|
|
81
|
+
| 3 | `new BlurManager(radius: number)` | BlurManager 生命周期管理 Demo / 同步模糊 Demo / 异步模糊 Demo | ✅ 已覆盖 |
|
|
82
|
+
| 4 | `setRadius(radius: number): void` | BlurManager 生命周期管理 Demo | ✅ 已覆盖 |
|
|
83
|
+
| 5 | `getRadius(): number` | BlurManager 生命周期管理 Demo | ✅ 已覆盖 |
|
|
84
|
+
| 6 | `release(): void` | BlurManager 生命周期管理 Demo | ✅ 已覆盖 |
|
|
85
|
+
| 7 | `blurSync(pixelMap: PixelMap): PixelMap` | 同步图像模糊处理 Demo | ✅ 已覆盖 |
|
|
86
|
+
| 8 | `blur(pixelMap: PixelMap): Promise<PixelMap>` | 异步图像模糊处理 Demo | ✅ 已覆盖 |
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## 关键生成规则说明
|
|
91
|
+
|
|
92
|
+
上述示例展示了以下技能规则的应用:
|
|
93
|
+
|
|
94
|
+
1. **生命周期合并**:`constructor`、`setRadius`、`getRadius`、`release` 四个接口合并到一个 Demo,因为它们共同描述 `BlurManager` 的完整生命周期管理流程。
|
|
95
|
+
|
|
96
|
+
2. **前置条件合并**:`isSupported()` 与 `createBlurConfig()` 合并到一个 Demo,因为它们都属于"使用前准备"阶段,且 `createBlurConfig` 的结果可作为构造函数的配置依据。
|
|
97
|
+
|
|
98
|
+
3. **异步/同步分开**:`blur()` 和 `blurSync()` 虽然功能类似,但因调用方式(异步 vs 同步)差异明显,分别在独立 Demo 中展示,便于开发者对比。
|
|
99
|
+
|
|
100
|
+
4. **以页面为载体**:每个步骤都明确描述了对应的 UI 组件(按钮、展示区、日志区等)和用户操作,使开发者可直接按步骤实现 Demo 页面。
|
|
@@ -1,185 +1,185 @@
|
|
|
1
|
-
# 测试 Demo 描述文档模板
|
|
2
|
-
|
|
3
|
-
本文件提供生成输出文档时使用的标准模板结构,可直接复制并填入真实内容。
|
|
4
|
-
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
## 输出文档模板
|
|
8
|
-
|
|
9
|
-
```markdown
|
|
10
|
-
# {库名} 测试 Demo 描述文档
|
|
11
|
-
|
|
12
|
-
## 概述
|
|
13
|
-
|
|
14
|
-
本文档基于 `{库名}` 库的接口规格说明文档(`{规格文档文件名}`)自动生成,
|
|
15
|
-
提供各接口的 ArkTS 测试 Demo 描述,供开发者参考实现功能验证 Demo 页面。
|
|
16
|
-
|
|
17
|
-
> 文档基于接口规格文档真实内容生成,所有接口名称、参数类型与规格文档保持一致。
|
|
18
|
-
|
|
19
|
-
## Demo 总览
|
|
20
|
-
|
|
21
|
-
| Demo 数量 | 覆盖接口数量 | 生成日期 |
|
|
22
|
-
|----------|------------|---------|
|
|
23
|
-
| {N} 个 | {M} 个 | {YYYY-MM-DD} |
|
|
24
|
-
|
|
25
|
-
## 测试 Demo 描述列表
|
|
26
|
-
|
|
27
|
-
| 序号 | 测试 Demo 名称 | 测试 Demo 描述 | 测试 Demo 步骤 | 测试 Demo 预期结果 | 对应函数接口 |
|
|
28
|
-
|-----|--------------|--------------|--------------|-----------------|------------|
|
|
29
|
-
| 1 | {Demo名称1} | {Demo描述1} | {步骤1} | {预期结果1} | {接口列表1} |
|
|
30
|
-
| 2 | {Demo名称2} | {Demo描述2} | {步骤2} | {预期结果2} | {接口列表2} |
|
|
31
|
-
|
|
32
|
-
## 接口覆盖矩阵
|
|
33
|
-
|
|
34
|
-
| 序号 | 接口名称 | 所在 Demo | 覆盖状态 |
|
|
35
|
-
|-----|---------|----------|---------|
|
|
36
|
-
| 1 | `{接口签名}` | {Demo名称} | ✅ 已覆盖 |
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
---
|
|
40
|
-
|
|
41
|
-
## 各字段填写规范
|
|
42
|
-
|
|
43
|
-
### 测试 Demo 名称
|
|
44
|
-
|
|
45
|
-
**格式**:`[功能动词/名词][操作对象][可选场景描述]Demo`
|
|
46
|
-
|
|
47
|
-
**命名示例:**
|
|
48
|
-
|
|
49
|
-
| 场景 | 推荐名称 |
|
|
50
|
-
|-----|---------|
|
|
51
|
-
| 单一核心功能 | `图片压缩处理Demo` |
|
|
52
|
-
| 生命周期管理 | `实例创建与销毁Demo` |
|
|
53
|
-
| 配置类接口 | `参数配置与验证Demo` |
|
|
54
|
-
| 异步操作 | `异步数据加载Demo` |
|
|
55
|
-
| 错误处理 | `异常捕获与恢复Demo` |
|
|
56
|
-
| 多接口组合 | `完整处理流程Demo` |
|
|
57
|
-
|
|
58
|
-
**注意:**
|
|
59
|
-
- 不超过 20 字
|
|
60
|
-
- 避免使用泛化词语(如"基础Demo"、"测试Demo")
|
|
61
|
-
- 名称应能让开发者直接判断 Demo 的核心目的
|
|
62
|
-
|
|
63
|
-
---
|
|
64
|
-
|
|
65
|
-
### 测试 Demo 描述
|
|
66
|
-
|
|
67
|
-
**模板:**
|
|
68
|
-
|
|
69
|
-
```
|
|
70
|
-
{Demo名称}展示了如何使用 {接口名称} 实现 {功能描述}。
|
|
71
|
-
通过本 Demo,开发者可以了解 {接口的核心用法/参数含义/返回值处理方式}。
|
|
72
|
-
[可选:本 Demo 同时涵盖 {其他关联接口},展示 {它们之间的调用关系/业务场景}。]
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
**示例:**
|
|
76
|
-
|
|
77
|
-
```
|
|
78
|
-
"本 Demo 展示 BlurManager 的完整生命周期管理流程,包括构造(传入 radius 参数)、
|
|
79
|
-
动态更新 radius 属性(setRadius/getRadius 读写)及最终资源释放(release)。
|
|
80
|
-
帮助开发者理解 BlurManager 实例从创建到销毁的正确使用方式,以及 radius 属性的读写一致性。"
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
---
|
|
84
|
-
|
|
85
|
-
### 测试 Demo 步骤
|
|
86
|
-
|
|
87
|
-
**步骤结构模板:**
|
|
88
|
-
|
|
89
|
-
```
|
|
90
|
-
1. 创建 Demo 页面,添加 [UI组件列表:按钮、输入框、展示区、日志区等]。
|
|
91
|
-
2. [用户操作],触发 `{接口名称}({参数示例})` 调用。
|
|
92
|
-
3. 将接口返回值 / 状态变化展示在 [展示区域名称]。
|
|
93
|
-
4. [下一步操作,如有],验证 [具体行为]。
|
|
94
|
-
[可选] 5. 对比 / 补充验证步骤。
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
**步骤描述规范:**
|
|
98
|
-
|
|
99
|
-
| 维度 | 要求 | 示例 |
|
|
100
|
-
|-----|-----|-----|
|
|
101
|
-
| 页面构建 | 说明需要哪些 UI 组件 | "添加 radius 输入框、'执行'按钮和图片显示区域" |
|
|
102
|
-
| 交互触发 | 明确用户操作和调用时机 | "点击'执行'按钮,调用 `blur(pixelMap)`" |
|
|
103
|
-
| 参数传递 | 说明传入参数来源/示例值 | "传入 radius=15,pixelMap 为图库选取的图片" |
|
|
104
|
-
| 结果展示 | 说明如何在页面显示结果 | "将返回的 PixelMap 显示在结果区域" |
|
|
105
|
-
| 验证方式 | 说明如何判断成功 | "确认图片宽高与原图一致,视觉出现模糊效果" |
|
|
106
|
-
|
|
107
|
-
---
|
|
108
|
-
|
|
109
|
-
### 测试 Demo 预期结果
|
|
110
|
-
|
|
111
|
-
**模板:**
|
|
112
|
-
|
|
113
|
-
```
|
|
114
|
-
1. [页面/UI 状态]:{可观测的界面变化描述}。
|
|
115
|
-
2. [接口返回值]:{返回值类型/内容/范围} 符合预期。
|
|
116
|
-
3. [功能效果]:{功能方面的可验证效果}。
|
|
117
|
-
4. [异常/边界]:{无异常抛出 / 错误码正确返回}。
|
|
118
|
-
[可选] 5. [性能]:{操作耗时在合理范围内}。
|
|
119
|
-
```
|
|
120
|
-
|
|
121
|
-
**预期结果描述规范:**
|
|
122
|
-
- 必须可观测(能在 Demo 页面上直接看到或测量)
|
|
123
|
-
- 必须具体(避免"正确返回"这样的模糊描述)
|
|
124
|
-
- 推荐包含数值范围(如尺寸不变、耗时 < N秒)
|
|
125
|
-
- 必须包含"无异常/无崩溃"验证项
|
|
126
|
-
|
|
127
|
-
**示例:**
|
|
128
|
-
|
|
129
|
-
```
|
|
130
|
-
1. 点击"执行异步模糊"后,按钮立即变为禁用状态,Loading 指示器出现,表明异步任务已启动。
|
|
131
|
-
2. `blur()` 返回的 Promise 正常 resolve,Loading 消失,模糊后图片正确显示在结果区域。
|
|
132
|
-
3. 模糊后图片的宽高像素数与原图完全一致,视觉效果出现模糊。
|
|
133
|
-
4. UI 主线程在等待期间不冻结(可正常操作页面其他控件)。
|
|
134
|
-
5. 无 Promise reject 或未捕获异常;页面日志显示耗时。
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
---
|
|
138
|
-
|
|
139
|
-
### 对应函数接口
|
|
140
|
-
|
|
141
|
-
**格式**:每行一个接口,使用代码格式(反引号),包含完整函数签名。
|
|
142
|
-
|
|
143
|
-
```
|
|
144
|
-
`functionName(paramName: ParamType): ReturnType`
|
|
145
|
-
`ClassName.methodName(param: Type): ReturnType`
|
|
146
|
-
`new ClassName(param: Type)`
|
|
147
|
-
`CONSTANT_NAME: Type`(常量)
|
|
148
|
-
`InterfaceName`(接口类型,仅被其他接口用作参数/返回值时列出)
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
---
|
|
152
|
-
|
|
153
|
-
## 接口分组决策树
|
|
154
|
-
|
|
155
|
-
使用以下决策树判断接口是否应合并到同一 Demo:
|
|
156
|
-
|
|
157
|
-
```
|
|
158
|
-
接口 A 和接口 B 是否应合并?
|
|
159
|
-
│
|
|
160
|
-
├─ A 的返回值是 B 的入参? ──→ 是 ──→ 合并
|
|
161
|
-
│
|
|
162
|
-
├─ A 和 B 共同完成一个完整业务场景? ──→ 是 ──→ 合并
|
|
163
|
-
│ (如: init + execute + cleanup)
|
|
164
|
-
│
|
|
165
|
-
├─ A 和 B 都属于同一对象的状态读写? ──→ 是 ──→ 合并
|
|
166
|
-
│ (如: setter + getter)
|
|
167
|
-
│
|
|
168
|
-
├─ A 不调用 B,B 不调用 A,功能方向不同? ──→ 是 ──→ 分开
|
|
169
|
-
│
|
|
170
|
-
└─ 默认:分开(每个接口独立 Demo)
|
|
171
|
-
```
|
|
172
|
-
|
|
173
|
-
---
|
|
174
|
-
|
|
175
|
-
## 常见接口模式与推荐 Demo 封装方式
|
|
176
|
-
|
|
177
|
-
| 接口模式 | 推荐 Demo 封装 |
|
|
178
|
-
|---------|--------------|
|
|
179
|
-
| `constructor + method + release` | 封装为"完整生命周期 Demo" |
|
|
180
|
-
| `async` 方法(返回 Promise) | 独立 Demo,展示异步等待与结果处理 |
|
|
181
|
-
| `sync` 方法 | 独立 Demo,或与对应 async 方法对比展示 |
|
|
182
|
-
| `getter + setter` 一对 | 合并为"属性读写 Demo" |
|
|
183
|
-
| `init + execute` 依赖链 | 合并为"初始化与执行 Demo" |
|
|
184
|
-
| 多个枚举值影响同一方法行为 | 在同一 Demo 中用选择器切换枚举值展示 |
|
|
185
|
-
| 错误码返回的接口 | 在对应 Demo 中增加"异常输入"验证步骤 |
|
|
1
|
+
# 测试 Demo 描述文档模板
|
|
2
|
+
|
|
3
|
+
本文件提供生成输出文档时使用的标准模板结构,可直接复制并填入真实内容。
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 输出文档模板
|
|
8
|
+
|
|
9
|
+
```markdown
|
|
10
|
+
# {库名} 测试 Demo 描述文档
|
|
11
|
+
|
|
12
|
+
## 概述
|
|
13
|
+
|
|
14
|
+
本文档基于 `{库名}` 库的接口规格说明文档(`{规格文档文件名}`)自动生成,
|
|
15
|
+
提供各接口的 ArkTS 测试 Demo 描述,供开发者参考实现功能验证 Demo 页面。
|
|
16
|
+
|
|
17
|
+
> 文档基于接口规格文档真实内容生成,所有接口名称、参数类型与规格文档保持一致。
|
|
18
|
+
|
|
19
|
+
## Demo 总览
|
|
20
|
+
|
|
21
|
+
| Demo 数量 | 覆盖接口数量 | 生成日期 |
|
|
22
|
+
|----------|------------|---------|
|
|
23
|
+
| {N} 个 | {M} 个 | {YYYY-MM-DD} |
|
|
24
|
+
|
|
25
|
+
## 测试 Demo 描述列表
|
|
26
|
+
|
|
27
|
+
| 序号 | 测试 Demo 名称 | 测试 Demo 描述 | 测试 Demo 步骤 | 测试 Demo 预期结果 | 对应函数接口 |
|
|
28
|
+
|-----|--------------|--------------|--------------|-----------------|------------|
|
|
29
|
+
| 1 | {Demo名称1} | {Demo描述1} | {步骤1} | {预期结果1} | {接口列表1} |
|
|
30
|
+
| 2 | {Demo名称2} | {Demo描述2} | {步骤2} | {预期结果2} | {接口列表2} |
|
|
31
|
+
|
|
32
|
+
## 接口覆盖矩阵
|
|
33
|
+
|
|
34
|
+
| 序号 | 接口名称 | 所在 Demo | 覆盖状态 |
|
|
35
|
+
|-----|---------|----------|---------|
|
|
36
|
+
| 1 | `{接口签名}` | {Demo名称} | ✅ 已覆盖 |
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## 各字段填写规范
|
|
42
|
+
|
|
43
|
+
### 测试 Demo 名称
|
|
44
|
+
|
|
45
|
+
**格式**:`[功能动词/名词][操作对象][可选场景描述]Demo`
|
|
46
|
+
|
|
47
|
+
**命名示例:**
|
|
48
|
+
|
|
49
|
+
| 场景 | 推荐名称 |
|
|
50
|
+
|-----|---------|
|
|
51
|
+
| 单一核心功能 | `图片压缩处理Demo` |
|
|
52
|
+
| 生命周期管理 | `实例创建与销毁Demo` |
|
|
53
|
+
| 配置类接口 | `参数配置与验证Demo` |
|
|
54
|
+
| 异步操作 | `异步数据加载Demo` |
|
|
55
|
+
| 错误处理 | `异常捕获与恢复Demo` |
|
|
56
|
+
| 多接口组合 | `完整处理流程Demo` |
|
|
57
|
+
|
|
58
|
+
**注意:**
|
|
59
|
+
- 不超过 20 字
|
|
60
|
+
- 避免使用泛化词语(如"基础Demo"、"测试Demo")
|
|
61
|
+
- 名称应能让开发者直接判断 Demo 的核心目的
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
### 测试 Demo 描述
|
|
66
|
+
|
|
67
|
+
**模板:**
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
{Demo名称}展示了如何使用 {接口名称} 实现 {功能描述}。
|
|
71
|
+
通过本 Demo,开发者可以了解 {接口的核心用法/参数含义/返回值处理方式}。
|
|
72
|
+
[可选:本 Demo 同时涵盖 {其他关联接口},展示 {它们之间的调用关系/业务场景}。]
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
**示例:**
|
|
76
|
+
|
|
77
|
+
```
|
|
78
|
+
"本 Demo 展示 BlurManager 的完整生命周期管理流程,包括构造(传入 radius 参数)、
|
|
79
|
+
动态更新 radius 属性(setRadius/getRadius 读写)及最终资源释放(release)。
|
|
80
|
+
帮助开发者理解 BlurManager 实例从创建到销毁的正确使用方式,以及 radius 属性的读写一致性。"
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
### 测试 Demo 步骤
|
|
86
|
+
|
|
87
|
+
**步骤结构模板:**
|
|
88
|
+
|
|
89
|
+
```
|
|
90
|
+
1. 创建 Demo 页面,添加 [UI组件列表:按钮、输入框、展示区、日志区等]。
|
|
91
|
+
2. [用户操作],触发 `{接口名称}({参数示例})` 调用。
|
|
92
|
+
3. 将接口返回值 / 状态变化展示在 [展示区域名称]。
|
|
93
|
+
4. [下一步操作,如有],验证 [具体行为]。
|
|
94
|
+
[可选] 5. 对比 / 补充验证步骤。
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
**步骤描述规范:**
|
|
98
|
+
|
|
99
|
+
| 维度 | 要求 | 示例 |
|
|
100
|
+
|-----|-----|-----|
|
|
101
|
+
| 页面构建 | 说明需要哪些 UI 组件 | "添加 radius 输入框、'执行'按钮和图片显示区域" |
|
|
102
|
+
| 交互触发 | 明确用户操作和调用时机 | "点击'执行'按钮,调用 `blur(pixelMap)`" |
|
|
103
|
+
| 参数传递 | 说明传入参数来源/示例值 | "传入 radius=15,pixelMap 为图库选取的图片" |
|
|
104
|
+
| 结果展示 | 说明如何在页面显示结果 | "将返回的 PixelMap 显示在结果区域" |
|
|
105
|
+
| 验证方式 | 说明如何判断成功 | "确认图片宽高与原图一致,视觉出现模糊效果" |
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
### 测试 Demo 预期结果
|
|
110
|
+
|
|
111
|
+
**模板:**
|
|
112
|
+
|
|
113
|
+
```
|
|
114
|
+
1. [页面/UI 状态]:{可观测的界面变化描述}。
|
|
115
|
+
2. [接口返回值]:{返回值类型/内容/范围} 符合预期。
|
|
116
|
+
3. [功能效果]:{功能方面的可验证效果}。
|
|
117
|
+
4. [异常/边界]:{无异常抛出 / 错误码正确返回}。
|
|
118
|
+
[可选] 5. [性能]:{操作耗时在合理范围内}。
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
**预期结果描述规范:**
|
|
122
|
+
- 必须可观测(能在 Demo 页面上直接看到或测量)
|
|
123
|
+
- 必须具体(避免"正确返回"这样的模糊描述)
|
|
124
|
+
- 推荐包含数值范围(如尺寸不变、耗时 < N秒)
|
|
125
|
+
- 必须包含"无异常/无崩溃"验证项
|
|
126
|
+
|
|
127
|
+
**示例:**
|
|
128
|
+
|
|
129
|
+
```
|
|
130
|
+
1. 点击"执行异步模糊"后,按钮立即变为禁用状态,Loading 指示器出现,表明异步任务已启动。
|
|
131
|
+
2. `blur()` 返回的 Promise 正常 resolve,Loading 消失,模糊后图片正确显示在结果区域。
|
|
132
|
+
3. 模糊后图片的宽高像素数与原图完全一致,视觉效果出现模糊。
|
|
133
|
+
4. UI 主线程在等待期间不冻结(可正常操作页面其他控件)。
|
|
134
|
+
5. 无 Promise reject 或未捕获异常;页面日志显示耗时。
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
### 对应函数接口
|
|
140
|
+
|
|
141
|
+
**格式**:每行一个接口,使用代码格式(反引号),包含完整函数签名。
|
|
142
|
+
|
|
143
|
+
```
|
|
144
|
+
`functionName(paramName: ParamType): ReturnType`
|
|
145
|
+
`ClassName.methodName(param: Type): ReturnType`
|
|
146
|
+
`new ClassName(param: Type)`
|
|
147
|
+
`CONSTANT_NAME: Type`(常量)
|
|
148
|
+
`InterfaceName`(接口类型,仅被其他接口用作参数/返回值时列出)
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
## 接口分组决策树
|
|
154
|
+
|
|
155
|
+
使用以下决策树判断接口是否应合并到同一 Demo:
|
|
156
|
+
|
|
157
|
+
```
|
|
158
|
+
接口 A 和接口 B 是否应合并?
|
|
159
|
+
│
|
|
160
|
+
├─ A 的返回值是 B 的入参? ──→ 是 ──→ 合并
|
|
161
|
+
│
|
|
162
|
+
├─ A 和 B 共同完成一个完整业务场景? ──→ 是 ──→ 合并
|
|
163
|
+
│ (如: init + execute + cleanup)
|
|
164
|
+
│
|
|
165
|
+
├─ A 和 B 都属于同一对象的状态读写? ──→ 是 ──→ 合并
|
|
166
|
+
│ (如: setter + getter)
|
|
167
|
+
│
|
|
168
|
+
├─ A 不调用 B,B 不调用 A,功能方向不同? ──→ 是 ──→ 分开
|
|
169
|
+
│
|
|
170
|
+
└─ 默认:分开(每个接口独立 Demo)
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
---
|
|
174
|
+
|
|
175
|
+
## 常见接口模式与推荐 Demo 封装方式
|
|
176
|
+
|
|
177
|
+
| 接口模式 | 推荐 Demo 封装 |
|
|
178
|
+
|---------|--------------|
|
|
179
|
+
| `constructor + method + release` | 封装为"完整生命周期 Demo" |
|
|
180
|
+
| `async` 方法(返回 Promise) | 独立 Demo,展示异步等待与结果处理 |
|
|
181
|
+
| `sync` 方法 | 独立 Demo,或与对应 async 方法对比展示 |
|
|
182
|
+
| `getter + setter` 一对 | 合并为"属性读写 Demo" |
|
|
183
|
+
| `init + execute` 依赖链 | 合并为"初始化与执行 Demo" |
|
|
184
|
+
| 多个枚举值影响同一方法行为 | 在同一 Demo 中用选择器切换枚举值展示 |
|
|
185
|
+
| 错误码返回的接口 | 在对应 Demo 中增加"异常输入"验证步骤 |
|