-
Route the request. This Skill handles release-readiness audits directly.
For policy/API/version questions that require authoritative Huawei sources,
search the official documentation or AGC console and cite the source. For
project code fixes, fix only after presenting the audit findings and getting
user approval. For broad functional/UI/interaction review, treat it as a
separate quality-review request. Do not expand the audit scope into unrelated
changes.
-
Inspect project shape. Read repository instructions first. Locate
AppScope/app.json5, each module.json5, build-profile.json5,
entry/build-profile.json5, hvigorfile.ts, oh-package.json5,
main_pages.json, source modules, tests, privacy/legal pages, listing
screenshots, and project QA/release notes. Record the target product,
module, API level, and build mode.
-
Run the local preflight. From this package, run:
python3 scripts/check_harmony_release.py --project-root <project-root> --format text
Add --forbid-network for a local-first app, --artifact <path> for the
exact .app/.hap under review, and --strict when the report should exit
non-zero on failures. The helper is advisory; inspect every finding before
making a release decision.
-
Check identity and packaging. Verify bundle name, label, version code,
version name, module/ability entry, route registry, device types, target and
compatible SDKs, and release-mode configuration. Confirm that the artifact
being reviewed is the same product/version represented in the listing.
-
Check privacy, permissions, and data handling. Map every declared or
runtime-sensitive permission to a real feature and user-visible disclosure.
Check minimum permission scope, denial/error behavior, privacy policy,
deletion/retention language, third-party SDK disclosure, and any children,
advertising, payment, health, location, or account flows that are actually
present. For photos, verify that binaries remain app-local and only local
references reach SQLite. Treat unexplained network access or remote-sync
claims as a blocker for local-first projects.
-
Check release security. Require a release build, a valid AGC signing
chain and profile for the target bundle, and a reproducible artifact path.
Scan tracked and staged files for certificates, profiles, keystores,
passwords, tokens, home-directory paths, and debug-only configuration. Do
not print secret values; report only the path and kind of leak.
-
Apply the official UX gate. Read
references/huawei-ux-guidelines-v30.md and determine the product's declared
device types and feature scope before checking the standards. Record the
exact official ID, grade (必须/推荐/强烈推荐), applicability, evidence
kind, and result for each applicable item:
- For the linked
视觉风格 section, check contrast, minimum text size,
layered 1024 px application icons, interface icon size, icon clarity, and
cursor clarity where applicable.
- For
基础体验 and 人机交互, check system back, punch-hole avoidance,
system-gesture conflicts, long-press/double-tap timing, hit areas, and
scroll-control height.
- For
动效 and 系统特性, check transitions, motion duration, startup,
scrolling feedback, navigation-bar avoidance, notifications, live windows,
multi-window/PiP, dark mode, status bar, and immersive scenarios when the
feature or device scope applies.
Separate evidence into static (source/config/resource), screenshot
(current-version UI capture), runtime (emulator/device operation record),
and agc (current AGC report). A static scan is only a lead for interaction
and visual standards. Missing evidence is UNVERIFIED; explicitly
inapplicable standards require a written reason and NOT_APPLICABLE.
Optionally validate a project evidence manifest with:
python3 scripts/check_harmony_release.py \
--project-root <project-root> --ux-audit \
--ux-evidence <project-root>/docs/qa/huawei-ux-evidence.json \
--format text
Before evaluating individual pages, read
references/huawei-controls-overview-v6.md and classify the actual controls
into navigation, display, operation, input, selection, or container. Record
each control's name, route/page, applicable device, evidence type, and state.
Use the taxonomy to choose the relevant UX checks; a component name in source
code alone is not behavioral evidence.
Read references/huawei-system-features-v6.md when the app uses or declares
navigation bars, notifications, live view, multi-window, service cards,
picture-in-picture, dark mode, status bars, or media control center. For each
applicable capability, record the official child-document URL, capability
entry/configuration, device scope, current package version, and runtime or
AGC evidence. Use NOT_APPLICABLE with a reason for capabilities the app does
not use. The local SYS-FEATURE-* IDs are routing labels, not Huawei or AGC
test IDs.
-
Check product and listing evidence. Confirm that the name, icon,
description, screenshots, claims, privacy URL, and supported devices match
implemented behavior. Screenshots must show real, reachable product states;
remove placeholders, fake social data, and claims of synchronization or
capabilities not implemented. Check Chinese user-facing loading, empty,
error, permission-denied, and deletion feedback where the project requires
it.
-
Check Huawei performance evidence. Read
references/huawei-performance-guidelines-v7.md and determine which rules
apply from the product capabilities and declared device types. The matrix
covers DELAY-1..12, FPS-1..9, CONTENT-1..3, MEMORY-1..3, and CPU-1.
Run the evidence validator when a normalized measurement file is available:
python3 scripts/validate_performance_evidence.py \
--evidence <performance-evidence.json> \
--format text
Use --strict for the release gate. Do not fill absent measurements with
0, an old package's result, a source-code estimate, or a screenshot-only
guess. Rules for unsupported features must be marked not_applicable with a
reason; missing evidence remains UNVERIFIED. A performance READY is a
local evidence result, never AGC_READY.
-
Run verification in increasing cost. Run repository validation scripts
and git diff --check; run the project release/HAP build with its own
hvigorw; then run the manual QA script on emulator/device for cold start,
offline behavior, core CRUD, permission denial, restart persistence, data
deletion, migration, crash/error recovery, and the applicable Huawei
performance scenarios. Use a performance tracing tool for frame, CPU, memory,
and audio/video metrics. Label static-only checks and unavailable device/AGC
checks explicitly.
-
Run AGC live validation when requested. Use the browser capability on
the logged-in AGC console, open the target app's 应用上架 > 软件包管理,
and verify the uploaded row before starting a test: