Use when an agent needs to select, stage, run, or compare OpenHarmony ArkUI XTS suites with this repository. Covers the recommended entrypoints (`ohos xts ...` vs direct `python3 -m arkui_xts_selector`), high-signal flags for PR/file/symbol/range workflows, quick-mode tradeoffs, run-from-report reuse, and how to interpret selected inventory versus real runnability.
Use this guide when the task is about:
ohos xts select ...ohos xts run ...ohos xts compare ...python3 -m arkui_xts_selector ...python3 -m arkui_xts_selector.xts_compare ...Use the wrapper when the task is operator-facing or already framed as ohos ....
Use the direct module when working inside this repository, writing automation, or testing selector-only behavior.
Start here when the user gives a PR URL or number.
ohos xts select --pr-url https://gitcode.com/openharmony/arkui_ace_engine/pull/83027
If host autodetection is not enough, pin the host explicitly:
python3 -m arkui_xts_selector \
--pr-url https://codehub.example.com/group/project/merge_requests/12 \
--git-host-kind codehub \
--git-host-url https://codehub.example.com
Use this when the user already knows the touched source file:
python3 -m arkui_xts_selector \
--changed-file foundation/arkui/ace_engine/frameworks/core/components_ng/pattern/button/button_model_static.cpp
For better precision, add one or both of these whenever the task gives enough detail:
--changed-symbol--changed-rangeExample:
python3 -m arkui_xts_selector \
--changed-file foundation/arkui/ace_engine/frameworks/core/components_ng/pattern/button/button_model_static.cpp \
--changed-symbol ButtonModelStatic::SetRole
Broad file-only selection works, but exact symbol/range input is usually much better.
Use this when the task is about rerun, execution planning, or follow-up reporting instead of recomputing selection:
ohos xts run --from-report /path/to/selector_report.json
Or reuse the most recent saved report:
ohos xts run last
Use compare only after real run artifacts exist:
python3 -m arkui_xts_selector.xts_compare \
--base-label baseline \
--target-label candidate
--quick
--json-out PATH
--run-label LABEL
.runs/<label>/<timestamp>/--run-priority required
--run-priority recommended
--run-now
--no-progress
--run-test-name
Read in this order:
EXECUTIVE SUMMARYSelected Test Inventoryselected_tests.jsonInterpretation rules:
required means strongest direct evidence; treat it as the default must-run set.recommended_additional adds broader but weaker coverage.optional_duplicates is fallback or duplicate coverage.Selected Test Inventory means the selector chose those targets from source/API evidence.If selection evidence and local artifact availability disagree, trust the real inventory for execution decisions.
--changed-symbol or --changed-range whenever the task already knows the touched method or line span.--json-out for any workflow that may need rerun, parsing, or comparison later.--run-now by default for exploratory analysis.401, 403, or token language:
ohos pr setup-token404 or not found:
--quick warns about missing local ACTS artifacts:
--repo-root, --xts-root, --sdk-api-root