What problem does it solve? Writing TileLang kernels for Ascend NPU hardware involves subtle pitfalls—misused symbolic expressions, incorrect scalar-vector operations, and confused kernel launch semantics—that produce cryptic compile or runtime failures. This Skill provides a structured checklist and targeted fixes for the most frequent TileLang-Ascend coding mistakes. ## Core Features & Use Cases - Pre-flight Checklist: Verify output index alignment, UB buffer capacity, Expert/Developer mode configurations, and fused-operator workspace dataflow before running kernels. - Pattern Fixes: Get concrete correct implementations for dynamic shapes with T.symbolic, scalar-vector arithmetic via T.tile APIs, and proper T.Kernel versus T.serial usage. - Constraint Enforcement: Avoid forbidden patterns such as Python built-in functions (min, max, and, or) on TVM symbolic expressions and low-precision T.tile.reciprocal division. - Use Case: After generating a fused Cube-Vector operator for Ascend 910B, run through the checklist to confirm workspace_idx matches the function signature and AUTO_CV_COMBINE pass configs are enabled before evaluation. ## Quick Start Review my TileLang-Ascend kernel code against the debugging checklist and fix any coding pattern violations.