@1aboveio/skills 0.0.0-stage → 1.0.0

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.
Files changed (633) hide show
  1. package/README.md +30 -2
  2. package/bin/cli.mjs +14 -0
  3. package/bin/select-core.mjs +172 -0
  4. package/package.json +146 -4
  5. package/skills/app-dev/airflow/LICENSE +3 -0
  6. package/skills/app-dev/airflow/SKILL.md +199 -0
  7. package/skills/app-dev/airflow/release-check.mjs +93 -0
  8. package/skills/app-dev/android-foundation/LICENSE +3 -0
  9. package/skills/app-dev/android-foundation/SKILL.md +192 -0
  10. package/skills/app-dev/android-foundation/assets/android-ci-job.yml +217 -0
  11. package/skills/app-dev/android-foundation/references/ci.md +87 -0
  12. package/skills/app-dev/android-foundation/references/gotchas.md +221 -0
  13. package/skills/app-dev/android-foundation/references/setup.md +164 -0
  14. package/skills/app-dev/android-foundation/release-check.mjs +93 -0
  15. package/skills/app-dev/android-foundation/scripts/device-run.sh +176 -0
  16. package/skills/app-dev/android-foundation/scripts/device-run.test.mjs +172 -0
  17. package/skills/app-dev/app-debug/LICENSE +3 -0
  18. package/skills/app-dev/app-debug/SKILL.md +110 -0
  19. package/skills/app-dev/app-debug/references/common-errors.md +128 -0
  20. package/skills/app-dev/app-debug/release-check.mjs +93 -0
  21. package/skills/app-dev/better-auth/LICENSE +3 -0
  22. package/skills/app-dev/better-auth/SKILL.md +598 -0
  23. package/skills/app-dev/better-auth/references/feishu-api.md +270 -0
  24. package/skills/app-dev/better-auth/release-check.mjs +93 -0
  25. package/skills/app-dev/data-catalog/LICENSE +3 -0
  26. package/skills/app-dev/data-catalog/SKILL.md +204 -0
  27. package/skills/app-dev/data-catalog/agents/openai.yaml +3 -0
  28. package/skills/app-dev/data-catalog/references/data-catalog-conventions.md +75 -0
  29. package/skills/app-dev/data-catalog/references/field-definitions.md +116 -0
  30. package/skills/app-dev/data-catalog/references/format.md +121 -0
  31. package/skills/app-dev/data-catalog/release-check.mjs +93 -0
  32. package/skills/app-dev/data-catalog/scripts/data-catalog.test.mjs +36 -0
  33. package/skills/app-dev/data-catalog/scripts/data_catalog.py +1392 -0
  34. package/skills/app-dev/data-catalog/scripts/persist-conventions-core.mjs +117 -0
  35. package/skills/app-dev/data-catalog/scripts/persist-conventions.mjs +17 -0
  36. package/skills/app-dev/data-catalog/scripts/test_data_catalog.py +571 -0
  37. package/skills/app-dev/ios-foundation/LICENSE +3 -0
  38. package/skills/app-dev/ios-foundation/SKILL.md +184 -0
  39. package/skills/app-dev/ios-foundation/references/setup.md +243 -0
  40. package/skills/app-dev/ios-foundation/release-check.mjs +93 -0
  41. package/skills/app-dev/monorepo/LICENSE +3 -0
  42. package/skills/app-dev/monorepo/SKILL.md +462 -0
  43. package/skills/app-dev/monorepo/release-check.mjs +93 -0
  44. package/skills/app-dev/nextjs-fullstack/LICENSE +3 -0
  45. package/skills/app-dev/nextjs-fullstack/SKILL.md +211 -0
  46. package/skills/app-dev/nextjs-fullstack/conventions.md +318 -0
  47. package/skills/app-dev/nextjs-fullstack/frontend-conventions.md +61 -0
  48. package/skills/app-dev/nextjs-fullstack/nextjs16.md +287 -0
  49. package/skills/app-dev/nextjs-fullstack/release-check.mjs +93 -0
  50. package/skills/app-dev/nextjs-fullstack/server-actions.md +409 -0
  51. package/skills/app-dev/prisma-setup/LICENSE +3 -0
  52. package/skills/app-dev/prisma-setup/SKILL.md +181 -0
  53. package/skills/app-dev/prisma-setup/nextjs.md +258 -0
  54. package/skills/app-dev/prisma-setup/release-check.mjs +93 -0
  55. package/skills/app-dev/prisma-setup/turborepo.md +301 -0
  56. package/skills/app-dev/pyspark/LICENSE +3 -0
  57. package/skills/app-dev/pyspark/SKILL.md +127 -0
  58. package/skills/app-dev/pyspark/assets/templates/etl.py +748 -0
  59. package/skills/app-dev/pyspark/assets/templates/utils/__init__.py +1 -0
  60. package/skills/app-dev/pyspark/assets/templates/utils/hudi_metadata.py +14 -0
  61. package/skills/app-dev/pyspark/references/diagnosis-and-profiling.md +169 -0
  62. package/skills/app-dev/pyspark/references/etl-contract.md +129 -0
  63. package/skills/app-dev/pyspark/references/production-validation.md +131 -0
  64. package/skills/app-dev/pyspark/references/reconciliation.md +38 -0
  65. package/skills/app-dev/pyspark/references/transformation-design.md +190 -0
  66. package/skills/app-dev/pyspark/references/velocity-feature-calculation.md +193 -0
  67. package/skills/app-dev/pyspark/release-check.mjs +93 -0
  68. package/skills/app-dev/pyspark/scripts/spark_eventlog_summary.py +223 -0
  69. package/skills/app-dev/python-backend/LICENSE +3 -0
  70. package/skills/app-dev/python-backend/SKILL.md +325 -0
  71. package/skills/app-dev/python-backend/assets/uv-install.sh +48 -0
  72. package/skills/app-dev/python-backend/references/uv-installs.md +83 -0
  73. package/skills/app-dev/python-backend/release-check.mjs +93 -0
  74. package/skills/app-dev/shadcn/LICENSE +3 -0
  75. package/skills/app-dev/shadcn/SKILL.md +120 -0
  76. package/skills/app-dev/shadcn/assets/shadcn-small.png +0 -0
  77. package/skills/app-dev/shadcn/assets/shadcn.png +0 -0
  78. package/skills/app-dev/shadcn/cli.md +411 -0
  79. package/skills/app-dev/shadcn/customization.md +224 -0
  80. package/skills/app-dev/shadcn/mcp.md +101 -0
  81. package/skills/app-dev/shadcn/release-check.mjs +93 -0
  82. package/skills/app-dev/shadcn/rules/base-vs-radix.md +323 -0
  83. package/skills/app-dev/shadcn/rules/component-selection.md +67 -0
  84. package/skills/app-dev/shadcn/rules/composition.md +195 -0
  85. package/skills/app-dev/shadcn/rules/data-table.md +201 -0
  86. package/skills/app-dev/shadcn/rules/forms.md +255 -0
  87. package/skills/app-dev/shadcn/rules/icons.md +103 -0
  88. package/skills/app-dev/shadcn/rules/styling.md +167 -0
  89. package/skills/app-dev/zod-v4/LICENSE +3 -0
  90. package/skills/app-dev/zod-v4/SKILL.md +286 -0
  91. package/skills/app-dev/zod-v4/release-check.mjs +93 -0
  92. package/skills/cicd/cloud-build/LICENSE +3 -0
  93. package/skills/cicd/cloud-build/SKILL.md +707 -0
  94. package/skills/cicd/cloud-build/release-check.mjs +93 -0
  95. package/skills/cicd/cloud-debug/LICENSE +3 -0
  96. package/skills/cicd/cloud-debug/SKILL.md +315 -0
  97. package/skills/cicd/cloud-debug/references/build-failures.md +238 -0
  98. package/skills/cicd/cloud-debug/references/deploy-failures.md +376 -0
  99. package/skills/cicd/cloud-debug/references/pipeline-failures.md +378 -0
  100. package/skills/cicd/cloud-debug/release-check.mjs +93 -0
  101. package/skills/cicd/cloud-deploy/LICENSE +3 -0
  102. package/skills/cicd/cloud-deploy/SKILL.md +230 -0
  103. package/skills/cicd/cloud-deploy/references/config-templates.md +257 -0
  104. package/skills/cicd/cloud-deploy/release-check.mjs +93 -0
  105. package/skills/cicd/docker/LICENSE +3 -0
  106. package/skills/cicd/docker/SKILL.md +151 -0
  107. package/skills/cicd/docker/release-check.mjs +93 -0
  108. package/skills/cicd/github-actions/LICENSE +3 -0
  109. package/skills/cicd/github-actions/SKILL.md +111 -0
  110. package/skills/cicd/github-actions/references/audit-profile-optimize.md +150 -0
  111. package/skills/cicd/github-actions/references/ci-case-studies.md +141 -0
  112. package/skills/cicd/github-actions/references/conditional-ci.md +214 -0
  113. package/skills/cicd/github-actions/references/debugging.md +13 -0
  114. package/skills/cicd/github-actions/references/pipeline.md +87 -0
  115. package/skills/cicd/github-actions/references/post-deploy-and-publishing.md +33 -0
  116. package/skills/cicd/github-actions/references/runners.md +253 -0
  117. package/skills/cicd/github-actions/references/security.md +29 -0
  118. package/skills/cicd/github-actions/references/speed-and-audit.md +115 -0
  119. package/skills/cicd/github-actions/references/two-pass-reading.md +92 -0
  120. package/skills/cicd/github-actions/release-check.mjs +93 -0
  121. package/skills/cicd/github-actions/scripts/ci-run-audit-core.mjs +612 -0
  122. package/skills/cicd/github-actions/scripts/ci-run-audit.mjs +4 -0
  123. package/skills/cicd/github-actions/scripts/ci-run-audit.test.mjs +637 -0
  124. package/skills/cicd/github-flow/LICENSE +3 -0
  125. package/skills/cicd/github-flow/SKILL.md +123 -0
  126. package/skills/cicd/github-flow/references/ci-conventions.md +14 -0
  127. package/skills/cicd/github-flow/release-check.mjs +93 -0
  128. package/skills/cicd/github-flow/scripts/flow-core.mjs +105 -0
  129. package/skills/cicd/github-flow/scripts/flow.mjs +81 -0
  130. package/skills/cicd/github-flow/scripts/flow.test.mjs +114 -0
  131. package/skills/cicd/github-flow/scripts/persist-conventions-core.mjs +117 -0
  132. package/skills/cicd/github-flow/scripts/persist-conventions.mjs +49 -0
  133. package/skills/cicd/github-flow/scripts/persist-conventions.test.mjs +108 -0
  134. package/skills/cicd/google-cloud/LICENSE +3 -0
  135. package/skills/cicd/google-cloud/SKILL.md +119 -0
  136. package/skills/cicd/google-cloud/references/gcs.md +469 -0
  137. package/skills/cicd/google-cloud/references/iam.md +451 -0
  138. package/skills/cicd/google-cloud/references/project.md +349 -0
  139. package/skills/cicd/google-cloud/references/secrets.md +336 -0
  140. package/skills/cicd/google-cloud/references/vpc.md +312 -0
  141. package/skills/cicd/google-cloud/release-check.mjs +93 -0
  142. package/skills/cicd/google-cloud/scripts/create-sa.sh +36 -0
  143. package/skills/cicd/google-cloud/scripts/gcp-config.sh +31 -0
  144. package/skills/cicd/google-cloud/scripts/grant-iap.sh +41 -0
  145. package/skills/cicd/google-cloud/scripts/setup-secrets.sh +48 -0
  146. package/skills/cicd/mergify/LICENSE +3 -0
  147. package/skills/cicd/mergify/SKILL.md +102 -0
  148. package/skills/cicd/mergify/assets/templates/mergify.yml +215 -0
  149. package/skills/cicd/mergify/assets/templates/ruleset.json +46 -0
  150. package/skills/cicd/mergify/references/branch-protection.md +282 -0
  151. package/skills/cicd/mergify/references/configuration.md +274 -0
  152. package/skills/cicd/mergify/references/diagnosis.md +109 -0
  153. package/skills/cicd/mergify/references/stacks.md +84 -0
  154. package/skills/cicd/mergify/references/traps.md +119 -0
  155. package/skills/cicd/mergify/references/watch-contract.md +274 -0
  156. package/skills/cicd/mergify/release-check.mjs +93 -0
  157. package/skills/cicd/mergify/scripts/audit-core.mjs +208 -0
  158. package/skills/cicd/mergify/scripts/audit.mjs +4 -0
  159. package/skills/cicd/mergify/scripts/audit.test.mjs +201 -0
  160. package/skills/cicd/mergify/scripts/entrypoints.test.mjs +106 -0
  161. package/skills/cicd/mergify/scripts/pr-620-mergify-comments.fixture.json +30 -0
  162. package/skills/cicd/mergify/scripts/stack-push-core.mjs +258 -0
  163. package/skills/cicd/mergify/scripts/stack-push.mjs +4 -0
  164. package/skills/cicd/mergify/scripts/stack-push.test.mjs +233 -0
  165. package/skills/cicd/mergify/scripts/watch-pr-delivery-core.mjs +1065 -0
  166. package/skills/cicd/mergify/scripts/watch-pr-delivery.mjs +4 -0
  167. package/skills/cicd/mergify/scripts/watch-pr-delivery.test.mjs +1826 -0
  168. package/skills/cicd/podman/LICENSE +3 -0
  169. package/skills/cicd/podman/SKILL.md +71 -0
  170. package/skills/cicd/podman/agents/openai.yaml +4 -0
  171. package/skills/cicd/podman/assets/templates/podman-compose-socket-directory.yml +6 -0
  172. package/skills/cicd/podman/assets/templates/podman-service-override.conf +3 -0
  173. package/skills/cicd/podman/references/compose-compatibility.md +70 -0
  174. package/skills/cicd/podman/references/networking-and-ports.md +74 -0
  175. package/skills/cicd/podman/references/rootless-services-and-sockets.md +156 -0
  176. package/skills/cicd/podman/references/troubleshooting.md +98 -0
  177. package/skills/cicd/podman/release-check.mjs +93 -0
  178. package/skills/content/article-review/LICENSE +3 -0
  179. package/skills/content/article-review/SKILL.md +66 -0
  180. package/skills/content/article-review/references/report-format.md +68 -0
  181. package/skills/content/article-review/references/template-guide.md +79 -0
  182. package/skills/content/article-review/references/template-wechat-payments.md +125 -0
  183. package/skills/content/article-review/release-check.mjs +93 -0
  184. package/skills/content/article-to-image/LICENSE +3 -0
  185. package/skills/content/article-to-image/SKILL.md +91 -0
  186. package/skills/content/article-to-image/references/formats.md +53 -0
  187. package/skills/content/article-to-image/release-check.mjs +93 -0
  188. package/skills/content/flowchart-svg/LICENSE +3 -0
  189. package/skills/content/flowchart-svg/SKILL.md +43 -0
  190. package/skills/content/flowchart-svg/release-check.mjs +93 -0
  191. package/skills/content/flowchart-svg/scripts/export_png.sh +8 -0
  192. package/skills/content/image-gen/LICENSE +3 -0
  193. package/skills/content/image-gen/SKILL.md +192 -0
  194. package/skills/content/image-gen/release-check.mjs +93 -0
  195. package/skills/content/image-gen/scripts/credentials.mjs +217 -0
  196. package/skills/content/image-gen/scripts/credentials.test.mjs +212 -0
  197. package/skills/content/image-gen/scripts/generate.mjs +240 -0
  198. package/skills/content/image-gen/scripts/options.mjs +293 -0
  199. package/skills/content/image-gen/scripts/options.test.mjs +245 -0
  200. package/skills/content/mermaid/LICENSE +3 -0
  201. package/skills/content/mermaid/SKILL.md +635 -0
  202. package/skills/content/mermaid/release-check.mjs +93 -0
  203. package/skills/content/wechat-article-writer/LICENSE +3 -0
  204. package/skills/content/wechat-article-writer/SKILL.md +92 -0
  205. package/skills/content/wechat-article-writer/references/style-selector.md +133 -0
  206. package/skills/content/wechat-article-writer/references/writing-rules.md +152 -0
  207. package/skills/content/wechat-article-writer/release-check.mjs +93 -0
  208. package/skills/content/wechat-article-writer/templates/wechat-comparison.md +52 -0
  209. package/skills/content/wechat-article-writer/templates/wechat-howto.md +51 -0
  210. package/skills/content/wechat-article-writer/templates/wechat-insight.md +50 -0
  211. package/skills/content/wechat-article-writer/templates/wechat-pitfall.md +52 -0
  212. package/skills/content/wechat-publisher/LICENSE +3 -0
  213. package/skills/content/wechat-publisher/SKILL.md +171 -0
  214. package/skills/content/wechat-publisher/references/api.md +105 -0
  215. package/skills/content/wechat-publisher/references/layout-rules.md +57 -0
  216. package/skills/content/wechat-publisher/references/wechat-safe-template.html +86 -0
  217. package/skills/content/wechat-publisher/release-check.mjs +93 -0
  218. package/skills/content/wechat-publisher/scripts/md_to_wechat_html.py +194 -0
  219. package/skills/content/wechat-publisher/scripts/publish.py +239 -0
  220. package/skills/content/wechat-search/LICENSE +3 -0
  221. package/skills/content/wechat-search/SKILL.md +211 -0
  222. package/skills/content/wechat-search/release-check.mjs +93 -0
  223. package/skills/content/wechat-search/scripts/start-chrome.sh +83 -0
  224. package/skills/content/xai-search/LICENSE +3 -0
  225. package/skills/content/xai-search/SKILL.md +79 -0
  226. package/skills/content/xai-search/release-check.mjs +93 -0
  227. package/skills/content/xai-search/scripts/xai_search.sh +187 -0
  228. package/skills/content/xai-search/tests/smoke_test.sh +36 -0
  229. package/skills/core/distill-writing/LICENSE +3 -0
  230. package/skills/core/distill-writing/SKILL.md +74 -0
  231. package/skills/core/distill-writing/references/extraction.md +95 -0
  232. package/skills/core/distill-writing/references/updating.md +46 -0
  233. package/skills/core/distill-writing/release-check.mjs +93 -0
  234. package/skills/core/doc-to-md/LICENSE +3 -0
  235. package/skills/core/doc-to-md/SKILL.md +78 -0
  236. package/skills/core/doc-to-md/release-check.mjs +93 -0
  237. package/skills/core/doc-to-md/scripts/convert.py +157 -0
  238. package/skills/core/editorial-review/LICENSE +3 -0
  239. package/skills/core/editorial-review/SKILL.md +79 -0
  240. package/skills/core/editorial-review/references/checklist.md +94 -0
  241. package/skills/core/editorial-review/release-check.mjs +93 -0
  242. package/skills/core/house-style/LICENSE +3 -0
  243. package/skills/core/house-style/SKILL.md +33 -0
  244. package/skills/core/house-style/references/defaults.md +66 -0
  245. package/skills/core/house-style/references/rules.md +267 -0
  246. package/skills/core/house-style/references/sources.md +27 -0
  247. package/skills/core/house-style/references/style-en.md +131 -0
  248. package/skills/core/house-style/references/style-zh.md +141 -0
  249. package/skills/core/house-style/references/terminology-zh.md +223 -0
  250. package/skills/core/house-style/release-check.mjs +93 -0
  251. package/skills/core/house-style/templates/brd.md +103 -0
  252. package/skills/core/house-style/templates/commercial-proposal.md +93 -0
  253. package/skills/core/house-style/templates/compliance-policy.md +109 -0
  254. package/skills/core/house-style/templates/gap-analysis.md +105 -0
  255. package/skills/core/house-style/templates/general.md +63 -0
  256. package/skills/core/house-style/templates/integration-guide.md +98 -0
  257. package/skills/core/house-style/templates/prd.md +81 -0
  258. package/skills/core/house-style/templates/risk-operations-procedure.md +94 -0
  259. package/skills/core/house-style/templates/technical-spec.md +96 -0
  260. package/skills/core/polish-cn/LICENSE +3 -0
  261. package/skills/core/polish-cn/SKILL.md +102 -0
  262. package/skills/core/polish-cn/references/brief.md +93 -0
  263. package/skills/core/polish-cn/references/models.md +76 -0
  264. package/skills/core/polish-cn/release-check.mjs +93 -0
  265. package/skills/core/polish-cn/scripts/polish-cn.test.mjs +244 -0
  266. package/skills/core/polish-cn/scripts/polish_blocks.py +489 -0
  267. package/skills/core/reg-parser/LICENSE +3 -0
  268. package/skills/core/reg-parser/SKILL.md +212 -0
  269. package/skills/core/reg-parser/references/checklist-schema.md +223 -0
  270. package/skills/core/reg-parser/references/checklists/hk-amlo-checklist.json +1306 -0
  271. package/skills/core/reg-parser/references/checklists/hk-amlo-checklist.md +469 -0
  272. package/skills/core/reg-parser/references/checklists/hk-fi-corporate-onboarding-cdd-checklist.json +634 -0
  273. package/skills/core/reg-parser/references/checklists/hk-fi-corporate-onboarding-cdd-checklist.md +233 -0
  274. package/skills/core/reg-parser/references/checklists/hk-mso-guideline-checklist.json +2194 -0
  275. package/skills/core/reg-parser/references/checklists/hk-mso-guideline-checklist.md +771 -0
  276. package/skills/core/reg-parser/references/checklists/kyc-aml-checklist.md +258 -0
  277. package/skills/core/reg-parser/references/checklists/visa-vars-checklist.md +1058 -0
  278. package/skills/core/reg-parser/references/mandates/hk-amlo-cap615.md +389 -0
  279. package/skills/core/reg-parser/references/mandates/visa-vars.md +205 -0
  280. package/skills/core/reg-parser/release-check.mjs +93 -0
  281. package/skills/core/reg-parser/scripts/compare_checklist.py +230 -0
  282. package/skills/core/reg-parser/scripts/dump_checklist.py +361 -0
  283. package/skills/core/reg-parser/scripts/preprocess-mandate.sh +187 -0
  284. package/skills/core/reg-parser/scripts/reg-parser.test.mjs +165 -0
  285. package/skills/core/reg-parser/scripts/test_quarantine.sh +105 -0
  286. package/skills/core/reg-parser/scripts/validate_checklist.py +563 -0
  287. package/skills/core/reg-parser/scripts/validate_mandate.py +273 -0
  288. package/skills/core/terminology/LICENSE +3 -0
  289. package/skills/core/terminology/SKILL.md +62 -0
  290. package/skills/core/terminology/references/format.md +50 -0
  291. package/skills/core/terminology/references/init.md +32 -0
  292. package/skills/core/terminology/release-check.mjs +93 -0
  293. package/skills/core/write-doc/LICENSE +3 -0
  294. package/skills/core/write-doc/SKILL.md +141 -0
  295. package/skills/core/write-doc/references/bilingual.md +60 -0
  296. package/skills/core/write-doc/release-check.mjs +93 -0
  297. package/skills/engineering/better-review/LICENSE +3 -0
  298. package/skills/engineering/better-review/SKILL.md +249 -0
  299. package/skills/engineering/better-review/agents/openai.yaml +9 -0
  300. package/skills/engineering/better-review/references/domain-hazards.md +53 -0
  301. package/skills/engineering/better-review/references/passes.md +147 -0
  302. package/skills/engineering/better-review/references/result.md +151 -0
  303. package/skills/engineering/better-review/release-check.mjs +93 -0
  304. package/skills/engineering/better-review/scripts/pr-context.mjs +212 -0
  305. package/skills/engineering/better-review/scripts/pr-context.test.mjs +168 -0
  306. package/skills/engineering/better-review/scripts/rereview-scope.mjs +503 -0
  307. package/skills/engineering/better-review/scripts/rereview-scope.test.mjs +587 -0
  308. package/skills/engineering/better-review/scripts/scan-diff.mjs +365 -0
  309. package/skills/engineering/better-review/scripts/scan-diff.test.mjs +414 -0
  310. package/skills/engineering/better-review/scripts/vendor-sync.test.mjs +96 -0
  311. package/skills/engineering/e2e-test/LICENSE +3 -0
  312. package/skills/engineering/e2e-test/SKILL.md +98 -0
  313. package/skills/engineering/e2e-test/assets/ci-gates.cloudbuild.yaml +24 -0
  314. package/skills/engineering/e2e-test/references/authoring/auth-flows.md +159 -0
  315. package/skills/engineering/e2e-test/references/authoring/playwright-config.md +73 -0
  316. package/skills/engineering/e2e-test/references/authoring/playwright-patterns.md +144 -0
  317. package/skills/engineering/e2e-test/references/ci-integration.md +25 -0
  318. package/skills/engineering/e2e-test/references/ci-playwright-container.md +290 -0
  319. package/skills/engineering/e2e-test/references/presentation-sweep.md +104 -0
  320. package/skills/engineering/e2e-test/references/reviewing.md +41 -0
  321. package/skills/engineering/e2e-test/references/route-manifest.md +51 -0
  322. package/skills/engineering/e2e-test/release-check.mjs +93 -0
  323. package/skills/engineering/e2e-test/scripts/detect-routes-nextjs.mjs +200 -0
  324. package/skills/engineering/e2e-test/scripts/presentation-checks.mjs +171 -0
  325. package/skills/engineering/e2e-test/scripts/presentation-checks.test.mjs +106 -0
  326. package/skills/engineering/e2e-test/scripts/presentation-perceivability.mjs +179 -0
  327. package/skills/engineering/e2e-test/scripts/presentation-perceivability.test.mjs +117 -0
  328. package/skills/engineering/e2e-test/scripts/presentation-reachability.mjs +154 -0
  329. package/skills/engineering/e2e-test/scripts/presentation-reachability.test.mjs +69 -0
  330. package/skills/engineering/e2e-test/scripts/presentation-render-health.mjs +141 -0
  331. package/skills/engineering/e2e-test/scripts/presentation-render-health.test.mjs +98 -0
  332. package/skills/engineering/e2e-test/scripts/presentation-sweep.mjs +147 -0
  333. package/skills/engineering/e2e-test/scripts/presentation-sweep.test.mjs +71 -0
  334. package/skills/engineering/e2e-test/scripts/presentation-temporal.mjs +127 -0
  335. package/skills/engineering/e2e-test/scripts/presentation-temporal.test.mjs +59 -0
  336. package/skills/engineering/e2e-test/scripts/project-route-manifest.mjs +82 -0
  337. package/skills/engineering/e2e-test/scripts/project-route-manifest.test.mjs +76 -0
  338. package/skills/engineering/e2e-test/scripts/validate-manifest.mjs +106 -0
  339. package/skills/engineering/engineering-runtime/LICENSE +3 -0
  340. package/skills/engineering/engineering-runtime/SKILL.md +11 -0
  341. package/skills/engineering/engineering-runtime/agents/openai.yaml +6 -0
  342. package/skills/engineering/engineering-runtime/coherence/workflow.json +597 -0
  343. package/skills/engineering/engineering-runtime/engineering-runtime.test.mjs +68 -0
  344. package/skills/engineering/engineering-runtime/release-check.mjs +93 -0
  345. package/skills/engineering/engineering-runtime/scripts/exact-head-artifact.mjs +131 -0
  346. package/skills/engineering/engineering-runtime/scripts/head-check-set.mjs +398 -0
  347. package/skills/engineering/engineering-runtime/scripts/invocation-policy.mjs +187 -0
  348. package/skills/engineering/engineering-runtime/scripts/invocation-policy.test.mjs +95 -0
  349. package/skills/engineering/engineering-runtime/scripts/main-module.mjs +79 -0
  350. package/skills/engineering/engineering-runtime/scripts/main-module.test.mjs +288 -0
  351. package/skills/engineering/engineering-runtime/scripts/mergify-yaml.mjs +11 -0
  352. package/skills/engineering/engineering-runtime/scripts/package-lock.json +43 -0
  353. package/skills/engineering/engineering-runtime/scripts/package.json +10 -0
  354. package/skills/engineering/engineering-runtime/scripts/required-check-plan.mjs +223 -0
  355. package/skills/engineering/engineering-runtime/scripts/required-check-plan.test.mjs +96 -0
  356. package/skills/engineering/engineering-runtime/scripts/review-completion.mjs +56 -0
  357. package/skills/engineering/engineering-runtime/scripts/workflow-coherence.mjs +595 -0
  358. package/skills/engineering/engineering-runtime/scripts/workflow-policy.mjs +189 -0
  359. package/skills/engineering/engineering-runtime/scripts/yaml-mapping.mjs +18 -0
  360. package/skills/engineering/ensure-coverage/LICENSE +3 -0
  361. package/skills/engineering/ensure-coverage/SKILL.md +129 -0
  362. package/skills/engineering/ensure-coverage/references/breadth/coverage-ledger.md +92 -0
  363. package/skills/engineering/ensure-coverage/references/breadth/inventory-contract.md +85 -0
  364. package/skills/engineering/ensure-coverage/references/breadth/surface-baseline.md +44 -0
  365. package/skills/engineering/ensure-coverage/references/breadth/surface-discovery.md +16 -0
  366. package/skills/engineering/ensure-coverage/references/depth/characterization.md +68 -0
  367. package/skills/engineering/ensure-coverage/references/depth/coverage.config.example.json +19 -0
  368. package/skills/engineering/ensure-coverage/references/depth/grading.md +35 -0
  369. package/skills/engineering/ensure-coverage/references/depth/mock-policy.md +57 -0
  370. package/skills/engineering/ensure-coverage/references/depth/test-smells.md +39 -0
  371. package/skills/engineering/ensure-coverage/references/enforcement/ci-contract.md +44 -0
  372. package/skills/engineering/ensure-coverage/references/examples/coverage-ledger.md +110 -0
  373. package/skills/engineering/ensure-coverage/references/examples/refund-flow.md +35 -0
  374. package/skills/engineering/ensure-coverage/references/presentation/axis.md +64 -0
  375. package/skills/engineering/ensure-coverage/references/process/audit-mode.md +27 -0
  376. package/skills/engineering/ensure-coverage/references/process/output-template.md +139 -0
  377. package/skills/engineering/ensure-coverage/references/process/test-strategy.md +56 -0
  378. package/skills/engineering/ensure-coverage/release-check.mjs +93 -0
  379. package/skills/engineering/ensure-coverage/schemas/coverage-config.schema.json +67 -0
  380. package/skills/engineering/ensure-coverage/schemas/coverage-file.schema.json +140 -0
  381. package/skills/engineering/ensure-coverage/scripts/README.md +99 -0
  382. package/skills/engineering/ensure-coverage/scripts/adapters/nextjs-inventory.mjs +182 -0
  383. package/skills/engineering/ensure-coverage/scripts/adapters/nextjs-inventory.test.mjs +96 -0
  384. package/skills/engineering/ensure-coverage/scripts/check-quarantine-expiry.mjs +105 -0
  385. package/skills/engineering/ensure-coverage/scripts/check-quarantine-expiry.test.mjs +47 -0
  386. package/skills/engineering/ensure-coverage/scripts/ci-audit.mjs +137 -0
  387. package/skills/engineering/ensure-coverage/scripts/ci-audit.test.mjs +86 -0
  388. package/skills/engineering/ensure-coverage/scripts/coverage-ledger.mjs +674 -0
  389. package/skills/engineering/ensure-coverage/scripts/coverage-ledger.test.mjs +447 -0
  390. package/skills/engineering/ensure-coverage/scripts/design-parity.mjs +591 -0
  391. package/skills/engineering/ensure-coverage/scripts/design-parity.test.mjs +552 -0
  392. package/skills/engineering/ensure-coverage/scripts/lint-tests.mjs +282 -0
  393. package/skills/engineering/ensure-coverage/scripts/lint-tests.test.mjs +289 -0
  394. package/skills/engineering/ensure-coverage/scripts/mock-policy-config.mjs +176 -0
  395. package/skills/engineering/ensure-coverage/scripts/mock-policy-config.test.mjs +119 -0
  396. package/skills/engineering/ensure-coverage/scripts/package.json +19 -0
  397. package/skills/engineering/golden-path/LICENSE +3 -0
  398. package/skills/engineering/golden-path/SKILL.md +230 -0
  399. package/skills/engineering/golden-path/agents/openai.yaml +3 -0
  400. package/skills/engineering/golden-path/assets/golden-paths.example.json +57 -0
  401. package/skills/engineering/golden-path/references/contract.md +239 -0
  402. package/skills/engineering/golden-path/references/migration.md +111 -0
  403. package/skills/engineering/golden-path/release-check.mjs +93 -0
  404. package/skills/engineering/golden-path/scripts/golden-path-core.mjs +1779 -0
  405. package/skills/engineering/golden-path/scripts/golden-path.mjs +6 -0
  406. package/skills/engineering/golden-path/scripts/golden-path.test.mjs +1457 -0
  407. package/skills/engineering/harness-runtime/LICENSE +3 -0
  408. package/skills/engineering/harness-runtime/SKILL.md +19 -0
  409. package/skills/engineering/harness-runtime/agents/openai.yaml +6 -0
  410. package/skills/engineering/harness-runtime/bin/discover-models.mjs +4 -0
  411. package/skills/engineering/harness-runtime/bin/model-catalog.mjs +4 -0
  412. package/skills/engineering/harness-runtime/contracts.md +15 -0
  413. package/skills/engineering/harness-runtime/discover-models.mjs +392 -0
  414. package/skills/engineering/harness-runtime/discover-models.test.mjs +363 -0
  415. package/skills/engineering/harness-runtime/fixtures/native-question-schemas.json +33 -0
  416. package/skills/engineering/harness-runtime/fixtures/question-responses.json +54 -0
  417. package/skills/engineering/harness-runtime/harness-runtime.test.mjs +967 -0
  418. package/skills/engineering/harness-runtime/index.mjs +767 -0
  419. package/skills/engineering/harness-runtime/model-catalog-seed.test.mjs +829 -0
  420. package/skills/engineering/harness-runtime/model-catalog.mjs +787 -0
  421. package/skills/engineering/harness-runtime/model-catalog.test.mjs +366 -0
  422. package/skills/engineering/harness-runtime/native-question-contracts.md +37 -0
  423. package/skills/engineering/harness-runtime/references/model-catalog-seed.json +408 -0
  424. package/skills/engineering/harness-runtime/references/model-catalog.md +57 -0
  425. package/skills/engineering/harness-runtime/release-check.mjs +93 -0
  426. package/skills/engineering/resolve-issues/LICENSE +3 -0
  427. package/skills/engineering/resolve-issues/SKILL.md +250 -0
  428. package/skills/engineering/resolve-issues/agents/openai.yaml +9 -0
  429. package/skills/engineering/resolve-issues/plugin-hooks.json +17 -0
  430. package/skills/engineering/resolve-issues/references/canary.md +28 -0
  431. package/skills/engineering/resolve-issues/references/ci.md +105 -0
  432. package/skills/engineering/resolve-issues/references/done.md +25 -0
  433. package/skills/engineering/resolve-issues/references/dropbox.md +90 -0
  434. package/skills/engineering/resolve-issues/references/expire.md +318 -0
  435. package/skills/engineering/resolve-issues/references/exploration.md +202 -0
  436. package/skills/engineering/resolve-issues/references/implementation.md +303 -0
  437. package/skills/engineering/resolve-issues/references/preflight.md +445 -0
  438. package/skills/engineering/resolve-issues/references/review.md +228 -0
  439. package/skills/engineering/resolve-issues/references/shared-modules.md +44 -0
  440. package/skills/engineering/resolve-issues/references/task-plan.md +264 -0
  441. package/skills/engineering/resolve-issues/release-check.mjs +93 -0
  442. package/skills/engineering/resolve-issues/scripts/cleanup-runs.mjs +364 -0
  443. package/skills/engineering/resolve-issues/scripts/cleanup-runs.test.mjs +280 -0
  444. package/skills/engineering/resolve-issues/scripts/discover-models.mjs +9 -0
  445. package/skills/engineering/resolve-issues/scripts/dropbox.mjs +473 -0
  446. package/skills/engineering/resolve-issues/scripts/dropbox.test.mjs +346 -0
  447. package/skills/engineering/resolve-issues/scripts/findings-reuse.mjs +98 -0
  448. package/skills/engineering/resolve-issues/scripts/findings-reuse.test.mjs +88 -0
  449. package/skills/engineering/resolve-issues/scripts/github-reviews.mjs +384 -0
  450. package/skills/engineering/resolve-issues/scripts/github-reviews.test.mjs +264 -0
  451. package/skills/engineering/resolve-issues/scripts/install-hooks.mjs +135 -0
  452. package/skills/engineering/resolve-issues/scripts/install-hooks.test.mjs +79 -0
  453. package/skills/engineering/resolve-issues/scripts/issue-tree.mjs +162 -0
  454. package/skills/engineering/resolve-issues/scripts/issue-tree.test.mjs +107 -0
  455. package/skills/engineering/resolve-issues/scripts/manual-invocation.test.mjs +14 -0
  456. package/skills/engineering/resolve-issues/scripts/model-catalog.mjs +9 -0
  457. package/skills/engineering/resolve-issues/scripts/next-actions-capacity.test.mjs +149 -0
  458. package/skills/engineering/resolve-issues/scripts/next-actions.mjs +856 -0
  459. package/skills/engineering/resolve-issues/scripts/next-actions.test.mjs +915 -0
  460. package/skills/engineering/resolve-issues/scripts/plan-sync.mjs +269 -0
  461. package/skills/engineering/resolve-issues/scripts/plan-sync.test.mjs +156 -0
  462. package/skills/engineering/resolve-issues/scripts/preflight-models.mjs +736 -0
  463. package/skills/engineering/resolve-issues/scripts/preflight-models.test.mjs +448 -0
  464. package/skills/engineering/resolve-issues/scripts/ready-check.mjs +185 -0
  465. package/skills/engineering/resolve-issues/scripts/ready-check.test.mjs +217 -0
  466. package/skills/engineering/resolve-issues/scripts/rehydrate.mjs +98 -0
  467. package/skills/engineering/resolve-issues/scripts/rehydrate.test.mjs +91 -0
  468. package/skills/engineering/resolve-issues/scripts/review-verdict.mjs +509 -0
  469. package/skills/engineering/resolve-issues/scripts/review-verdict.test.mjs +1060 -0
  470. package/skills/engineering/resolve-issues/scripts/size-check.mjs +492 -0
  471. package/skills/engineering/resolve-issues/scripts/size-check.test.mjs +458 -0
  472. package/skills/engineering/resolve-release/LICENSE +3 -0
  473. package/skills/engineering/resolve-release/SKILL.md +215 -0
  474. package/skills/engineering/resolve-release/agents/openai.yaml +8 -0
  475. package/skills/engineering/resolve-release/flows/cloud-run-canary.md +13 -0
  476. package/skills/engineering/resolve-release/flows/cloud-run.md +7 -0
  477. package/skills/engineering/resolve-release/flows/root-tag-npm.md +13 -0
  478. package/skills/engineering/resolve-release/flows/workspace-npm.md +22 -0
  479. package/skills/engineering/resolve-release/references/canary.md +51 -0
  480. package/skills/engineering/resolve-release/references/candidate.md +41 -0
  481. package/skills/engineering/resolve-release/references/cut.md +131 -0
  482. package/skills/engineering/resolve-release/references/dark-launch.md +66 -0
  483. package/skills/engineering/resolve-release/references/flows.md +150 -0
  484. package/skills/engineering/resolve-release/references/preflight.md +154 -0
  485. package/skills/engineering/resolve-release/references/prepared-metadata.md +260 -0
  486. package/skills/engineering/resolve-release/references/promotion.md +82 -0
  487. package/skills/engineering/resolve-release/references/publish.md +232 -0
  488. package/skills/engineering/resolve-release/references/workspace-npm.md +103 -0
  489. package/skills/engineering/resolve-release/release-check.mjs +93 -0
  490. package/skills/engineering/resolve-release/scripts/apply.mjs +212 -0
  491. package/skills/engineering/resolve-release/scripts/apply.test.mjs +99 -0
  492. package/skills/engineering/resolve-release/scripts/dark-flags.mjs +134 -0
  493. package/skills/engineering/resolve-release/scripts/dark-flags.test.mjs +100 -0
  494. package/skills/engineering/resolve-release/scripts/flow.mjs +500 -0
  495. package/skills/engineering/resolve-release/scripts/flow.test.mjs +340 -0
  496. package/skills/engineering/resolve-release/scripts/green-head.mjs +231 -0
  497. package/skills/engineering/resolve-release/scripts/green-head.test.mjs +101 -0
  498. package/skills/engineering/resolve-release/scripts/npm-version-absence.mjs +138 -0
  499. package/skills/engineering/resolve-release/scripts/npm-version-absence.test.mjs +426 -0
  500. package/skills/engineering/resolve-release/scripts/plan-npm.test.mjs +659 -0
  501. package/skills/engineering/resolve-release/scripts/plan-toml-boundary.test.mjs +317 -0
  502. package/skills/engineering/resolve-release/scripts/plan-uv.test.mjs +291 -0
  503. package/skills/engineering/resolve-release/scripts/plan.mjs +806 -0
  504. package/skills/engineering/resolve-release/scripts/plan.test.mjs +428 -0
  505. package/skills/engineering/rush-issues/LICENSE +3 -0
  506. package/skills/engineering/rush-issues/SKILL.md +58 -0
  507. package/skills/engineering/rush-issues/agents/openai.yaml +8 -0
  508. package/skills/engineering/rush-issues/rehydrate.mjs +10 -0
  509. package/skills/engineering/rush-issues/release-check.mjs +93 -0
  510. package/skills/engineering/rush-release/LICENSE +3 -0
  511. package/skills/engineering/rush-release/SKILL.md +35 -0
  512. package/skills/engineering/rush-release/agents/openai.yaml +8 -0
  513. package/skills/engineering/rush-release/release-check.mjs +93 -0
  514. package/skills/engineering/test-quality/LICENSE +3 -0
  515. package/skills/engineering/test-quality/SKILL.md +79 -0
  516. package/skills/engineering/test-quality/references/audit.md +80 -0
  517. package/skills/engineering/test-quality/references/lint.md +24 -0
  518. package/skills/engineering/test-quality/references/principles.md +143 -0
  519. package/skills/engineering/test-quality/references/testing-conventions.md +9 -0
  520. package/skills/engineering/test-quality/release-check.mjs +93 -0
  521. package/skills/engineering/test-quality/scripts/lint-tests.mjs +574 -0
  522. package/skills/engineering/test-quality/scripts/lint-tests.test.mjs +591 -0
  523. package/skills/engineering/test-quality/scripts/mock-policy-config.mjs +176 -0
  524. package/skills/engineering/test-quality/scripts/mock-policy-config.test.mjs +119 -0
  525. package/skills/engineering/test-quality/scripts/persist-conventions-core.mjs +117 -0
  526. package/skills/engineering/test-quality/scripts/persist-conventions.mjs +17 -0
  527. package/skills/engineering/test-quality/scripts/persist-conventions.test.mjs +104 -0
  528. package/skills/risk-compliance/compliance-audit/LICENSE +3 -0
  529. package/skills/risk-compliance/compliance-audit/SKILL.md +439 -0
  530. package/skills/risk-compliance/compliance-audit/references/findings-schema.md +293 -0
  531. package/skills/risk-compliance/compliance-audit/references/normalization-rules.md +45 -0
  532. package/skills/risk-compliance/compliance-audit/references/vars-checklist.md +1068 -0
  533. package/skills/risk-compliance/compliance-audit/references/vars-findings-schema.md +398 -0
  534. package/skills/risk-compliance/compliance-audit/release-check.mjs +93 -0
  535. package/skills/risk-compliance/compliance-audit/scripts/compliance-audit.test.mjs +14 -0
  536. package/skills/risk-compliance/compliance-audit/scripts/export_tracker_xlsx.py +221 -0
  537. package/skills/risk-compliance/compliance-audit/scripts/reconcile_tracker.py +458 -0
  538. package/skills/risk-compliance/compliance-audit/scripts/test_export_tracker_xlsx.py +97 -0
  539. package/skills/risk-compliance/compliance-audit/scripts/test_validate_tracker.py +157 -0
  540. package/skills/risk-compliance/compliance-audit/scripts/validate_tracker.py +829 -0
  541. package/skills/risk-compliance/contract-compare/LICENSE +3 -0
  542. package/skills/risk-compliance/contract-compare/SKILL.md +199 -0
  543. package/skills/risk-compliance/contract-compare/references/comparison-dimensions.md +209 -0
  544. package/skills/risk-compliance/contract-compare/release-check.mjs +93 -0
  545. package/skills/risk-compliance/contract-review/LICENSE +3 -0
  546. package/skills/risk-compliance/contract-review/SKILL.md +240 -0
  547. package/skills/risk-compliance/contract-review/references/review-criteria.md +223 -0
  548. package/skills/risk-compliance/contract-review/release-check.mjs +93 -0
  549. package/skills/risk-compliance/doc-authenticity/LICENSE +3 -0
  550. package/skills/risk-compliance/doc-authenticity/SKILL.md +160 -0
  551. package/skills/risk-compliance/doc-authenticity/agents/openai.yaml +8 -0
  552. package/skills/risk-compliance/doc-authenticity/manual-invocation.test.mjs +12 -0
  553. package/skills/risk-compliance/doc-authenticity/references/agreement.md +66 -0
  554. package/skills/risk-compliance/doc-authenticity/references/bank-statement.md +150 -0
  555. package/skills/risk-compliance/doc-authenticity/references/forensic-signals.md +157 -0
  556. package/skills/risk-compliance/doc-authenticity/references/image-signals.md +114 -0
  557. package/skills/risk-compliance/doc-authenticity/references/invoice.md +66 -0
  558. package/skills/risk-compliance/doc-authenticity/references/issuer-profiles.md +86 -0
  559. package/skills/risk-compliance/doc-authenticity/references/verdict-and-report.md +95 -0
  560. package/skills/risk-compliance/doc-authenticity/references/verdict.schema.json +81 -0
  561. package/skills/risk-compliance/doc-authenticity/release-check.mjs +93 -0
  562. package/skills/risk-compliance/doc-authenticity/scripts/image_forensics.py +294 -0
  563. package/skills/risk-compliance/doc-authenticity/scripts/pdf_forensics.py +401 -0
  564. package/skills/risk-compliance/doc-authenticity/scripts/validate_codes.py +224 -0
  565. package/skills/risk-compliance/doc-authenticity/scripts/validate_verdict.py +308 -0
  566. package/skills/risk-compliance/doc-authenticity/scripts/validate_verdict.test.mjs +212 -0
  567. package/skills/risk-compliance/fraud-analysis/LICENSE +3 -0
  568. package/skills/risk-compliance/fraud-analysis/SKILL.md +114 -0
  569. package/skills/risk-compliance/fraud-analysis/references/archetypes/authorized-payment-scam.md +41 -0
  570. package/skills/risk-compliance/fraud-analysis/references/archetypes/first-party-fraud.md +44 -0
  571. package/skills/risk-compliance/fraud-analysis/references/archetypes/third-party-fraud.md +27 -0
  572. package/skills/risk-compliance/fraud-analysis/references/contexts/bank-transfer.md +24 -0
  573. package/skills/risk-compliance/fraud-analysis/references/contexts/card-payment.md +30 -0
  574. package/skills/risk-compliance/fraud-analysis/references/contexts/payment-collection.md +20 -0
  575. package/skills/risk-compliance/fraud-analysis/references/contexts/payout.md +20 -0
  576. package/skills/risk-compliance/fraud-analysis/references/feature-engineering.md +158 -0
  577. package/skills/risk-compliance/fraud-analysis/references/mechanisms/account-takeover.md +36 -0
  578. package/skills/risk-compliance/fraud-analysis/references/report-rationale.md +45 -0
  579. package/skills/risk-compliance/fraud-analysis/references/report-template.md +190 -0
  580. package/skills/risk-compliance/fraud-analysis/references/review-checklist.md +175 -0
  581. package/skills/risk-compliance/fraud-analysis/references/taxonomy.md +79 -0
  582. package/skills/risk-compliance/fraud-analysis/references/terminology.md +108 -0
  583. package/skills/risk-compliance/fraud-analysis/references/workflow.md +175 -0
  584. package/skills/risk-compliance/fraud-analysis/release-check.mjs +93 -0
  585. package/skills/risk-compliance/payment-analysis/LICENSE +3 -0
  586. package/skills/risk-compliance/payment-analysis/SKILL.md +180 -0
  587. package/skills/risk-compliance/payment-analysis/references/auth-rate-actions.md +30 -0
  588. package/skills/risk-compliance/payment-analysis/references/chargebacks.md +208 -0
  589. package/skills/risk-compliance/payment-analysis/references/chinese-polish.md +51 -0
  590. package/skills/risk-compliance/payment-analysis/references/event-layers.md +127 -0
  591. package/skills/risk-compliance/payment-analysis/references/fx.md +59 -0
  592. package/skills/risk-compliance/payment-analysis/references/journey.md +79 -0
  593. package/skills/risk-compliance/payment-analysis/references/metrics.md +67 -0
  594. package/skills/risk-compliance/payment-analysis/references/report-template.md +119 -0
  595. package/skills/risk-compliance/payment-analysis/references/terminology.md +95 -0
  596. package/skills/risk-compliance/payment-analysis/references/visualization.md +56 -0
  597. package/skills/risk-compliance/payment-analysis/release-check.mjs +93 -0
  598. package/skills/risk-compliance/report-writing/LICENSE +3 -0
  599. package/skills/risk-compliance/report-writing/SKILL.md +220 -0
  600. package/skills/risk-compliance/report-writing/references/audit-report-template.md +121 -0
  601. package/skills/risk-compliance/report-writing/references/external-assessment-template.md +167 -0
  602. package/skills/risk-compliance/report-writing/references/management-report-template.md +145 -0
  603. package/skills/risk-compliance/report-writing/references/vars-report-template.md +224 -0
  604. package/skills/risk-compliance/report-writing/release-check.mjs +93 -0
  605. package/skills/risk-compliance/similar-domain/LICENSE +3 -0
  606. package/skills/risk-compliance/similar-domain/SKILL.md +203 -0
  607. package/skills/risk-compliance/similar-domain/references/entities.md +67 -0
  608. package/skills/risk-compliance/similar-domain/references/fingerprints.md +134 -0
  609. package/skills/risk-compliance/similar-domain/references/pivots.md +82 -0
  610. package/skills/risk-compliance/similar-domain/references/report-template.md +93 -0
  611. package/skills/risk-compliance/similar-domain/references/scoring.md +130 -0
  612. package/skills/risk-compliance/similar-domain/references/terminology.md +41 -0
  613. package/skills/risk-compliance/similar-domain/references/workflow.md +85 -0
  614. package/skills/risk-compliance/similar-domain/release-check.mjs +93 -0
  615. package/skills/risk-compliance/tld-detection/LICENSE +3 -0
  616. package/skills/risk-compliance/tld-detection/SKILL.md +245 -0
  617. package/skills/risk-compliance/tld-detection/agents/openai.yaml +9 -0
  618. package/skills/risk-compliance/tld-detection/references/chinese-polish.md +55 -0
  619. package/skills/risk-compliance/tld-detection/references/clean.md +51 -0
  620. package/skills/risk-compliance/tld-detection/references/clustering.md +235 -0
  621. package/skills/risk-compliance/tld-detection/references/decision.md +189 -0
  622. package/skills/risk-compliance/tld-detection/references/fx-conversion.md +232 -0
  623. package/skills/risk-compliance/tld-detection/references/report-template.md +272 -0
  624. package/skills/risk-compliance/tld-detection/references/streams.md +141 -0
  625. package/skills/risk-compliance/tld-detection/references/terminology.md +95 -0
  626. package/skills/risk-compliance/tld-detection/references/workflow.md +95 -0
  627. package/skills/risk-compliance/tld-detection/release-check.mjs +93 -0
  628. package/skills/risk-compliance/tld-detection/scripts/detect_ladders.py +390 -0
  629. package/skills/risk-compliance/tld-detection/scripts/detect_ladders.test.mjs +14 -0
  630. package/skills/risk-compliance/tld-detection/scripts/detect_streams.py +650 -0
  631. package/skills/risk-compliance/tld-detection/scripts/detect_streams.test.mjs +14 -0
  632. package/skills/risk-compliance/tld-detection/tests/test_detect_ladders.py +134 -0
  633. package/skills/risk-compliance/tld-detection/tests/test_detect_streams.py +520 -0
@@ -0,0 +1,389 @@
1
+ # Hong Kong Anti-Money Laundering and Counter-Terrorist Financing Ordinance (Cap. 615) — Contract Obligation Extract
2
+
3
+ > **Source:** Anti-Money Laundering and Counter-Terrorist Financing Ordinance (Cap. 615), Hong Kong
4
+ > **Slug:** `hk-amlo-cap615`
5
+ > **Jurisdiction:** Hong Kong SAR
6
+ > **Last Updated Date:** 2 November 2023 (as printed in ordinance)
7
+ > **Converted from:** PDF via pdftotext
8
+ > **Scope:** Applies to **financial institutions** (authorized institutions, licensed corporations, insurers, licensed money service operators, SVF licensees, licensed VAS providers, Postmaster General) and **DNFBPs** (designated non-financial businesses and professions: accounting professionals, legal professionals, estate agents, TCSP licensees, Category B PMS registrants)
9
+
10
+ ---
11
+
12
+ ## Mandatory Downstream Agreement Clauses
13
+
14
+ ### Schedule 2 section 2 — Customer Due Diligence (CDD) Measures
15
+ **Schedule 2 section 2(1)(a)/(ab) — Customer Identification**: Financial institutions and DNFBPs must identify the customer and verify identity using documents, data, or information from a governmental body, relevant authority, recognized digital ID system, or other reliable independent source.
16
+ **Applies to:** Financial institutions; DNFBPs (accounting professionals, estate agents, legal professionals, TCSP licensees, Category B PMS registrants)
17
+
18
+ **Schedule 2 section 2(1)(b) — Beneficial Owner Identification**: Must identify any beneficial owner of the customer and take reasonable measures to verify beneficial ownership, including understanding ownership/control structure of legal persons and trusts.
19
+ **Applies to:** Financial institutions; DNFBPs
20
+
21
+ **Schedule 2 section 2(1)(c) — Purpose of Business Relationship**: When establishing a business relationship, must obtain information on the purpose and intended nature of the relationship unless obvious.
22
+ **Applies to:** Financial institutions; DNFBPs
23
+
24
+ **Schedule 2 section 2(1)(d) — Authority of Agents**: Where a person purports to act on behalf of the customer, must identify that person, verify their identity, and verify their authority to act.
25
+ **Applies to:** Financial institutions; DNFBPs
26
+
27
+ ---
28
+
29
+ ### Schedule 2 section 3 — When CDD Must Be Carried Out
30
+
31
+ **Schedule 2 section 3(1)(a) — Pre-Relationship CDD**: Must carry out CDD before establishing a business relationship with a customer.
32
+ **Applies to:** Financial institutions; DNFBPs
33
+
34
+ **Schedule 2 section 3(1)(b) — Occasional Transaction Threshold ($120,000)**: Must carry out CDD before carrying out an occasional transaction of $120,000 HKD or above (or equivalent), whether in single or linked operations.
35
+ **Applies to:** Financial institutions; DNFBPs
36
+
37
+ **Schedule 2 section 3(1)(d) — Suspicion Trigger**: Must carry out CDD when the institution suspects the customer or customer's account is involved in money laundering or terrorist financing.
38
+ **Applies to:** Financial institutions; DNFBPs
39
+
40
+ **Schedule 2 section 3(1)(e) — Doubt in Prior Information**: Must carry out CDD when doubting the veracity or adequacy of previously obtained identification information.
41
+ **Applies to:** Financial institutions; DNFBPs
42
+
43
+ **Schedule 2 section 3(1A) — Wire/Virtual Asset Transfer Threshold ($8,000)**: Financial institutions must carry out CDD before an occasional wire transfer or virtual asset transfer of $8,000 HKD or above.
44
+ **Applies to:** Financial institutions (excluding licensed VAS providers for this sub-section)
45
+
46
+ **Schedule 2 section 3(1B) — Licensed VAS Provider Threshold ($8,000)**: Licensed VAS providers must carry out CDD before an occasional transaction (non-wire/VA transfer) of $8,000 or above.
47
+ **Applies to:** Licensed VAS providers
48
+
49
+ **Schedule 2 section 3(3) — Timely Completion**: Where verification is deferred, it must be completed as soon as reasonably practicable after establishing the business relationship.
50
+ **Applies to:** Financial institutions; DNFBPs
51
+
52
+ **Schedule 2 section 3(4) — Inability to Comply — Refusal/Termination**: If unable to complete CDD, must not establish a business relationship or carry out any occasional transaction; if already established, must terminate the relationship as soon as reasonably practicable.
53
+ **Applies to:** Financial institutions; DNFBPs
54
+
55
+ ---
56
+
57
+ ### Schedule 2 section 5 — Continuous Monitoring
58
+
59
+ **Schedule 2 section 5(1)(a) — Records Review**: Must continuously monitor business relationships by periodically reviewing documents, data, and information obtained for CDD to ensure they remain up-to-date and relevant.
60
+ **Applies to:** Financial institutions; DNFBPs
61
+
62
+ **Schedule 2 section 5(1)(b) — Transaction Scrutiny**: Must conduct appropriate scrutiny of transactions to ensure consistency with customer knowledge, business profile, and source of funds.
63
+ **Applies to:** Financial institutions; DNFBPs
64
+
65
+ **Schedule 2 section 5(1)(c) — Unusual Transaction Examination**: Must identify complex, unusually large, or unusual-pattern transactions with no apparent economic/lawful purpose and examine and document findings in writing.
66
+ **Applies to:** Financial institutions; DNFBPs
67
+
68
+ **Schedule 2 section 5(3) — Enhanced Monitoring (High-Risk Situations)**: Must take additional measures to compensate for ML/TF risk where the customer: (a) has not been physically present for identification; (b) is a politically exposed person (PEP); or (c) is involved in a high-risk situation under section 15.
69
+ **Applies to:** Financial institutions; DNFBPs
70
+
71
+ ---
72
+
73
+ ### Schedule 2 section 6 — Pre-Existing Customers
74
+
75
+ **Schedule 2 section 6(1) — Trigger for CDD on Pre-Existing Customers**: Must carry out CDD on pre-existing customers when an unusual/suspicious transaction occurs or when there is a material change in account operation.
76
+ **Applies to:** Financial institutions; DNFBPs
77
+
78
+ **Schedule 2 section 6(2) — Inability to Comply — Termination**: If unable to comply with section 6(1), must terminate the business relationship as soon as reasonably practicable.
79
+ **Applies to:** Financial institutions; DNFBPs
80
+
81
+ ---
82
+
83
+ ### Schedule 2 section 7 — Pre-Existing Respondent Banks
84
+
85
+ **Schedule 2 section 7(2) — Termination Unless Conditions Met**: Authorized institutions must terminate correspondent banking relationships with pre-existing respondent banks (outside HK) on the commencement date unless adequate AML/CTF controls were assessed, responsibilities documented, and ongoing customer monitoring confirmed.
86
+ **Applies to:** Authorized institutions (banks)
87
+
88
+ ---
89
+
90
+ ## Prohibited Conduct
91
+
92
+ ### Schedule 2 section 16 — Anonymous Accounts
93
+
94
+ **Schedule 2 section 16**: Must not open or maintain any anonymous account or account in a fictitious name for any customer.
95
+ **Applies to:** Financial institutions; DNFBPs
96
+
97
+ ### Schedule 2 section 17 — Shell Bank Prohibition
98
+
99
+ **Schedule 2 section 17(1)**: Authorized institutions must not establish or continue a correspondent banking relationship with a shell bank — i.e., a corporation incorporated outside HK, authorized to carry on banking business, but with no physical presence in that jurisdiction and not an affiliate of a corporation with physical presence.
100
+ **Applies to:** Authorized institutions (banks)
101
+
102
+ ### section 5 section 5(5) — Knowingly Contravening Schedule 2
103
+
104
+ **section 5(5)**: A financial institution that knowingly contravenes a specified provision of Schedule 2 commits an offence: on conviction on indictment — fine of $1,000,000 and imprisonment for 2 years; on summary conviction — level 6 fine and 6 months imprisonment.
105
+ **Applies to:** Financial institutions
106
+
107
+ ### section 5(6) — Intent to Defraud
108
+
109
+ **section 5(6)**: If a financial institution, with intent to defraud any relevant authority, contravenes a specified provision of Schedule 2 — fine of $1,000,000 and imprisonment for 7 years (on indictment) or $500,000 fine and 1 year imprisonment (summary).
110
+ **Applies to:** Financial institutions and their officers/employees
111
+
112
+ ---
113
+
114
+ ## Special Requirements
115
+
116
+ ### Schedule 2 section 9 — Non-Physically Present Customers
117
+
118
+ **Schedule 2 section 9(1)**: Where a customer has not been physically present for identification, must carry out at least one additional measure: further document-based verification, supplementary verification measures, or ensuring first payment is from an account in the customer's name with a qualifying institution.
119
+ **Applies to:** Financial institutions; DNFBPs
120
+ *Exception: section 9(2) — Does not apply if customer was identified using a recognized digital identification system.*
121
+
122
+ ---
123
+
124
+ ### Schedule 2 section 10 — Politically Exposed Persons (PEPs)
125
+
126
+ **Schedule 2 section 10(1) — New PEP Customer**: Before establishing a business relationship with a known PEP (or whose beneficial owner is a PEP), must: (a) obtain senior management approval; and (b) take reasonable measures to establish source of wealth and source of funds.
127
+ **Applies to:** Financial institutions; DNFBPs
128
+
129
+ **Schedule 2 section 10(2) — Existing PEP Customer**: If an existing customer or their beneficial owner becomes a PEP, must not continue the business relationship unless senior management approval is obtained and source of wealth/funds is established.
130
+ **Applies to:** Financial institutions; DNFBPs
131
+
132
+ ---
133
+
134
+ ### Schedule 2 section 11 — Insurance Policies
135
+
136
+ **Schedule 2 section 11(1)**: Whenever a beneficiary or new beneficiary is identified/designated under an insurance policy, must record the beneficiary's name (if identified by name) or obtain sufficient information to establish identity at time of exercise or payout.
137
+ **Applies to:** Financial institutions (insurers/banks dealing with insurance)
138
+
139
+ **Schedule 2 section 11(2)-(3)**: At time of exercise of rights or payout, must verify the beneficiary's identity, and where the beneficiary is a legal person or trust, identify its beneficial owners and (if high risk) verify their identities.
140
+ **Applies to:** Financial institutions (insurance context)
141
+
142
+ ---
143
+
144
+ ### Schedule 2 section 12 — Wire Transfers
145
+
146
+ **Schedule 2 section 12(3) — Ordering Institution Recording Requirements**: Before carrying out a wire transfer, ordering institution must record: originator's name, account number (or unique reference), address/ID/date of birth (for transfers ≥$8,000), recipient's name, and recipient's account number.
147
+ **Applies to:** Financial institutions acting as ordering institutions
148
+
149
+ **Schedule 2 section 12(5) — Information Accompanying Transfers**: Must include required information (originator + recipient details) in the message/payment form accompanying the wire transfer.
150
+ **Applies to:** Financial institutions acting as ordering institutions
151
+
152
+ **Schedule 2 section 12(6) — Domestic Wire Transfers**: For domestic wire transfers, may include only account reference number, but must provide full information to requesting institutions or relevant authority within 3 business days.
153
+ **Applies to:** Financial institutions (domestic wire transfers)
154
+
155
+ **Schedule 2 section 12(8) — Intermediary Institution Pass-Through**: Intermediary institutions must transmit all information received with the transfer to the next institution in the chain.
156
+ **Applies to:** Financial institutions acting as intermediary institutions
157
+
158
+ **Schedule 2 section 12(9)-(10) — Beneficiary/Intermediary Institution — Incomplete Information**: Where required information is missing or incomplete on receipt of a wire transfer, must obtain the missing information; if unable to obtain it, must consider restricting/terminating relationship with the sending institution or take reasonable measures to mitigate ML/TF risk.
159
+ **Applies to:** Financial institutions acting as beneficiary/intermediary institutions
160
+
161
+ ---
162
+
163
+ ### Schedule 2 section 13 — Remittance Transactions
164
+
165
+ **Schedule 2 section 13(2)**: Before carrying out a remittance transaction (non-wire, ≥$8,000) a licensed money service operator must: identify the originator, verify identity by reference to identification document, and record name, ID number, address, currency/amount, date/time, recipient name/address, and delivery method.
166
+ **Applies to:** Licensed money service operators
167
+
168
+ ---
169
+
170
+ ### Schedule 2 section 13A — Virtual Asset Transfers
171
+
172
+ **Schedule 2 section 13A(2) — Ordering Institution Recording**: Before carrying out a virtual asset transfer, must obtain and record: originator's name, account/reference number, address/ID (for transfers ≥$8,000), recipient's name, and recipient's account/reference number.
173
+ **Applies to:** Financial institutions acting as ordering institutions for VA transfers
174
+
175
+ **Schedule 2 section 13A(4) — Submission to Beneficiary Institution**: Must submit all required originator/recipient information to the beneficiary institution in accordance with applicable codes/guidelines.
176
+ **Applies to:** Financial institutions acting as ordering institutions for VA transfers
177
+
178
+ **Schedule 2 section 13A(5) — Beneficiary Institution Recordkeeping**: Beneficiary institution must obtain and record the submitted information.
179
+ **Applies to:** Financial institutions acting as beneficiary institutions for VA transfers
180
+
181
+ **Schedule 2 section 13A(6) — Intermediary Pass-Through**: Intermediary institutions must transmit all information received to the next institution.
182
+ **Applies to:** Financial institutions acting as intermediary institutions for VA transfers
183
+
184
+ **Schedule 2 section 13A(7) — Missing Information — Beneficiary/Intermediary**: Where required VA transfer information is missing or incomplete, must obtain it from the sending institution; if unable, must consider restricting/terminating relationship or take reasonable ML/TF risk mitigation measures.
185
+ **Applies to:** Financial institutions as beneficiary/intermediary institutions in VA transfers
186
+
187
+ ---
188
+
189
+ ### Schedule 2 section 14 — Correspondent Banking Relationships
190
+
191
+ **Schedule 2 section 14(1) — Pre-Establishment Due Diligence**: Before establishing a correspondent banking relationship, authorized institution must collect sufficient information about the proposed respondent bank, determine its reputation and supervisory quality from public information, and assess its AML/CTF controls.
192
+ **Applies to:** Authorized institutions (banks)
193
+
194
+ **Schedule 2 section 14(2) — Conditions for Establishment**: Must not establish a correspondent banking relationship unless: senior management approval obtained; AML/CTF controls assessed as adequate and effective; responsibilities documented; and confirmation obtained that respondent bank will verify and monitor customers who can directly operate accounts, and provide relevant documentation on request.
195
+ **Applies to:** Authorized institutions (banks)
196
+
197
+ ---
198
+
199
+ ### Schedule 2 section 15 — High-Risk Situations
200
+
201
+ **Schedule 2 section 15 — Enhanced Due Diligence in High-Risk Situations**: In any high-risk situation (as notified by relevant authority or inherently high-risk): (a) before establishing a business relationship — must obtain senior management approval and establish source of wealth/funds or take additional risk mitigation; (b) if relationship already established — must obtain senior management approval, verify beneficial ownership, and establish source of wealth or take additional mitigation; (c) for occasional transactions — must take additional risk mitigation measures.
202
+ **Applies to:** Financial institutions; DNFBPs
203
+
204
+ ---
205
+
206
+ ### Schedule 2 section 18 — CDD via Intermediaries
207
+
208
+ **Schedule 2 section 18(2) — Retained Liability**: A financial institution or DNFBP that carries out CDD through an intermediary **remains liable** for any failure to carry out that CDD measure.
209
+ **Applies to:** Financial institutions; DNFBPs
210
+
211
+ **Schedule 2 section 18(4) — Data Retrieval Obligations**: When using an intermediary for CDD, must immediately obtain the data/information from the intermediary after completion; ensure the intermediary will provide copies of documents upon request within the record-keeping period; and (for related foreign financial institutions) take reasonable ML/TF risk mitigation measures.
212
+ **Applies to:** Financial institutions; DNFBPs
213
+
214
+ ---
215
+
216
+ ### Schedule 2 section 19 — Internal Procedures
217
+
218
+ **Schedule 2 section 19(1) — PEP Identification Procedures**: Must establish and maintain effective procedures for determining whether a customer or beneficial owner is a PEP.
219
+ **Applies to:** Financial institutions; DNFBPs
220
+
221
+ **Schedule 2 section 19(2) — Wire Transfer Compliance Procedures**: Financial institutions carrying out wire transfers must establish and maintain effective procedures for identifying and handling non-compliant wire transfers (those not accompanied by required information under section 12(5)).
222
+ **Applies to:** Financial institutions carrying out wire transfers
223
+
224
+ **Schedule 2 section 19(2A) — VA Transfer Compliance Procedures**: Financial institutions carrying out virtual asset transfers must establish and maintain effective procedures for identifying and handling non-compliant virtual asset transfers.
225
+ **Applies to:** Financial institutions carrying out virtual asset transfers
226
+
227
+ **Schedule 2 section 19(3) — General CDD Compliance Procedures**: Must establish and maintain effective procedures consistent with the Ordinance for carrying out CDD duties under sections 3, 4, 5, 9, 10, and 15, for each type of customer, business relationship, product, and transaction.
228
+ **Applies to:** Financial institutions; DNFBPs
229
+
230
+ ---
231
+
232
+ ## Record-Keeping Requirements
233
+
234
+ ### Schedule 2 section 20 — Duty to Keep Records
235
+
236
+ **Schedule 2 section 20(1)(a) — Transaction Records**: For each transaction, must keep the original or copy of documents obtained, and a record of data and information obtained in connection with the transaction under Part 2 of Schedule 2.
237
+ **Applies to:** Financial institutions; DNFBPs
238
+
239
+ **Schedule 2 section 20(1)(b) — Customer Records**: For each customer, must keep: (i) original or copy of identification/verification documents; and (ii) original or copy of account files and business correspondence with the customer and any beneficial owner.
240
+ **Applies to:** Financial institutions; DNFBPs
241
+
242
+ **Schedule 2 section 20(2) — Transaction Record Retention: 5 Years**: Transaction records must be kept for at least 5 years from the date on which the transaction is completed (regardless of whether the business relationship has ended).
243
+ **Applies to:** Financial institutions; DNFBPs
244
+
245
+ **Schedule 2 section 20(3) — Customer Record Retention: 5 Years Post-Relationship**: Customer records must be kept throughout the business relationship and for at least 5 years after the relationship ends.
246
+ **Applies to:** Financial institutions; DNFBPs
247
+
248
+ **Schedule 2 section 20(5) — Extended Retention on Regulator Notice**: Where a relevant authority issues a written notice requiring retention for an investigation or other specified purpose, records must be kept for the extended period specified in the notice.
249
+ **Applies to:** Financial institutions; DNFBPs
250
+
251
+ ---
252
+
253
+ ### Schedule 2 section 21 — Record Format
254
+
255
+ **Schedule 2 section 21**: Records must be kept as: (a) original documents or microfilm/computer database copy; (b) data/information on microfilm or in a computer database.
256
+ **Applies to:** Financial institutions; DNFBPs
257
+
258
+ ---
259
+
260
+ ## Group/Cross-Border Obligations
261
+
262
+ ### Schedule 2 section 22 — Branches and Subsidiaries Outside Hong Kong
263
+
264
+ **Schedule 2 section 22(1) — Financial Institution Group Obligation**: Financial institutions incorporated in HK must ensure their overseas branches and subsidiary undertakings (carrying on the same business) have procedures in place to comply — to the extent permitted by local law — with requirements similar to Schedule 2 Parts 2 and 3.
265
+ **Applies to:** Financial institutions incorporated in Hong Kong
266
+
267
+ **Schedule 2 section 22(2) — Notification Where Local Law Prohibits Compliance**: Where local law prevents compliance, the financial institution must notify the relevant authority and take additional measures to effectively mitigate ML/TF risk in the branch/subsidiary.
268
+ **Applies to:** Financial institutions incorporated in Hong Kong
269
+
270
+ **Schedule 2 section 22(2A)-(2B) — DNFBP Group Obligation**: DNFBPs incorporated in HK must similarly ensure overseas branches/subsidiaries comply with equivalent requirements; where local law prohibits, must notify the relevant authority/regulatory body and take additional mitigation measures.
271
+ **Applies to:** DNFBPs incorporated in Hong Kong
272
+
273
+ ---
274
+
275
+ ### Schedule 2 section 23 — General AML/CTF Safeguards
276
+
277
+ **Schedule 2 section 23**: Must take all reasonable measures to: (a) ensure proper safeguards exist to prevent any contravention of Schedule 2 Parts 2 or 3; and (b) mitigate money laundering and terrorist financing risks.
278
+ **Applies to:** Financial institutions; DNFBPs
279
+
280
+ ---
281
+
282
+ ## Thresholds & Triggers
283
+
284
+ | **Threshold** | **Obligation** | **Section** |
285
+ |---|---|---|
286
+ | $120,000 HKD (occasional transaction) | CDD required for financial institutions and DNFBPs before occasional transaction | Schedule 2 section 3(1)(b) |
287
+ | $8,000 HKD (wire transfer or VA transfer) | CDD required for financial institutions before wire/VA transfer | Schedule 2 section 3(1A) |
288
+ | $8,000 HKD (non-wire/VA occasional transaction, VAS providers) | CDD required for licensed VAS providers | Schedule 2 section 3(1B) |
289
+ | $8,000 HKD (wire transfer) | Full originator info (incl. address) required in wire transfer message | Schedule 2 section 12(3A), section 12(5)(a) |
290
+ | $8,000 HKD (remittance transaction) | Licensed MSO must record and verify originator details | Schedule 2 section 13(1) |
291
+ | $8,000 HKD (VA transfer) | Full originator info (incl. address) required; below threshold, address optional | Schedule 2 section 13A(3) |
292
+ | $8,000 HKD (life insurance annual premium) | Simplified CDD may apply | Schedule 2 section 4(5)(c)(i) |
293
+ | $20,000 HKD (life insurance single premium) | Simplified CDD may apply | Schedule 2 section 4(5)(c)(ii) |
294
+ | 5 years | Minimum record retention for transaction records from completion date | Schedule 2 section 20(2) |
295
+ | 5 years | Minimum record retention for customer records after end of business relationship | Schedule 2 section 20(3) |
296
+ | 3 business days | Domestic wire: full originator details must be provided to requesting institution on request | Schedule 2 section 12(6) |
297
+
298
+ ---
299
+
300
+ ## Audit & Oversight Rights
301
+
302
+ ### Part 3 section 9 — Routine Inspection Powers
303
+
304
+ **section 9(1A)/(1B)**: Authorized persons (appointed by relevant authorities) may at any reasonable time: enter business premises; inspect and copy business records; and make inquiries of the institution or information holders concerning records or transactions.
305
+ **Applies to:** All prescribed persons (financial institutions, licensed VAS providers, associated entities)
306
+
307
+ **section 9(3)-(5)**: Authorized persons may require production of specified business records within specified time and place, and require answers to questions regarding those records.
308
+ **Applies to:** All prescribed persons
309
+
310
+ **section 9(9)-(10)**: Where required, authorized person may require verification of answers or statements by statutory declaration.
311
+ **Applies to:** All prescribed persons
312
+
313
+ **section 9(13)-(14)**: Relevant authorities must provide authorized persons with a copy of their authorization, which must be produced for inspection as soon as reasonably practicable when exercising inspection powers.
314
+ **Applies to:** Relevant authorities and authorized persons
315
+
316
+ ### Part 3 section 12 — Investigative Powers
317
+
318
+ **section 12**: Investigators may require the production of records, documents, or information from prescribed persons for investigative purposes.
319
+ **Applies to:** All prescribed persons
320
+
321
+ ### Part 5B section 53ZSC — Licensed VAS Providers: Audited Accounts
322
+
323
+ **section 53ZSC**: Auditable entities (licensed VAS providers and associated entities) must submit audited financial statements, prescribed returns, and auditor's report to the Commission annually.
324
+ **Applies to:** Licensed VAS providers and associated entities
325
+
326
+ **section 53ZSD**: Prescribed auditor must report to the Commission on any reportable matter (including suspected contraventions of regulatory requirements).
327
+ **Applies to:** Prescribed auditors of licensed VAS providers and associated entities
328
+
329
+ ### Part 5B section 53ZS — Mandatory Prescribed Auditor Appointment
330
+
331
+ **section 53ZS**: Auditable entities must appoint a prescribed auditor meeting eligibility requirements. Office of auditor must remain filled at all times.
332
+ **Applies to:** Licensed VAS providers and associated entities
333
+
334
+ ---
335
+
336
+ ## Licensing and Registration Obligations
337
+
338
+ ### Part 5 section 29 — Money Service Operators
339
+
340
+ **section 29**: No person may operate a money service (money changing or remittance) without holding a licence granted by the Commissioner under Part 5.
341
+ **Applies to:** All persons operating money services in HK
342
+
343
+ ### Part 5B section 53ZRD — Virtual Asset Service Providers
344
+
345
+ **section 53ZRD(1)**: No corporation may carry on a business of providing a VA service in HK, or actively market such services to HK investors, without being licensed as a licensed VAS provider.
346
+ **Applies to:** Corporations providing VA services
347
+
348
+ **section 53ZRD(3)**: No individual may perform a regulated function in relation to a licensed VAS provider's business without being a licensed representative accredited to that provider.
349
+ **Applies to:** Individuals performing regulated functions for VAS businesses
350
+
351
+ ### Part 5A section 53F — Trust or Company Service Providers
352
+
353
+ **section 53F**: No person may carry on a trust or company service business without being licensed under Part 5A.
354
+ **Applies to:** All persons providing trust or company services in HK
355
+
356
+ ### Part 5C section 53ZUE — Precious Metals and Stones Dealers
357
+
358
+ **section 53ZUE**: No person may carry out certain cash transactions in precious metals and stones above specified thresholds without being registered as a PMS dealer.
359
+ **Applies to:** Dealers in precious metals and stones
360
+
361
+ ---
362
+
363
+ ## Confidentiality Requirements (Part 6A)
364
+
365
+ ### section 76B — Confidentiality
366
+
367
+ **section 76B**: Specified persons (relevant authorities, regulatory bodies, and their staff) must not disclose information obtained in performing functions under the Ordinance, except as permitted under sections 76C–76F.
368
+ **Applies to:** Relevant authorities and their authorized/appointed persons
369
+
370
+ ### section 76E — Tipping-Off Prohibition
371
+
372
+ **section 76E**: A person subject to inspection, investigation, or disciplinary action must not disclose information that could prejudice the investigation or proceedings.
373
+ **Applies to:** Prescribed persons subject to regulatory proceedings
374
+
375
+ ### section 76F — Onward Disclosure Prohibition
376
+
377
+ **section 76F**: Recipients of information disclosed under sections 76C, 76D, or 76E must not further disclose that information except as permitted.
378
+ **Applies to:** All recipients of regulated disclosures
379
+
380
+ ---
381
+
382
+ ## Notes
383
+
384
+ - **Effective Date of PDF version:** 2 November 2023 (last updated date on ordinance)
385
+ - **Key Amending Ordinances:** 4 of 2018 (major DNFBP expansion); 15 of 2022 (VA provisions, virtual asset transfers, PMS dealers)
386
+ - **Downstream Use:** These clauses provide the basis for `[Mandated: hk-aml-guide section <ref>]` annotations in contract reviews, particularly for acquiring contracts, payment operator agreements, TCSP agreements, and VAS provider arrangements.
387
+ - **Disclaimer:** This is a structured extract for contract reference purposes and does not constitute legal advice. For high-stakes matters, consult qualified HK legal counsel.
388
+ - **DNFBPs defined as:** accounting professionals, legal professionals, estate agents, TCSP licensees, and Category B PMS registrants (dealers in precious metals and stones above specified cash transaction amounts)
389
+ - **"Financial institutions" defined as:** authorized institutions (banks), licensed corporations (securities), authorized insurers, licensed insurance intermediaries, licensed money service operators, SVF licensees, licensed VAS providers, the Postmaster General
@@ -0,0 +1,205 @@
1
+ # Visa Acceptance Risk Standards (VARS) — Contract Obligation Extract
2
+ > Source: Visa Ecosystem Risk Programs Guide, October 2024
3
+ > Preprocessed: 2026-04-02
4
+ > Version: October 2024
5
+
6
+ ---
7
+
8
+ ## Mandatory Downstream Agreement Clauses
9
+ Clauses that Acquirers MUST include in their agreements with merchants/TPAs/PayFacs.
10
+
11
+ **section AACQ.C2.1 Merchant Agreement — Compliance with Visa Rules**: Each Merchant Agreement must require the Merchant to adhere to Acquirer policies and procedures, fulfill applicable legal/regulatory obligations, comply with the Visa Rules, and refrain from submitting illegal transactions.
12
+
13
+ **section AACQ.C2.1 Merchant Agreement — Revocation Clause**: The Merchant Agreement must contain a clause allowing the Acquirer to revoke Visa acceptance from any Merchant for activity that harms the goodwill of the Visa payment system, and must require written notification to the Merchant upon termination.
14
+
15
+ **section AACQ.C2.1 Merchant Agreement — Termination for Cause / VMSS Listing**: Where a Merchant is terminated for cause, the agreement must require the Merchant to be listed on the Terminated Merchant File (e.g., VMSS), and Acquirers must suspend Visa processing by the date specified by Visa upon Visa-directed prohibition.
16
+
17
+ **section AACQ.C2.1 Merchant Agreement — Investigation Cooperation**: In the event of an ongoing investigation at the time the Merchant Agreement is signed, the Merchant must fully cooperate with the investigation until its completion in compliance with local laws.
18
+
19
+ **section AACQ.C2.1 Merchant Agreement — Prohibition on Transaction Laundering**: The Merchant Agreement must prohibit resubmission of previously disputed charges, submission of fraudulent/unauthorized transactions, transaction laundering (TLD), and unauthorized storage/processing/transmission of payment data.
20
+
21
+ **section AACQ.C2.1 Merchant Agreement — VARS Reference (post October 21, 2024)**: Any Merchant Agreement executed on or after October 21, 2024 must reference the Visa Acceptance Risk Standards (VARS); agreements executed on or before October 20, 2024 may continue to reference GARS.
22
+
23
+ **section AACQ.C3.1 Exposure Mitigation Clause**: Acquirer contracts with Merchants/TPAs must include a clause enabling exposure mitigation via reserves, personal/corporate/bank guarantees, and account/transaction level holds, with clear explanation of reconciliation processes and segregation of reserve funds.
24
+
25
+ **section AACQ.C4.1 Settlement of Funds**: The Merchant Agreement must stipulate that the Acquirer settles funds promptly and in accordance with regulations, with settlement within market-based timelines (subject to mandated holding periods or ongoing investigations), and that the Acquirer is responsible for providing settlement funds.
26
+
27
+ **section AACQ.C14.2 PCI DSS Compliance Clause in Contracts**: Contracts and agreements with TPAs and Merchants must clearly define their responsibilities to adhere to Visa standards, liabilities for noncompliance, and the obligation to permit inspections by the Acquirer or Visa.
28
+
29
+ **section ATPA.C1.1 TPA Agreement — Minimum Standards**: Every written agreement with a TPA performing Cardholder/Merchant solicitation or handling Cardholder/Transaction data must incorporate Visa minimum standards; permit Visa to conduct financial and procedural audits at any time; require TPA compliance with Visa Rules and applicable laws; require TPA adherence to the Acquirer's policies and PCI DSS; require cooperation with forensic investigations; and include a termination provision linked to Visa Rules violations or insolvency.
30
+
31
+ **section ATPA.C1.1 TPA Agreement — Settlement Prohibition**: The TPA Agreement must state that Acquirers pay or credit the TPA's account promptly after transaction deposit, and must prohibit deposit of transactions on behalf of another TPA.
32
+
33
+ **section ATPA.C1.1 TPA Agreement — Visa Authority**: The contract must grant Visa the right to determine and impose risk conditions on the TPA and the right to limit or terminate the Acquirer's agreement with the TPA.
34
+
35
+ **section ATPA.C1.2 PayFac/DWO Agreement — Key Provisions**: Acquirers must ensure PayFac/DWO agreements require that: both PayFac and its Sponsored Merchants adhere to Visa Rules; the PayFac contracts with each Sponsored Merchant; the Acquirer has the right to immediately terminate; the PayFac/DWO accepts full financial liability for all Sponsored Merchant transactions; Cardholders are not asked to waive dispute rights; no transactions are processed on behalf of another PayFac; and Sponsored Merchants adhere to PCI DSS and PCI SSF Standards.
36
+
37
+ **section ATPA.C1.2 PayFac Agreement — Direct Merchant Agreement Threshold**: Acquirers contracting with a PayFac must establish a direct Merchant Agreement with any Sponsored Merchant whose annual Transaction volume exceeds USD 1 million (for new applications, upon renewal, or within 2 years of exceeding the threshold).
38
+
39
+ **section ATPA.C1.3 Marketplace Agreement — Key Provisions**: Acquirers must ensure Marketplace agreements require Marketplace and its retailers to comply with the Visa Rules; the Marketplace must contract with each retailer before depositing transactions; the Acquirer may prohibit individual retailers from Visa participation; the Marketplace is fully financially liable for all Cardholder disputes and retailer transactions; the Marketplace must not transfer financial liability to Cardholders; and the Marketplace must not contract with retailers whose Visa acceptance was terminated by Visa or a government agency.
40
+
41
+ **section AATM.C2.1 ATM Operator Agreement**: ATM Acquirers must have a written agreement with each ATM Operator that identifies the ATM Acquirer, includes a termination-for-noncompliance clause, and states that ATM Operators must comply with the Visa Rules; pricing arrangements must not be included.
42
+
43
+ **section AHIR.C1.1 High Integrity Risk Merchant Controls**: Acquirers and their designated TPAs processing for High Integrity Risk Merchants must maintain controls and oversight to ensure TPAs operate legally in all countries, and that Merchants only submit transactions legal in both buyer's and seller's jurisdictions.
44
+
45
+ ---
46
+
47
+ ## Prohibited Conduct
48
+ Explicitly prohibited activities, business types, or merchant categories.
49
+
50
+ **section AACQ.C2.1**: Merchants are prohibited from knowingly submitting any transaction that is illegal or that the Merchant should have known was illegal.
51
+
52
+ **section AACQ.C2.1**: Resubmission of previously disputed charges (charges returned to the Merchant via dispute) is prohibited.
53
+
54
+ **section AACQ.C2.1**: Submission or execution of fraudulent or unauthorized transactions into the payment system is prohibited.
55
+
56
+ **section AACQ.C2.1**: Transaction laundering (TLD) — processing card payments for undisclosed goods or services by layering them through an approved Merchant's credentials — is prohibited.
57
+
58
+ **section AACQ.C2.1**: Unauthorized storage, processing, or transmission of payment data through non-approved software and processes is prohibited; failure to enforce data security requirements for Merchants/TPAs is also prohibited.
59
+
60
+ **section ATPA.C1.1**: TPAs must not knowingly submit any transaction that is illegal or that the Merchant should have known was illegal.
61
+
62
+ **section ATPA.C1.2**: PayFacs must not process transactions on behalf of another PayFac; Acquirers must ensure PayFacs only deposit transactions between a Cardholder and a Sponsored Merchant of that PayFac.
63
+
64
+ **section ATPA.C1.2**: PayFacs and SDWOs must not process transactions from Sponsored Merchants or retailers outside the Acquirer's jurisdiction.
65
+
66
+ **section ATPA.C1.2**: PayFacs and Marketplaces must not contract with a Sponsored Merchant or retailer whose contract to accept Visa transactions was terminated by Visa or a government agency.
67
+
68
+ **section ATPA.C1.2 / ATPA.C1.3**: PayFacs, DWOs, and Marketplaces must not require or ask Cardholders to waive their dispute rights, and must not allow their Sponsored Merchants/retailers to do so either.
69
+
70
+ **section AHIR.C1.1**: Acquirers must not enter High Integrity Risk Merchant transactions into the Visa Payment System before the High Integrity Risk Acquiring Registration has been approved by Visa.
71
+
72
+ **section AACQ.C14**: Post-authorization storage of the following data is prohibited for all TPAs and Merchants: full magnetic stripe data, CVV2, PIN or encrypted PIN block, TAVV, DTVV, and Visa Secure CAVV.
73
+
74
+ ---
75
+
76
+ ## Thresholds & Triggers
77
+
78
+ **section AACQ.C8.3 Exception Report Trigger — Settlement Delay**: Exception reports are generated when the average elapsed time between the Processing Date and the Transaction Date or Settlement Date exceeds **15 calendar days**; Acquirers must investigate and report results to Visa immediately upon appearance on an exception report.
79
+
80
+ **section ATPA.C1.2 Direct Agreement Threshold — Sponsored Merchant Volume**: A direct Merchant Agreement between the Acquirer and a Sponsored Merchant is required when the Sponsored Merchant's annual Transaction volume exceeds **USD 1 million** (applicable to new applications, renewals, or within 2 years of exceeding the threshold).
81
+
82
+ **section ATPA.C9.1 Credit Risk Information — Response Deadline**: Acquirers must provide Visa with requested underwriting, exposure, and risk monitoring information (regarding Merchants, PayFacs, Marketplaces, DWOs, or other entities) within **5 business days** of the request.
83
+
84
+ **section ATPA.C10.1 TPA Change Reporting Deadline**: Acquirers must notify Visa of any change in a TPA's principals or business relationship (including ownership changes or contract termination) within **5 business days** of the change or knowledge of the change.
85
+
86
+ **section ATPA.C11.1 Record Retention Minimum**: TPAs must maintain complete Merchant records (including investigation information) for a minimum of **2 years** after Merchant Agreement termination, or longer as specified by local law.
87
+
88
+ **section AACQ.C12.1 Dispute Retention Minimum**: Acquirers must investigate and retain dispute investigation details for a minimum of **2 years**, or as specified by law.
89
+
90
+ **section AACQ.C12.1 Marketplace Disclosure Retention**: Marketplace retailer names, transaction dates, and transaction amounts must be made available to the Cardholder for at least **120 days** from the Processing Date.
91
+
92
+ **Appendix J — VAMP Threshold**: Acquirers must maintain their Visa Acquirer Monitoring Program (VAMP) rate below **30 basis points (bps)**; individual Merchants must not exceed **150 bps**. Exceeding these thresholds triggers VAMP enforcement actions.
93
+
94
+ **Appendix J — Enumeration Threshold**: Acquirers' enumerated authorization attempts must remain below **2,000 bps**. Exceeding this threshold triggers review and potential enforcement.
95
+
96
+ **Appendix J — VIRP KPI**: Acquirers must have no VIRP identification or confirmed TLD cases for illegal or miscoded activity.
97
+
98
+ **Appendix J — PCI DSS**: Full PCI DSS compliance is required as a KPI under the Account Information Security Program.
99
+
100
+ **section AHIR.C1.2 High Integrity Risk Registration Tiers**:
101
+ - **Tier 1**: Initial control assessment + periodic reassessments (up to annually) + annual control self-assessment per approved category.
102
+ - **Tier 2**: Initial control assessment + periodic reassessments (up to annually) + annual control self-assessment.
103
+ - **Tier 3**: Registration with Visa; complete control self-assessment upon request.
104
+
105
+ ---
106
+
107
+ ## Monitoring Program Requirements
108
+ Requirements related to Visa Monitoring Programs (VAMP, VDMP, VFMP, etc.) that Acquirers must comply with or enforce downstream.
109
+
110
+ **section AACQ.C8.1 Portfolio Monitoring — All Acquirers**: Acquirers must maintain continuous monitoring of Merchant/TPA activity throughout the entire relationship lifecycle (from onboarding through termination) to detect fraud/collusion, credit issues, disputes, AML, brand-damaging and illegal activities; must monitor transaction velocity, volume changes, refund patterns, authorization spikes, URL/product activity, and VMSS alerts.
111
+
112
+ **section AACQ.C8.2 Fraud Monitoring**: Acquirers must possess fraud detection capabilities (rules/models for identifying suspicious behavior) and fraud prevention tools (AVS, CVV2, ML algorithms, fraud scoring, geolocation, velocity checking, biometric authentication) throughout the Merchant lifecycle.
113
+
114
+ **section AACQ.C8.3 Exception Reporting**: Acquirers must generate exception reports for deviations in daily transaction averages, deposit volumes, average transaction amounts, daily dispute counts, and settlement timing exceeding 15 calendar days; Acquirers must investigate flagged Merchants immediately and report findings to Visa.
115
+
116
+ **section AACQ.C10.1 / ATPA.C8.3 Suspicious Activity Reporting**: Acquirers must immediately report any data breach, suspected or confirmed loss/theft/compromise of Visa account information, and any fraud or transaction laundering by a Merchant or TPA, including a remediation plan, as specified in "What to Do If Compromised."
117
+
118
+ **section AACQ.C12.1 VAMP — Dispute Monitoring**: For Merchants exceeding VAMP thresholds, Acquirers must flag these Merchants and generate a monthly report on disputes by Merchant category and Merchant level; Acquirers must review Merchants with high dispute rates for deceptive marketing or misleading practices.
119
+
120
+ **section AACQ.C17.1 Transaction Laundering Monitoring**: Acquirers must implement controls during underwriting and ongoing monitoring to detect concealed illegal transactions, including review of transaction data, URL verification, website analytics, and monitoring for Merchant identifier mismatches.
121
+
122
+ **section ATPA.C8.1 TPA Portfolio Monitoring**: Acquirers must regularly analyze TPA transaction patterns, use fraud detection systems, conduct compliance checks against AML and data security standards, assess TPA risk profiles against KRIs, generate regular TPA transaction reports, and conduct an annual review of each TPA including financial statements, ownership changes, policy alignment, and PCI DSS status.
123
+
124
+ **section ATPA.C8.1 — TPA Settlement Jurisdiction Compliance**: Acquirers must evaluate that TPAs are only submitting transactions into interchange within the Acquirer's jurisdiction, and from DWOs, Merchants, Marketplaces, and Sponsored Merchants within that jurisdiction.
125
+
126
+ **section AATM.C4.1 ATM Monitoring**: ATM Acquirers must track and report suspicious ATM transactions, monitor for unusual deposit/withdrawal patterns, repeated high-volume withdrawals at the same ATM(s) from multiple cards of a single Issuer, and excessive charges for minor withdrawals.
127
+
128
+ **section AVDC.C2.1 Visa Direct Scam Monitoring**: Money Movement Entities must monitor for Account Takeover (ATO), Authorized Push Payment (APP) scams, and unauthorized card usage in Visa Direct transactions; monitoring capabilities must include email/phone reputation analysis, KYC/sanctions/PEP checks, and behavioral analytics.
129
+
130
+ **section AHIR.C1.1 VIRP Compliance**: Acquirers and TPAs processing for High Integrity Risk Merchants must comply with the Visa Integrity Risk Program (VIRP), maintain enhanced due diligence for all High Integrity Risk Merchants, and ensure TPAs comply with all applicable laws and regulations in each country in which they operate.
131
+
132
+ **section AACQ.C16.1 Ongoing Compliance with Visa Rules**: Acquirers must ensure their operational, sales, and technical functions remain compliant with all Visa Rules and technical standards as updated periodically, and must adopt updated standards by the effective dates communicated by Visa.
133
+
134
+ ---
135
+
136
+ ## Audit & Oversight Rights
137
+
138
+ **section ATPA.C1.1**: TPA agreements must permit Visa to conduct financial and procedural audits and general reviews of the TPA at any time, and require the TPA to make Cardholder and Merchant information accessible to Visa and regulatory agencies upon request.
139
+
140
+ **section AACQ.C14.2**: Acquirers must guarantee that contracts and agreements with TPAs and Merchants clearly include the obligation to permit inspections by the Acquirer or Visa.
141
+
142
+ **section AACQ.C14.6**: Upon request, Acquirers must provide Visa with certification that TPAs and Merchants comply with PCI DSS.
143
+
144
+ **section ATPA.C3.1(h)**: Acquirers must confirm a TPA's capability to provide Visa with quarterly reports detailing the goods or services each of the Sponsored Merchants is doing business on, if requested.
145
+
146
+ **section ATPA.C9.1**: Acquirers must provide Visa, upon request and within 5 business days, with a comprehensive overview of the underwriting process, a complete breakdown of current Visa exposure and collateral held, and a detailed breakdown of the risk monitoring policy for any entity in the Acquirer's portfolio.
147
+
148
+ **section 5.1 VARS Reviews**: VARS reviews may be triggered at onboarding or on an ongoing risk-based basis; reviews must be completed by Visa staff or selected third-party reviewers with Visa oversight; Acquirers are responsible for the cost of a VARS review and must share the final report with Visa.
149
+
150
+ **section 5.2 VARS Remediation**: Following a VARS review, Acquirers must implement approved remediation plans within agreed timeframes; if an Acquirer fails to do so, Visa may impose Member Risk Reduction Requirements as specified in the Visa Rules.
151
+
152
+ **section ATPA.C11.1**: Acquirers of a TPA undergoing a forensic investigation must notify Visa upon receiving notice; TPAs must maintain complete Merchant records for at least 2 years after Merchant Agreement termination.
153
+
154
+ **section AHIR.C1.2**: Tier 1 and Tier 2 High Integrity Risk Acquirers are subject to periodic reassessments (up to annually, at Visa's discretion) and must complete annual control self-assessments for each approved High Integrity Risk Merchant category; Tier 3 must complete a control self-assessment upon Visa's request.
155
+
156
+ ---
157
+
158
+ ## Registration & Reporting Requirements
159
+
160
+ **section AACQ.C6.1 Merchant Data Reporting to Visa**: Acquirers must collect and provide to Visa (when requested) required KYC/KYB information for each Merchant, Marketplace, Sponsored Merchant, or Ramp Provider in the specified format, including: DBA name, legal name, outlet address, telephone number, Acquirer-assigned Merchant ID, business registration/tax number, PayFac name and identifier (where applicable), and Ramp Provider/Conversion Affiliate identifiers (where applicable).
161
+
162
+ **section AACQ.C5.1 Terminated Merchant File Check**: Before finalizing a contract with any prospective Merchant, Acquirers must consult both internal terminated/declined profile lists and external resources including VMSS; if a match is found, Acquirers must verify identity, engage with the listing Acquirer, and make an informed decision.
163
+
164
+ **section AACQ.C8.3 Exception Report Investigation & Reporting**: Acquirers must immediately investigate any Merchant appearing on an exception report and report the results of the investigation and actions taken to Visa; where investigation reveals illegal or fraudulent activity, Acquirers must cooperate with Visa, Issuers, and law enforcement.
165
+
166
+ **section AACQ.C10.1 Data Breach Reporting**: Acquirers must immediately report any data breach to Visa including a remediation plan, as specified in "What to Do If Compromised," in a thorough and complete format.
167
+
168
+ **section AACQ.C5.1 / AACQ.C6.2 KYC/KYB Requirements**: Acquirers must collect and verify principal/director information, ownership information, business license/registration, and screen all Merchants against applicable economic and government trade-sanction watch-lists; for e-Commerce Merchants, Acquirers must also collect and verify a listing of URLs used and confirm registered domain ownership.
169
+
170
+ **section ATPA.C4.1 PayFac Registration with Visa**: Acquirers must ensure that their PayFac's registration (including due diligence review attestation) is confirmed by Visa before submitting any transactions on behalf of the PayFac or its Sponsored Merchants; if the PayFac is high-integrity risk, it must be registered as a High-Risk Internet PayFac.
171
+
172
+ **section ATPA.C4.1 PayFac Unique Identifier**: Acquirers must obtain a unique PayFac identifier from Visa, assign it to each PayFac, and ensure all authorization records include both the PayFac identifier and the Sponsored Merchant identifier; clearing records must include at minimum the PayFac identifier.
173
+
174
+ **section ATPA.C5.1 SDWO Registration**: Acquirers must register each Staged Digital Wallet Operator (SDWO) as a TPA with Visa and assign a unique CAID number for card-absent transactions; the SDWO's primary location must be set as the country of its principal place of business.
175
+
176
+ **section ATPA.C8.3 TPA Suspicious Activity Reporting**: Acquirers must immediately report to Visa any suspected or confirmed loss, theft, compromise, or misuse of Visa account information, Cardholder information, transaction information, systems, or equipment by a Merchant or TPA, and any fraud or transaction laundering, with a thorough remediation plan.
177
+
178
+ **section ATPA.C10.1 TPA Change Notification**: Acquirers must use the Program Request Management application (or appropriate form) to notify Visa of any change in a TPA's principals or business relationship (ownership changes, termination) within 5 business days of the change or knowledge of it.
179
+
180
+ **section ATPA.C11.1 TPA Record Retention**: Acquirers must ensure TPAs maintain complete, well-documented Merchant records for at least 2 years after Merchant Agreement termination; Acquirers must notify Visa when a TPA is undergoing a forensic investigation.
181
+
182
+ **section AHIR.C1.2 High Integrity Risk Acquirer Registration**: To acquire High Integrity Risk Merchants, Acquirers must complete and submit the High Integrity Risk Acquiring Registration Application with required documents, provide written attestation that no prohibited transactions have been or will be processed until registration is approved, submit a one-time non-refundable application fee, and be in good standing in all Visa Risk Management Programs.
183
+
184
+ **section AHIR.C1.2 Annual Control Self-Assessment**: Tier 1 Acquirers must complete an annual control self-assessment per approved High Integrity Risk Merchant category; Tier 2 Acquirers must complete an annual control self-assessment for High Integrity Risk Merchant Tier 2 acquiring; Tier 3 Acquirers must complete a control self-assessment upon Visa's request.
185
+
186
+ **section AVDC.C1.1 Program Information Form (PIF) for Visa Direct**: Money Movement Entities must have an approved Program Information Form (PIF) from Visa before BINs are enabled for OCTs and AFTs; if the Originator's business model changes over time, Visa must be contacted or the PIF updated.
187
+
188
+ **section AACQ.C13.1 Merchant Data Consistency**: Acquirers and their TPAs must maintain uniformity in key identifiers (Registered Merchant Names, Merchant Logos, CAID, MCC, Merchant ID, Merchant DBA, Terminal ID, Merchant data) across the full transaction lifecycle including authentication, authorization, clearing, settlement, fraud reporting, and dispute reporting.
189
+
190
+ **section AATM.C3.1 ATM Operator Data Collection**: ATM Acquirers must collect DBA name, legal name, outlet location, principal names/middle initials, and incorporation status from each ATM Operator and TPA during onboarding.
191
+
192
+ **section AATM.C5.1 Visa ATM Acceptance Marks**: Acquirers must display Visa ATM and Plus Acceptance Marks on all ATMs within **30 days** from the date the Acquirer begins accepting Visa Cards and Plus enabled Cards.
193
+
194
+ ---
195
+
196
+ ## Notes
197
+ - **Jurisdiction scope**: VARS applies globally to all Visa Principal Acquirers and Money Movement Entities using VisaNet/Visa Direct. Country- and region-specific requirements may supplement VARS; Acquirers must consult Visa Rules and local legal counsel for jurisdiction-specific obligations.
198
+ - **Effective date / version**: This document is the October 2024 version of VARS, which replaces the Global Acquirer Risk Standards (GARS). Merchant agreements executed on or after October 21, 2024 must reference VARS (not GARS).
199
+ - **Primacy of Visa Rules**: In any conflict between VARS content and the Visa Core Rules and Visa Product and Service Rules, the Visa Core Rules govern. VARS is a supplementary document.
200
+ - **Acquirer liability**: Acquirers are liable for all acts and omissions of their Merchants, TPAs, and employees under the Visa Rules.
201
+ - **Mandatory vs. Recommended Controls**: VARS distinguishes between Mandatory Controls (minimum requirements Acquirers must comply with) and Recommended Controls (optional best practices). Only Mandatory Controls create enforceable obligations.
202
+ - **Archetype applicability**: AACQ obligations apply to all Acquirers. ATPA obligations apply only to Acquirers sponsoring TPAs. AHIR obligations apply only to Acquirers processing for High Integrity Risk Merchants. AATM obligations apply only to ATM Acquirers. AVDC obligations apply only to Money Movement Entities originating Visa Direct transactions. Archetypes are not mutually exclusive.
203
+ - **VARS Review cost**: Acquirers bear the cost of VARS reviews; reviews must be conducted by Visa staff or Visa-approved third-party reviewers.
204
+ - **VIRP**: High Integrity Risk Merchant details, registration tiers (Tier 1, 2, 3 categories), and VIRP-specific requirements are contained in a separate VIRP document accessible via Visa Online (VOL); this extract covers only what is referenced in the October 2024 VARS guide.
205
+ - **Referenced documents**: Key downstream references include: Third-Party Agent Due Diligence Risk Standards; Payment Facilitator and Marketplace Risk Guide; Visa Account Information Security Program; What to Do If Compromised; PCI DSS; Digital Currency Transactions Guide – Ramp Provider Program Requirements; Third-Party Agent Registration Program – TPA Types and Functional Descriptions.