@pzy560117/codex-harness 0.1.4 → 0.1.6

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 (463) hide show
  1. package/README.md +1 -1
  2. package/package-source/AGENTS.md +48 -0
  3. package/package-source/PACKAGE.md +49 -0
  4. package/package-source/README.md +85 -0
  5. package/package-source/docs/codex-harness-engineering/templates/AGENTS.md +51 -0
  6. package/package-source/docs/codex-harness-engineering/templates/bootstrap-codex-harness.ps1 +780 -0
  7. package/package-source/docs/codex-harness-engineering/templates/ci/AGENTS.md +15 -0
  8. package/package-source/docs/codex-harness-engineering/templates/ci/github-action-codex-review.yml +110 -0
  9. package/package-source/docs/codex-harness-engineering/templates/ci/github-action-codex-task.yml +46 -0
  10. package/package-source/docs/codex-harness-engineering/templates/config/AGENTS.md +19 -0
  11. package/package-source/docs/codex-harness-engineering/templates/config/agents/architect.toml +18 -0
  12. package/package-source/docs/codex-harness-engineering/templates/config/agents/backend-worker.toml +15 -0
  13. package/package-source/docs/codex-harness-engineering/templates/config/agents/docs-researcher.toml +14 -0
  14. package/package-source/docs/codex-harness-engineering/templates/config/agents/docs-worker.toml +16 -0
  15. package/package-source/docs/codex-harness-engineering/templates/config/agents/explorer.toml +15 -0
  16. package/package-source/docs/codex-harness-engineering/templates/config/agents/failure-triage.toml +19 -0
  17. package/package-source/docs/codex-harness-engineering/templates/config/agents/frontend-worker.toml +15 -0
  18. package/package-source/docs/codex-harness-engineering/templates/config/agents/harness-writer.toml +16 -0
  19. package/package-source/docs/codex-harness-engineering/templates/config/agents/planner.toml +16 -0
  20. package/package-source/docs/codex-harness-engineering/templates/config/agents/readonly-research.toml +14 -0
  21. package/package-source/docs/codex-harness-engineering/templates/config/agents/reviewer.toml +14 -0
  22. package/package-source/docs/codex-harness-engineering/templates/config/agents/security-reviewer.toml +16 -0
  23. package/package-source/docs/codex-harness-engineering/templates/config/agents/stage1-reviewer.toml +16 -0
  24. package/package-source/docs/codex-harness-engineering/templates/config/agents/stage2-reviewer.toml +17 -0
  25. package/package-source/docs/codex-harness-engineering/templates/config/agents/test-planner.toml +18 -0
  26. package/package-source/docs/codex-harness-engineering/templates/config/agents/test-runner.toml +15 -0
  27. package/package-source/docs/codex-harness-engineering/templates/config/agents/visual-reviewer.toml +16 -0
  28. package/package-source/docs/codex-harness-engineering/templates/config/codex-agent-roles.md +24 -0
  29. package/package-source/docs/codex-harness-engineering/templates/config/codex-config.toml +38 -0
  30. package/package-source/docs/codex-harness-engineering/templates/config/codex-readme.md +67 -0
  31. package/package-source/docs/codex-harness-engineering/templates/config/env-check.ps1 +44 -0
  32. package/package-source/docs/codex-harness-engineering/templates/config/env.example +13 -0
  33. package/package-source/docs/codex-harness-engineering/templates/config/global-AGENTS.md +40 -0
  34. package/package-source/docs/codex-harness-engineering/templates/config/global-config.toml +19 -0
  35. package/package-source/docs/codex-harness-engineering/templates/config/mcp-config.toml +38 -0
  36. package/package-source/docs/codex-harness-engineering/templates/config/rules/agents.md +118 -0
  37. package/package-source/docs/codex-harness-engineering/templates/config/rules/coding-style.md +57 -0
  38. package/package-source/docs/codex-harness-engineering/templates/config/rules/constitution.md +290 -0
  39. package/package-source/docs/codex-harness-engineering/templates/config/rules/git.rules +41 -0
  40. package/package-source/docs/codex-harness-engineering/templates/config/rules/harness.rules +29 -0
  41. package/package-source/docs/codex-harness-engineering/templates/config/rules/patterns.md +59 -0
  42. package/package-source/docs/codex-harness-engineering/templates/config/rules/safety.rules +35 -0
  43. package/package-source/docs/codex-harness-engineering/templates/config/rules/testing.md +34 -0
  44. package/package-source/docs/codex-harness-engineering/templates/context/AGENTS.md +19 -0
  45. package/package-source/docs/codex-harness-engineering/templates/context/API_MAP.md +18 -0
  46. package/package-source/docs/codex-harness-engineering/templates/context/CHANGELOG_AI.md +11 -0
  47. package/package-source/docs/codex-harness-engineering/templates/context/CURRENT_TASK.md +114 -0
  48. package/package-source/docs/codex-harness-engineering/templates/context/DB_SCHEMA.md +14 -0
  49. package/package-source/docs/codex-harness-engineering/templates/context/DECISIONS.md +12 -0
  50. package/package-source/docs/codex-harness-engineering/templates/context/KNOWN_ISSUES.md +12 -0
  51. package/package-source/docs/codex-harness-engineering/templates/context/PROJECT_CONTEXT.md +14 -0
  52. package/package-source/docs/codex-harness-engineering/templates/context/architecture-brief.md +58 -0
  53. package/package-source/docs/codex-harness-engineering/templates/context/dev-plan.md +166 -0
  54. package/package-source/docs/codex-harness-engineering/templates/context/feature-pack.md +101 -0
  55. package/package-source/docs/codex-harness-engineering/templates/context/repo-map.md +102 -0
  56. package/package-source/docs/codex-harness-engineering/templates/context/service-dependency-matrix.yaml +25 -0
  57. package/package-source/docs/codex-harness-engineering/templates/contracts/AGENTS.md +17 -0
  58. package/package-source/docs/codex-harness-engineering/templates/contracts/README.md +24 -0
  59. package/package-source/docs/codex-harness-engineering/templates/contracts/openapi.yaml +182 -0
  60. package/package-source/docs/codex-harness-engineering/templates/contracts/orval.config.ts +20 -0
  61. package/package-source/docs/codex-harness-engineering/templates/contracts/prism-usage.md +41 -0
  62. package/package-source/docs/codex-harness-engineering/templates/design/AGENTS.md +21 -0
  63. package/package-source/docs/codex-harness-engineering/templates/design/ai-image-brief.md +122 -0
  64. package/package-source/docs/codex-harness-engineering/templates/design/assets/README.md +24 -0
  65. package/package-source/docs/codex-harness-engineering/templates/design/component-map.md +45 -0
  66. package/package-source/docs/codex-harness-engineering/templates/design/design-brief.md +183 -0
  67. package/package-source/docs/codex-harness-engineering/templates/design/design-tokens.json +88 -0
  68. package/package-source/docs/codex-harness-engineering/templates/design/frontend-architecture.md +165 -0
  69. package/package-source/docs/codex-harness-engineering/templates/design/image-to-frontend-spec.md +120 -0
  70. package/package-source/docs/codex-harness-engineering/templates/design/screen-states.md +157 -0
  71. package/package-source/docs/codex-harness-engineering/templates/design/ui-image-review.md +60 -0
  72. package/package-source/docs/codex-harness-engineering/templates/design/visual-parity-review.md +124 -0
  73. package/package-source/docs/codex-harness-engineering/templates/docs/AGENTS.md +19 -0
  74. package/package-source/docs/codex-harness-engineering/templates/docs/architecture-constraints.md +97 -0
  75. package/package-source/docs/codex-harness-engineering/templates/docs/code-semantics-and-navigation.md +54 -0
  76. package/package-source/docs/codex-harness-engineering/templates/docs/code-style-and-naming.md +116 -0
  77. package/package-source/docs/codex-harness-engineering/templates/docs/demo-readme.md +73 -0
  78. package/package-source/docs/codex-harness-engineering/templates/docs/directory-structure-template.md +88 -0
  79. package/package-source/docs/codex-harness-engineering/templates/docs/env-and-deployment-template.md +60 -0
  80. package/package-source/docs/codex-harness-engineering/templates/docs/frontend-quality-rules.md +165 -0
  81. package/package-source/docs/codex-harness-engineering/templates/docs/governance-auto-repair.md +82 -0
  82. package/package-source/docs/codex-harness-engineering/templates/docs/harness-architecture.md +78 -0
  83. package/package-source/docs/codex-harness-engineering/templates/docs/install-manifest-governance.md +307 -0
  84. package/package-source/docs/codex-harness-engineering/templates/docs/knowledge-architecture.md +241 -0
  85. package/package-source/docs/codex-harness-engineering/templates/docs/knowledge-import.md +108 -0
  86. package/package-source/docs/codex-harness-engineering/templates/docs/knowledge-lint.md +98 -0
  87. package/package-source/docs/codex-harness-engineering/templates/docs/mcp-knowledge-governance.md +24 -0
  88. package/package-source/docs/codex-harness-engineering/templates/docs/new-project-checklist.md +7 -0
  89. package/package-source/docs/codex-harness-engineering/templates/docs/new-project-usage.md +216 -0
  90. package/package-source/docs/codex-harness-engineering/templates/docs/project-agents-template.md +211 -0
  91. package/package-source/docs/codex-harness-engineering/templates/docs/prompt-knowledge-integration.md +100 -0
  92. package/package-source/docs/codex-harness-engineering/templates/docs/regression-rules.md +47 -0
  93. package/package-source/docs/codex-harness-engineering/templates/docs/requirement-prep-kit/README.md +3 -0
  94. package/package-source/docs/codex-harness-engineering/templates/docs/rule-governance.md +98 -0
  95. package/package-source/docs/codex-harness-engineering/templates/docs/service-dependency-matrix.md +70 -0
  96. package/package-source/docs/codex-harness-engineering/templates/docs/spec-to-ui-to-code-workflow.md +196 -0
  97. package/package-source/docs/codex-harness-engineering/templates/docs/task-session-strategy.md +133 -0
  98. package/package-source/docs/codex-harness-engineering/templates/docs/team-knowledge-sync.md +187 -0
  99. package/package-source/docs/codex-harness-engineering/templates/docs/trace-format.md +86 -0
  100. package/package-source/docs/codex-harness-engineering/templates/governance/AGENTS.md +18 -0
  101. package/package-source/docs/codex-harness-engineering/templates/governance/branch-protection-checklist.md +50 -0
  102. package/package-source/docs/codex-harness-engineering/templates/governance/feedback-evolution-loop.md +55 -0
  103. package/package-source/docs/codex-harness-engineering/templates/governance/retry-budget.yaml +30 -0
  104. package/package-source/docs/codex-harness-engineering/templates/governance/risk-levels.yaml +53 -0
  105. package/package-source/docs/codex-harness-engineering/templates/governance/sandbox-policy.md +13 -0
  106. package/package-source/docs/codex-harness-engineering/templates/hooks/AGENTS.md +15 -0
  107. package/package-source/docs/codex-harness-engineering/templates/hooks/hook-stop-verify.ps1 +871 -0
  108. package/package-source/docs/codex-harness-engineering/templates/hooks/hooks.json +40 -0
  109. package/package-source/docs/codex-harness-engineering/templates/knowledge/AGENTS.md +16 -0
  110. package/package-source/docs/codex-harness-engineering/templates/knowledge/catalog.md +6 -0
  111. package/package-source/docs/codex-harness-engineering/templates/knowledge/decisions/DECISION-HARNESS-001.md +39 -0
  112. package/package-source/docs/codex-harness-engineering/templates/knowledge/guidelines/GUIDELINE-RULES-001.md +30 -0
  113. package/package-source/docs/codex-harness-engineering/templates/knowledge/knowledge-catalog.md +41 -0
  114. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/memory/constitution.md +72 -0
  115. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/scripts/powershell/check-prerequisites.ps1 +148 -0
  116. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/scripts/powershell/common.ps1 +137 -0
  117. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/scripts/powershell/create-new-feature.ps1 +279 -0
  118. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/scripts/powershell/setup-plan.ps1 +61 -0
  119. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/scripts/powershell/update-agent-context.ps1 +448 -0
  120. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/templates/agent-file-template.md +28 -0
  121. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/templates/checklist-template.md +40 -0
  122. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/templates/e2e-plan-template.md +38 -0
  123. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/templates/plan-template.md +393 -0
  124. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/templates/spec-template.md +307 -0
  125. package/package-source/docs/codex-harness-engineering/templates/package-assets/.specify/templates/tasks-template.md +244 -0
  126. package/package-source/docs/codex-harness-engineering/templates/package-assets/AGENTS.md +19 -0
  127. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/architecture/constraints.md +98 -0
  128. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/AGENTS.md +25 -0
  129. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/README.md +198 -0
  130. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/START-HERE.md +66 -0
  131. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/agent-ecosystem-practices.md +140 -0
  132. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/best-practices.md +267 -0
  133. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/codex-global-rules-example.md +292 -0
  134. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/AGENTS.md +14 -0
  135. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/goal-templates.md +380 -0
  136. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/AGENTS.md +14 -0
  137. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/README.md +64 -0
  138. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/contracts/openapi.yaml +25 -0
  139. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/contracts/orval.config.ts +20 -0
  140. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/design/ai-image-brief.md +44 -0
  141. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/design/component-map.md +17 -0
  142. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/design/design-brief.md +58 -0
  143. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/design/frontend-architecture.md +107 -0
  144. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/design/image-to-frontend-spec.md +72 -0
  145. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/design/screen-states.md +25 -0
  146. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/design/ui-image-review.md +38 -0
  147. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/product/difficulty-research.md +39 -0
  148. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/product/page-inventory.md +5 -0
  149. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/product/prd-lite.md +41 -0
  150. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/product/requirement-interface-matrix.md +32 -0
  151. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/docs/product/state-matrix.yaml +14 -0
  152. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/packages/api-client/generated/model/Ticket.ts +6 -0
  153. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/packages/api-client/generated/ticket-api.ts +35 -0
  154. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/packages/api-client/http-client.ts +8 -0
  155. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/packages/ui/TicketFilterBar.tsx +72 -0
  156. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/plans/features/ticket-filter.dev-plan.md +48 -0
  157. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/progress.txt +1 -0
  158. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/stories/TicketFilterBar.stories.tsx +33 -0
  159. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/task.json +54 -0
  160. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/traces/DEMO-TICKET-FILTER-001-20260422-120000.json +74 -0
  161. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/examples/ticket-filter-demo/verify.ps1 +42 -0
  162. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/global-rules-and-bootstrap.md +415 -0
  163. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/goal-harness-integration-guide.md +364 -0
  164. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/implementation-flow.md +290 -0
  165. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/implementation-guide.md +25 -0
  166. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/knowledge-surface-map.md +186 -0
  167. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/mode-matrix.md +57 -0
  168. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/new-project-usage.md +176 -0
  169. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/project-agents-template.md +168 -0
  170. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/spec-to-ui-to-code-workflow.md +196 -0
  171. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/superpowers-codex-solo-builder-playbook.md +676 -0
  172. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/AGENTS.md +22 -0
  173. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/context/AGENTS.md +14 -0
  174. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/context/API_MAP.md +18 -0
  175. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/context/CURRENT_TASK.md +89 -0
  176. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/context/dev-plan.md +166 -0
  177. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/contracts/AGENTS.md +14 -0
  178. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/contracts/README.md +24 -0
  179. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/contracts/prism-usage.md +41 -0
  180. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/AGENTS.md +14 -0
  181. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/component-map.md +45 -0
  182. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/design-brief.md +183 -0
  183. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/design-tokens.json +88 -0
  184. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/frontend-architecture.md +165 -0
  185. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/image-to-frontend-spec.md +120 -0
  186. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/screen-states.md +157 -0
  187. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/design/visual-parity-review.md +124 -0
  188. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/docs/AGENTS.md +14 -0
  189. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/docs/env-and-deployment-template.md +60 -0
  190. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/docs/frontend-quality-rules.md +161 -0
  191. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/docs/regression-rules.md +47 -0
  192. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/docs/trace-format.md +86 -0
  193. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/product/AGENTS.md +14 -0
  194. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/product/prd-lite.md +166 -0
  195. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/product/state-matrix.yaml +116 -0
  196. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/prompts/AGENTS.md +14 -0
  197. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/prompts/implement-one-task.md +150 -0
  198. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/prompts/repair-one-finding.md +70 -0
  199. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/spec/11-security-design.md +43 -0
  200. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/spec/AGENTS.md +14 -0
  201. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/testing/AGENTS.md +14 -0
  202. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/testing/EVIDENCE_PROTOCOL.md +54 -0
  203. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/testing/NATURAL_LANGUAGE_TEST_CASES.md +690 -0
  204. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/testing/REGRESSION_PLAN.md +28 -0
  205. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/testing/TEST_STRATEGY.md +98 -0
  206. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/testing/TRACEABILITY_MATRIX.md +23 -0
  207. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/codex-harness-engineering/templates/testing/verify-matrix.md +51 -0
  208. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/AGENTS.md +165 -0
  209. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/CHANGELOG.md +149 -0
  210. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/CLAUDE.md +61 -0
  211. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/CODE_OF_CONDUCT.md +83 -0
  212. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/CONTRIBUTING.md +465 -0
  213. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/README.md +1390 -0
  214. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/SECURITY.md +53 -0
  215. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/SPONSORING.md +43 -0
  216. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/SPONSORS.md +59 -0
  217. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/TROUBLESHOOTING.md +446 -0
  218. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/architect.md +232 -0
  219. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/build-error-resolver.md +119 -0
  220. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/chief-of-staff.md +155 -0
  221. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/code-reviewer.md +238 -0
  222. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/cpp-build-resolver.md +91 -0
  223. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/cpp-reviewer.md +79 -0
  224. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/database-reviewer.md +94 -0
  225. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/doc-updater.md +110 -0
  226. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/docs-lookup.md +68 -0
  227. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/e2e-runner.md +110 -0
  228. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/go-build-resolver.md +95 -0
  229. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/go-reviewer.md +83 -0
  230. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/harness-optimizer.md +35 -0
  231. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/java-build-resolver.md +154 -0
  232. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/java-reviewer.md +105 -0
  233. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/kotlin-build-resolver.md +119 -0
  234. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/loop-operator.md +37 -0
  235. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/planner.md +215 -0
  236. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/python-reviewer.md +106 -0
  237. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/pytorch-build-resolver.md +122 -0
  238. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/refactor-cleaner.md +92 -0
  239. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/rust-build-resolver.md +149 -0
  240. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/rust-reviewer.md +95 -0
  241. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/security-reviewer.md +112 -0
  242. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/tdd-guide.md +96 -0
  243. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/agents/typescript-reviewer.md +122 -0
  244. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/aside.md +173 -0
  245. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/build-fix.md +64 -0
  246. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/checkpoint.md +78 -0
  247. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/claw.md +51 -0
  248. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/code-review.md +43 -0
  249. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/context-budget.md +29 -0
  250. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/cpp-build.md +173 -0
  251. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/cpp-review.md +140 -0
  252. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/cpp-test.md +257 -0
  253. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/docs.md +32 -0
  254. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/e2e.md +389 -0
  255. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/eval.md +122 -0
  256. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/evolve.md +194 -0
  257. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/go-build.md +183 -0
  258. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/go-review.md +156 -0
  259. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/go-test.md +274 -0
  260. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/gradle-build.md +72 -0
  261. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/harness-audit.md +72 -0
  262. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/instinct-export.md +67 -0
  263. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/instinct-import.md +117 -0
  264. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/instinct-status.md +59 -0
  265. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/kotlin-build.md +176 -0
  266. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/kotlin-review.md +144 -0
  267. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/kotlin-test.md +315 -0
  268. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/learn-eval.md +117 -0
  269. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/learn.md +70 -0
  270. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/loop-start.md +33 -0
  271. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/loop-status.md +25 -0
  272. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/model-route.md +27 -0
  273. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/multi-backend.md +162 -0
  274. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/multi-execute.md +321 -0
  275. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/multi-frontend.md +162 -0
  276. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/multi-plan.md +278 -0
  277. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/plan.md +118 -0
  278. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/pm2.md +283 -0
  279. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/projects.md +39 -0
  280. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/promote.md +41 -0
  281. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/prompt-optimize.md +37 -0
  282. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/prune.md +31 -0
  283. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/python-review.md +319 -0
  284. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/quality-gate.md +30 -0
  285. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/refactor-clean.md +83 -0
  286. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/resume-session.md +154 -0
  287. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/rules-distill.md +11 -0
  288. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/rust-build.md +189 -0
  289. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/rust-review.md +146 -0
  290. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/rust-test.md +311 -0
  291. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/setup-pm.md +83 -0
  292. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/skill-create.md +176 -0
  293. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/skill-health.md +54 -0
  294. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/tdd.md +330 -0
  295. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/test-coverage.md +69 -0
  296. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/update-codemaps.md +73 -0
  297. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/update-docs.md +86 -0
  298. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/commands/verify.md +60 -0
  299. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/contexts/dev.md +23 -0
  300. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/contexts/research.md +30 -0
  301. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/contexts/review.md +25 -0
  302. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/examples/CLAUDE.md +100 -0
  303. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/examples/django-api-CLAUDE.md +308 -0
  304. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/examples/go-microservice-CLAUDE.md +267 -0
  305. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/examples/rust-api-CLAUDE.md +285 -0
  306. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/examples/saas-nextjs-CLAUDE.md +166 -0
  307. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/examples/user-CLAUDE.md +118 -0
  308. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/hooks/README.md +220 -0
  309. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/plugins/README.md +89 -0
  310. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/the-openclaw-guide.md +471 -0
  311. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/ecc-zh-CN/the-security-guide.md +206 -0
  312. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/README.md +60 -0
  313. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/app/Mobile_App_Production_Readiness_Framework_/347/247/273/345/212/250/347/253/257/345/205/250/345/271/263/345/217/260/347/224/237/344/272/247/345/217/257/344/270/212/347/272/277/350/247/204/350/214/203.md +2457 -0
  314. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/app/catalog.md +33 -0
  315. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/architecture.md +358 -0
  316. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/common/AI_Coding_Production_Control_Framework_AI/345/206/231/345/256/214/347/232/204/344/273/243/347/240/201/345/246/202/344/275/225/344/270/215/345/244/261/346/216/247.md +2055 -0
  317. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/common/catalog.md +34 -0
  318. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/initial-content.md +296 -0
  319. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/external-knowledge/integration-roadmap.md +221 -0
  320. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/architecture-constraints.md +95 -0
  321. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/code-semantics-and-navigation.md +17 -0
  322. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/code-style-and-naming.md +116 -0
  323. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/frontend-quality-rules.md +138 -0
  324. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/governance-auto-repair.md +82 -0
  325. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/mcp-knowledge-governance.md +24 -0
  326. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/service-dependency-matrix.md +55 -0
  327. package/package-source/docs/codex-harness-engineering/templates/package-assets/docs/harness/speckit-requirements-gate.md +260 -0
  328. package/package-source/docs/codex-harness-engineering/templates/package-assets/root/PACKAGE.md +49 -0
  329. package/package-source/docs/codex-harness-engineering/templates/package-assets/root/README.md +52 -0
  330. package/package-source/docs/codex-harness-engineering/templates/package-assets/root/init-project.ps1 +51 -0
  331. package/package-source/docs/codex-harness-engineering/templates/package-assets/root/install-agent-here.ps1 +57 -0
  332. package/package-source/docs/codex-harness-engineering/templates/package-assets/root/install-agent.ps1 +2506 -0
  333. package/package-source/docs/codex-harness-engineering/templates/package-assets/root/install-user.ps1 +29 -0
  334. package/package-source/docs/codex-harness-engineering/templates/package-assets/rules/agents.md +115 -0
  335. package/package-source/docs/codex-harness-engineering/templates/package-assets/rules/coding-style.md +57 -0
  336. package/package-source/docs/codex-harness-engineering/templates/package-assets/rules/constitution.md +290 -0
  337. package/package-source/docs/codex-harness-engineering/templates/package-assets/rules/git.rules +41 -0
  338. package/package-source/docs/codex-harness-engineering/templates/package-assets/rules/harness.rules +29 -0
  339. package/package-source/docs/codex-harness-engineering/templates/package-assets/rules/patterns.md +59 -0
  340. package/package-source/docs/codex-harness-engineering/templates/package-assets/rules/safety.rules +35 -0
  341. package/package-source/docs/codex-harness-engineering/templates/package-assets/rules/testing.md +34 -0
  342. package/package-source/docs/codex-harness-engineering/templates/package-assets/scripts/ai-workflow/check-ai-sync-drift.ps1 +205 -0
  343. package/package-source/docs/codex-harness-engineering/templates/package-assets/scripts/ai-workflow/sync-ai-config-to-targets.ps1 +826 -0
  344. package/package-source/docs/codex-harness-engineering/templates/package-assets/scripts/ai-workflow/sync-targets.example.json +35 -0
  345. package/package-source/docs/codex-harness-engineering/templates/package-assets/scripts/harness/harness-governance-check.ps1 +864 -0
  346. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/HOW_TO_USE_SKILLS.md +91 -0
  347. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/academic-mermaid-diagrams/SKILL.md +172 -0
  348. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/ai-config-git-sync/SKILL.md +152 -0
  349. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/ai-config-git-sync/references/command-recipes.md +92 -0
  350. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/ai-ui-prompts/SKILL.md +350 -0
  351. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/allure-report/SKILL.md +230 -0
  352. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/allure-report/examples/usage.md +99 -0
  353. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/allure-report/scripts/view-allure.ps1 +28 -0
  354. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/api-auto-testing/SKILL.md +329 -0
  355. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/api-contract-template/SKILL.md +88 -0
  356. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/api-design/SKILL.md +139 -0
  357. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/api-integration/SKILL.md +302 -0
  358. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/architect/SKILL.md +211 -0
  359. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/auto-commit/SKILL.md +324 -0
  360. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/backend-patterns/SKILL.md +582 -0
  361. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/baseline-ui/SKILL.md +85 -0
  362. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/better-icons/SKILL.md +129 -0
  363. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/brand-design-md/README.md +215 -0
  364. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/brand-design-md/SKILL.md +191 -0
  365. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/browser-e2e-testing/SKILL.md +305 -0
  366. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/build-error-resolver/SKILL.md +532 -0
  367. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/build-fix/SKILL.md +34 -0
  368. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/business-rule-spec/SKILL.md +99 -0
  369. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/celery-tasks/SKILL.md +95 -0
  370. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/checkpoint/SKILL.md +79 -0
  371. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/cicd/SKILL.md +167 -0
  372. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/claude-openrouter-clash-debug/SKILL.md +100 -0
  373. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/claude-openrouter-clash-debug/references/windows-openrouter-clash-playbook.md +94 -0
  374. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/claude-openrouter-clash-debug/scripts/diagnose-openrouter-route.ps1 +282 -0
  375. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/claude-openrouter-clash-debug/scripts/ensure-openrouter-rule.ps1 +101 -0
  376. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/clickhouse-io/SKILL.md +429 -0
  377. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/code-review/SKILL.md +171 -0
  378. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/code-reviewer/SKILL.md +104 -0
  379. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/coding-standards/SKILL.md +520 -0
  380. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/consistency-checklist/SKILL.md +57 -0
  381. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/continuous-learning/SKILL.md +80 -0
  382. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/continuous-learning/config.json +18 -0
  383. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/continuous-learning/evaluate-session.sh +60 -0
  384. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/core-rules/SKILL.md +78 -0
  385. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/data-flow-spec/SKILL.md +63 -0
  386. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/database/SKILL.md +147 -0
  387. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/deep-interview/SKILL.md +154 -0
  388. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/django-drf/SKILL.md +97 -0
  389. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/doc-updater/SKILL.md +452 -0
  390. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/docker/SKILL.md +216 -0
  391. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/docx/SKILL.md +105 -0
  392. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/e2e/SKILL.md +364 -0
  393. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/e2e-runner/SKILL.md +708 -0
  394. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/error-handling/SKILL.md +245 -0
  395. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/eval/SKILL.md +125 -0
  396. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/eval-harness/SKILL.md +226 -0
  397. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/example-skill/README.md +37 -0
  398. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/example-skill/SKILL.md +141 -0
  399. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/example-skill/examples/usage.md +76 -0
  400. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/example-skill/resources/config.json +21 -0
  401. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/example-skill/scripts/helper.py +24 -0
  402. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/exception-handling-spec/SKILL.md +88 -0
  403. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/find-skill/SKILL.md +95 -0
  404. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/fixing-accessibility/SKILL.md +136 -0
  405. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/fixing-metadata/SKILL.md +111 -0
  406. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/fixing-motion-performance/SKILL.md +151 -0
  407. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/frontend-design/SKILL.md +58 -0
  408. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/frontend-first-workflow/SKILL.md +187 -0
  409. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/frontend-patterns/SKILL.md +631 -0
  410. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/fullstack-workflow/SKILL.md +85 -0
  411. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/git-workflow/SKILL.md +108 -0
  412. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/git-xianyu-analyzer/SKILL.md +346 -0
  413. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/git-xianyu-analyzer/scripts/download_images.py +112 -0
  414. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/github-research/SKILL.md +213 -0
  415. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/glue-coding/SKILL.md +389 -0
  416. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/glue-coding-workflow/SKILL.md +230 -0
  417. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/harness-surface-sync/SKILL.md +204 -0
  418. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/harness-surface-sync/references/current-repo-sync-matrix.md +150 -0
  419. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/harness-surface-sync/references/stale-patterns.md +65 -0
  420. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/agents/openai.yaml +4 -0
  421. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/adapt.md +190 -0
  422. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/animate.md +173 -0
  423. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/audit.md +134 -0
  424. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/bolder.md +113 -0
  425. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/brand.md +104 -0
  426. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/clarify.md +174 -0
  427. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/cognitive-load.md +106 -0
  428. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/color-and-contrast.md +105 -0
  429. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/colorize.md +154 -0
  430. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/craft.md +138 -0
  431. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/critique.md +213 -0
  432. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/delight.md +302 -0
  433. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/distill.md +111 -0
  434. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/document.md +427 -0
  435. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/extract.md +70 -0
  436. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/harden.md +347 -0
  437. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/heuristics-scoring.md +234 -0
  438. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/interaction-design.md +195 -0
  439. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/layout.md +141 -0
  440. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/live.md +513 -0
  441. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/motion-design.md +99 -0
  442. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/onboard.md +234 -0
  443. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/optimize.md +258 -0
  444. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/overdrive.md +130 -0
  445. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/personas.md +178 -0
  446. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/polish.md +232 -0
  447. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/product.md +62 -0
  448. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/quieter.md +99 -0
  449. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/responsive-design.md +114 -0
  450. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/shape.md +136 -0
  451. package/package-source/docs/codex-harness-engineering/templates/package-assets/skills/impeccable/reference/spatial-design.md +100 -0
  452. package/package-source/install-manifest.json +523 -0
  453. package/package-source/install-manifest.schema.json +80 -0
  454. package/package-source/tools/install/ai-workflow/check-ai-sync-drift.ps1 +205 -0
  455. package/package-source/tools/install/ai-workflow/sync-ai-config-to-targets.ps1 +826 -0
  456. package/package-source/tools/install/ai-workflow/sync-targets.example.json +35 -0
  457. package/package-source/tools/install/bootstrap-codex-harness.ps1 +776 -0
  458. package/package-source/tools/install/env-check.ps1 +40 -0
  459. package/package-source/tools/install/init-project.ps1 +51 -0
  460. package/package-source/tools/install/install-agent-here.ps1 +57 -0
  461. package/package-source/tools/install/install-agent.ps1 +2513 -0
  462. package/package-source/tools/install/install-user.ps1 +29 -0
  463. package/package.json +1 -1
@@ -0,0 +1,2457 @@
1
+ # Mobile App Production Readiness Framework:移动端全平台生产可上线规范与宠物商城行业案例
2
+
3
+ > 版本:v1.0
4
+ > 生成日期:2026-05-17
5
+ > 文档定位:产品 PRD 补充规范、移动端开发验收规范、QA 测试计划、安全测试 checklist、隐私合规检查清单、App Store / Google Play / 小程序审核准备清单、发布准入 Release Gate、宠物商城行业专项规范。
6
+ > 使用方式:先按第一卷完成通用生产可上线检查,再按第二卷完成宠物商城行业专项检查,最后用第三卷映射表判断 MVP、全量上线与高风险专项边界。
7
+
8
+ ---
9
+
10
+ ## 总目录
11
+
12
+ - 第一卷:通用移动端 App 全平台生产可上线框架
13
+ - 0. 文档说明
14
+ - 1. 移动端 App 质量模型
15
+ - 2. 平台范围
16
+ - 3. iOS 专项规范
17
+ - 4. Android 专项规范
18
+ - 5. H5 / WebView / Hybrid / 微信小程序专项
19
+ - 6. UI、安全区域与交互规范
20
+ - 7. App 生命周期状态机
21
+ - 8. 安装、升级、迁移与版本兼容
22
+ - 9. 权限、隐私与用户数据权利
23
+ - 10. 第三方 SDK 与供应链治理
24
+ - 11. 构建产物审计
25
+ - 12. 安全规范
26
+ - 13. 支付、订阅、订单与对账
27
+ - 14. 数据同步、离线、弱网与一致性
28
+ - 15. 后台任务与系统调度
29
+ - 16. 发布治理、灰度、回滚与动态配置
30
+ - 17. 可观测性、日志、告警与 Runbook
31
+ - 18. 商店审核、元数据与分发渠道
32
+ - 19. 平台账号、主体、财务、税务与收款
33
+ - 20. 客服、投诉、申诉与运营后台
34
+ - 21. AI 功能专项
35
+ - 22. 长期维护日历
36
+ - 23. 通用 Release Gate
37
+ - 第二卷:宠物商城 App 行业专项案例
38
+ - 24. 宠物商城业务范围与 MVP 边界
39
+ - 25. 宠物商城平台范围
40
+ - 26. 宠物商城商品类目风险分级
41
+ - 27. 禁售 / 限售商品库
42
+ - 28. 宠物商城商品字段模型
43
+ - 29. 商品审核流程与高风险词库
44
+ - 30. 商家入驻与资质审核
45
+ - 31. 宠物档案与推荐系统
46
+ - 32. 库存、批次、保质期与仓储
47
+ - 33. 订单、支付与履约
48
+ - 34. 物流、冷链、大件、多仓
49
+ - 35. 售后、纠纷与证据链
50
+ - 36. 商品召回系统
51
+ - 37. 评价、内容社区、直播与种草风险
52
+ - 38. 宠物服务预约
53
+ - 39. 宠物医疗 / AI 问诊边界
54
+ - 40. 宠物商城自动化测试策略
55
+ - 41. 宠物商城 P0 测试用例
56
+ - 42. 宠物商城 Release Gate
57
+ - 第三卷:通用框架与宠物商城案例映射关系
58
+ - 补充风险
59
+ - 待确认问题
60
+ - 建议下一步拆分的专项文档
61
+ - 附录:官方资料索引与证据留存模板
62
+
63
+ ---
64
+
65
+ # 第一卷:通用移动端 App 全平台生产可上线框架
66
+
67
+ ## 0. 文档说明
68
+
69
+ ### 0.1 文档目的
70
+
71
+ 本规范用于判断一个移动端 App 或全平台 App 是否具备生产可上线能力。它不是简单的测试点清单,而是从产品、研发、测试、安全、合规、运维、客服、财务、运营、后台治理等视角,建立上线前必须满足的工程标准。
72
+
73
+ 核心目标:
74
+
75
+ - 在 PRD 阶段前置平台规则、权限、支付、隐私、商店审核、设备适配、灰度回滚等约束。
76
+ - 在研发阶段要求代码、配置、构建产物、SDK、证书、动态配置可审计。
77
+ - 在测试阶段要求功能、兼容、异常、弱网、生命周期、安全、隐私、后台任务、版本升级、数据一致性、支付对账等可验证。
78
+ - 在发布阶段要求 Release Gate、灰度、回滚、监控、告警、Runbook、责任人和证据留存。
79
+ - 在长期维护阶段要求定期检查系统版本、targetSdk、商店政策、SDK 漏洞、证书密钥、隐私声明、投诉和差评。
80
+
81
+ ### 0.2 适用范围
82
+
83
+ 适用于大多数移动端和全平台产品,包括但不限于:内容型、电商型、工具型、社交型、SaaS、金融型、O2O、教育型、AI 功能型、会员订阅型、Hybrid / WebView 型产品。
84
+
85
+ 适用平台:
86
+
87
+ - iOS App
88
+ - Android App
89
+ - H5
90
+ - PC Web,可选
91
+ - WebView / Hybrid
92
+ - 微信小程序
93
+ - 后台系统
94
+ - 服务端 API
95
+ - 数据、风控、客服、财务、运营、内容审核系统
96
+
97
+ ### 0.3 不适用范围
98
+
99
+ 本规范不是具体国家或行业的法律意见。涉及金融、医疗、儿童、博彩、药品、活体交易、跨境数据、保险、证券、兽药、处方药等高风险业务时,必须单独进行法律合规评估。本规范中的行业专项建议需要结合目标市场和实际资质做确认。
100
+
101
+ ### 0.4 目标读者
102
+
103
+ | 角色 | 关注重点 |
104
+ |---|---|
105
+ | 产品经理 | PRD 是否覆盖平台差异、权限、支付、异常、用户权利、客服闭环 |
106
+ | 移动端研发 | iOS / Android / Hybrid 适配、安全存储、权限、生命周期、构建产物 |
107
+ | 服务端研发 | 旧 App 兼容、接口幂等、支付回调、对账、数据一致性、灰度配置 |
108
+ | QA / 测试 | 测试矩阵、自动化策略、真机验收、Release Gate、证据留存 |
109
+ | 安全团队 | OWASP MASVS、Token、WebView、Deep Link、逆向、风控、黑灰产 |
110
+ | 隐私合规 | 权限、数据采集、SDK、Data Safety、App Store 隐私标签、数据删除 |
111
+ | 运维 / SRE | 监控、告警、Runbook、事故演练、第三方服务故障 |
112
+ | 运营 / 客服 | 投诉、退款、申诉、补偿、内容审核、运营后台闭环 |
113
+ | 财务 | 收款主体、对账、退款凭证、税费、订阅收入、渠道费 |
114
+
115
+ ### 0.5 术语定义
116
+
117
+ | 术语 | 定义 |
118
+ |---|---|
119
+ | Production Readiness | 生产可上线能力,指产品、技术、合规、发布、监控、运营均满足上线条件 |
120
+ | Release Gate | 发布准入门槛,存在阻断项时不得上线或不得全量 |
121
+ | Blocker | 存在一个就不能上线 |
122
+ | Critical | 必须修复后才能全量,可以限制灰度或延迟上线 |
123
+ | Major | 影响主要体验或业务,需要排期修复 |
124
+ | Minor | 一般问题,可后续优化 |
125
+ | Build Manifest | 每次构建产物的可审计清单,包括版本、环境、配置、SDK、开关、证据 |
126
+ | SDK Inventory | 第三方 SDK 台账,记录版本、用途、数据采集、隐私声明、风险和负责人 |
127
+ | Kill Switch | 线上紧急关闭高风险功能的开关 |
128
+ | Remote Config | 远程配置,不应无审计地下发核心业务能力、支付逻辑或绕审核功能 |
129
+ | WebView Data Safety 归属 | App 控制的 H5 / WebView 数据采集需要纳入 App 隐私声明和 Data Safety |
130
+ | PII | 个人身份信息,例如手机号、邮箱、地址、证件号、支付信息等 |
131
+ | MASVS | OWASP Mobile Application Security Verification Standard,移动应用安全验证标准 |
132
+
133
+ ### 0.6 风险等级定义
134
+
135
+ | 等级 | 定义 | 处理要求 |
136
+ |---|---|---|
137
+ | Blocker | 会导致无法上线、严重合规违规、核心流程不可用、用户数据泄露、支付错误、不可回滚 | 禁止上线;已上线必须立即回滚、停用或降级 |
138
+ | Critical | 会严重影响主要业务、商店审核、支付、隐私、安全、稳定性或全量发布 | 必须修复后才能全量;可在严格灰度下验证 |
139
+ | Major | 影响主要体验、兼容性、效率或数据质量,但有临时解决方案 | 明确修复计划和负责人 |
140
+ | Minor | 不影响核心流程,主要是体验优化、文案、样式或低风险边界 | 可后续优化,但需记录 |
141
+
142
+ ### 0.7 Release Gate 定义
143
+
144
+ Release Gate 是上线前的硬性准入标准,包括:
145
+
146
+ - 产品范围确认:上线功能、风险功能、不上线功能明确。
147
+ - 平台矩阵确认:iOS、Android、H5、小程序、后台、服务端覆盖范围明确。
148
+ - 核心流程通过:注册、登录、权限、支付、订单、消息、数据同步等核心路径通过。
149
+ - 安全隐私通过:无敏感信息泄露,无严重越权,无隐私声明重大不一致。
150
+ - 构建产物通过:生产包环境、签名、证书、SDK、mapping / dSYM、debug 开关可审计。
151
+ - 发布机制通过:灰度、回滚、Kill Switch、监控、告警、Runbook 可用。
152
+ - 证据留存:自动化报告、真机截图、审核材料、支付沙箱、崩溃平台、后台配置、Release Gate 签字。
153
+
154
+ ---
155
+
156
+ ## 1. 移动端 App 质量模型
157
+
158
+ 移动端质量不能只按功能模块拆,而应按“一个 App 会以哪些方式失败”建模。
159
+
160
+ ### 1.1 失败模型总览
161
+
162
+ | 失败类型 | 风险说明 | 典型事故 | 阻断级别 |
163
+ |---|---|---|---|
164
+ | 功能失败 | 核心流程无法完成 | 登录失败、下单失败、支付失败、提交失败 | Blocker / Critical |
165
+ | UI 适配失败 | 页面被状态栏、刘海、键盘、导航栏遮挡 | 提交按钮不可点、弹窗超屏、小屏截断 | Critical / Major |
166
+ | 设备兼容失败 | 不同机型、系统版本、ROM、折叠屏表现不同 | Android 厂商机崩溃、iPhone SE 页面不可用 | Critical / Major |
167
+ | 系统权限失败 | 权限申请时机、拒绝、永久拒绝、关闭后无降级 | 拒绝相机后白屏,关闭定位后崩溃 | Critical |
168
+ | 支付失败 | 客户端状态、服务端回调、渠道状态不一致 | 扣款成功但订单丢失、重复支付 | Blocker |
169
+ | 网络失败 | 弱网、断网、超时、DNS、接口异常无处理 | 重复下单、数据丢失、页面卡死 | Critical |
170
+ | 后台任务失败 | 上传下载、同步、定位、推送等后台行为被系统限制 | 后台上传中断、下载重复、任务漏执行 | Critical / Major |
171
+ | 升级失败 | 老版本、本地 DB、缓存、配置和新服务端不兼容 | 升级后崩溃、旧 App 调新接口崩 | Blocker / Critical |
172
+ | 数据同步失败 | 多端、离线、WebSocket、HTTP、缓存不一致 | 消息重复、订单错乱、账号串数据 | Blocker / Critical |
173
+ | 隐私合规失败 | 实际采集和隐私政策、Data Safety、隐私标签不一致 | 审核拒绝、下架、投诉、监管风险 | Blocker |
174
+ | 安全攻击 | Token、WebView、Deep Link、日志、接口、逆向被利用 | 越权、泄露、重放、篡改、二次打包 | Blocker / Critical |
175
+ | 黑灰产滥用 | 刷注册、刷券、刷单、退款套利、机器人 | 资金损失、欺诈、社区污染 | Critical |
176
+ | 商店审核失败 | 审核账号、元数据、隐私、支付、权限、内容不符合规则 | App Store / Google Play / 小程序拒审 | Critical |
177
+ | 灰度发布失败 | 无法暂停、回滚、降级或定位灰度范围 | 小问题变全量事故 | Blocker / Critical |
178
+ | SDK 供应链失败 | SDK 采集数据、漏洞、签名、隐私清单缺失 | 审核拒绝、数据泄露、启动变慢 | Critical |
179
+ | 构建产物失败 | 测试环境、debug、mock、错误签名进入生产包 | 用户连测试库、支付 sandbox、不能升级 | Blocker |
180
+ | 证书 / 密钥 / 域名过期 | 证书、APNs、域名、OAuth、支付密钥过期 | 推送失效、支付失败、登录失败 | Critical / Blocker |
181
+ | 外部服务故障 | 支付、短信、地图、CDN、AI、推送等第三方不可用 | 页面白屏、无法登录、无法支付 | Critical |
182
+ | 投诉和售后失败 | 退款、申诉、账号删除、隐私投诉无闭环 | 用户投诉、监管风险、品牌受损 | Critical / Major |
183
+ | 长期维护失败 | 系统升级、targetSdk、商店规则、SDK 漏洞长期不处理 | 新系统崩溃、商店不可更新 | Critical |
184
+
185
+ ### 1.2 标准检查卡片模板
186
+
187
+ 每个风险项建议按以下模板进入 PRD、测试计划和 Release Gate。
188
+
189
+ ```md
190
+ 风险项:
191
+ 目标:
192
+ 风险说明:
193
+ 影响范围:
194
+ 检查项:
195
+ 测试方法:
196
+ 自动化可行性:可自动化 / 半自动化 / 必须人工 / 必须真机
197
+ 阻断级别:Blocker / Critical / Major / Minor
198
+ 通过标准:
199
+ 证据:截图 / 日志 / 报告 / 后台配置 / 工单 / 签字
200
+ 负责人:产品 / iOS / Android / 服务端 / QA / 安全 / 合规 / 运营 / 客服 / 财务
201
+ ```
202
+
203
+ ### 1.3 质量模型验收方法
204
+
205
+ | 方法 | 用途 | 自动化可行性 | 证据 |
206
+ |---|---|---|---|
207
+ | 单元测试 | 业务规则、工具函数、状态机 | 高 | 测试报告 |
208
+ | API 契约测试 | 服务端兼容旧 App、接口字段、异常码 | 高 | Contract 测试报告 |
209
+ | UI 自动化 | 登录、加购、下单、主流程、回归 | 中高 | Appium / XCUITest / Espresso 报告 |
210
+ | 真机矩阵测试 | 安全区域、权限、厂商 ROM、推送、后台限制 | 中 | 真机截图、设备清单 |
211
+ | 弱网测试 | 超时、断网、重试、幂等 | 中 | Charles / Network Link Conditioner / tc 日志 |
212
+ | 支付沙箱与真实小额测试 | 支付、退款、订阅、回调、对账 | 中低 | 支付平台订单、服务端日志 |
213
+ | 安全测试 | MASVS、越权、WebView、Deep Link、逆向 | 中 | 安全报告 |
214
+ | 隐私合规审查 | 数据采集、SDK、权限、隐私声明 | 半自动 | SDK Inventory、数据流图 |
215
+ | 灰度演练 | 回滚、Kill Switch、告警、降级 | 中 | 演练记录 |
216
+ | 事故演练 | 外部服务故障、配置错误、崩溃异常 | 中 | Runbook 记录 |
217
+
218
+ ---
219
+
220
+ ## 2. 平台范围
221
+
222
+ ### 2.1 C 端范围
223
+
224
+ | 平台 | 是否默认纳入 | 重点风险 |
225
+ |---|---|---|
226
+ | iOS App | 是 | Safe Area、IAP、隐私标签、审核账号、ATT、动态能力、证书 |
227
+ | Android App | 是 | targetSdk、权限、厂商 ROM、Display Cutout、后台限制、多渠道、Play Data Safety |
228
+ | H5 | 视业务 | 浏览器兼容、支付安全、SEO、响应式、分享、埋点一致性 |
229
+ | WebView / Hybrid | 常见 | 白屏、JSBridge、token、Cookie、任意跳转、Native/H5 版本兼容 |
230
+ | 微信小程序 | 视业务 | 类目、微信支付、隐私弹窗、订阅消息、审核、版本回滚 |
231
+ | PC Web | 可选 | 管理端、Web 交易、客服入口、SEO、支付与账号一致性 |
232
+
233
+ ### 2.2 后台范围
234
+
235
+ | 后台 | 适用场景 | 必备能力 |
236
+ |---|---|---|
237
+ | 管理后台 | 所有中后台产品 | 用户、角色、权限、审计、配置、发布、运营入口 |
238
+ | 商家后台 | 平台 / 电商 | 入驻、商品、库存、订单、售后、结算、资质 |
239
+ | 运营后台 | 所有规模化产品 | Banner、活动、内容、配置、推送、灰度、风控开关 |
240
+ | 客服后台 | 有用户投诉或交易 | 用户查询、订单查询、退款、补发、申诉、工单、SLA |
241
+ | 财务后台 | 有支付 / 订阅 / 结算 | 对账、退款凭证、发票、结算、税费、渠道费 |
242
+ | 内容审核后台 | UGC / 社区 / 评论 | 机审、人审、举报、封禁、申诉、证据留存 |
243
+ | 风控后台 | 支付 / 活动 / 社交 / AI | 黑名单、设备、IP、行为规则、冻结、申诉 |
244
+ | 数据分析后台 | 所有增长型产品 | 埋点、漏斗、转化、留存、错误、投放、归因 |
245
+
246
+ ### 2.3 服务端范围
247
+
248
+ | 服务 | 作用 | 生产可上线要求 |
249
+ |---|---|---|
250
+ | 用户中心 | 用户资料、账号状态 | 多端一致、注销、封禁、数据删除、缓存隔离 |
251
+ | 认证中心 | 登录、Token、刷新、SSO | Token 生命周期、过期、踢下线、旧 token 失效 |
252
+ | 支付中心 | 订单支付、回调、对账 | 服务端校验金额、回调验签、幂等、退款、对账 |
253
+ | 订单中心 | 交易流程 | 状态机、幂等、超时关闭、售后、状态一致性 |
254
+ | 商品中心 | 电商 / 内容权益 | 上下架、类目、审核、价格、历史快照 |
255
+ | 消息中心 | 站内信、短信、邮件 | 失败重试、模板审核、敏感信息脱敏 |
256
+ | 推送中心 | App Push | token 更新、前后台点击、厂商通道、失败率监控 |
257
+ | 埋点系统 | 数据分析 | 事件规范、参数、缓存、去重、隐私授权联动 |
258
+ | 风控系统 | 反作弊 / 安全 | 设备、IP、行为、金额、账号、策略、申诉 |
259
+ | 审计系统 | 后台和敏感操作 | 操作人、时间、对象、前后值、不可篡改 |
260
+ | 配置中心 | Feature Flag / Remote Config | 版本约束、灰度、默认值、签名、审计、回滚 |
261
+ | 灰度发布系统 | 分阶段上线 | 分设备、分地区、分渠道、暂停、回滚、告警联动 |
262
+
263
+ ---
264
+
265
+ ## 3. iOS 专项规范
266
+
267
+ ### 3.1 iOS UI 与设备适配
268
+
269
+ #### 目标
270
+
271
+ 确保 iOS 页面在不同尺寸、刘海屏、Dynamic Island、Home Indicator、iPad、横竖屏、深色模式、系统字体放大、多语言长文本、键盘弹起等场景中不遮挡、不截断、不误触。
272
+
273
+ #### 检查项
274
+
275
+ | 分类 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
276
+ |---|---|---|---|---|---|
277
+ | Safe Area | 核心标题、按钮、输入框、Toast、弹窗不被刘海、状态栏、Home Indicator 遮挡 | iPhone SE、标准屏、Pro / Pro Max、Dynamic Island 机型真机或模拟器 | 半自动 + 人工 | Critical | 所有核心操作可见可点 |
278
+ | 刘海 / Dynamic Island | 顶部搜索、导航、全屏媒体、地图、相机不重叠 | 真机横竖屏验证 | 人工 | Critical | 顶部内容避让正确 |
279
+ | Home Indicator | 底部 Tab、提交按钮、ActionSheet 不被遮挡 | 真机验证 | 半自动 | Critical | 底部操作无遮挡 |
280
+ | 键盘遮挡 | 输入框、验证码按钮、提交按钮、错误提示不被键盘遮挡 | 登录、注册、表单、支付密码页 | UI 自动化 + 人工 | Critical | 键盘弹起后仍可完成流程 |
281
+ | 横竖屏 | 页面布局、全屏视频、地图、相机、图片预览适配 | 旋转测试 | 人工 | Major / Critical | 内容不丢失,状态可恢复 |
282
+ | iPad | 如果声明支持 iPad,不得简单拉伸失真 | iPad 模拟器 / 真机 | 人工 | Major | 布局可读可操作 |
283
+ | 深色模式 | 文本、图标、背景、阴影、输入框、弹窗对比度 | 系统切换 + 截图对比 | 半自动 | Major | 无看不清、错色 |
284
+ | 系统字体放大 | 长文本、多语言、按钮、表单不截断 | 动态字体最大档 | 半自动 | Major | 核心文案可读 |
285
+ | 多语言长文本 | 英文、中文、长语言、RTL(若支持) | 文案快照 | 半自动 | Major | 不溢出、不重叠 |
286
+ | 全屏场景 | 视频、地图、相机、图片预览、沉浸式页面 | 真机验证 | 人工 | Critical | 系统边界处理正确 |
287
+
288
+ #### 验收写法
289
+
290
+ ```md
291
+ 所有 iOS 页面必须使用 Safe Area 进行布局,不允许核心操作按钮、标题、输入框、Toast、弹窗按钮被刘海、Dynamic Island、状态栏、Home Indicator、键盘遮挡。
292
+
293
+ 覆盖设备:
294
+ - iPhone SE 小屏
295
+ - iPhone 标准屏
296
+ - iPhone Pro / Pro Max
297
+ - 带 Dynamic Island 的机型
298
+ - 横竖屏切换
299
+ - 深色模式
300
+ - 系统字体放大
301
+ - 多语言长文本
302
+ ```
303
+
304
+ ### 3.2 iOS 系统能力
305
+
306
+ | 系统能力 | 风险说明 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
307
+ |---|---|---|---|---|---|---|
308
+ | Push Notification | 权限、前后台、锁屏、点击跳转、token 更新失败会影响通知 | 允许、拒绝、锁屏、前台、后台、免打扰、token 刷新 | 半自动 + 真机 | Critical | 通知可达、跳转正确、不泄露敏感内容 |
309
+ | Live Activities | 适合实时状态,不应塞广告或普通消息 | 状态更新、过期、取消、异常、锁屏展示 | 人工 | Major / Critical | 状态准确,敏感信息可控 |
310
+ | Widget | 退出登录、账号切换、锁屏展示可能泄露数据 | 未登录、退出、切账号、刷新失败 | 半自动 | Critical | 敏感信息不残留 |
311
+ | Share Extension | 可能越权上传文件或绕过登录 | 登录态、文件类型、权限、失败兜底 | 人工 | Critical | 只能访问授权数据 |
312
+ | Notification Service Extension | 修改通知内容可能泄露或失败 | 解密、图片、超时、失败回退 | 人工 | Major | 失败不影响主通知 |
313
+ | Notification Content Extension | 自定义通知 UI 可能展示敏感数据 | 锁屏、前后台、权限关闭 | 人工 | Major | UI 正确且脱敏 |
314
+ | App Clip | token、支付、主 App 数据边界 | 独立登录、权限、支付、跳主 App | 人工 | Critical | 不误用主 App token |
315
+ | Siri / App Intents | 外部入口可能越权触发操作 | 未登录、权限、参数校验 | 人工 | Major / Critical | 只执行授权动作 |
316
+ | Spotlight | 搜索索引可能泄露敏感内容 | 退出登录、账号切换、搜索结果 | 人工 | Critical | 敏感内容不被索引或可清理 |
317
+ | Apple Watch | 同步、退出、隐私展示 | Watch 同步、退出、通知 | 人工 | Major | 数据一致,退出清理 |
318
+ | CarPlay | 驾驶安全、功能限制 | 仅适合导航/音频等场景 | 人工 | Critical | 符合场景和审核要求 |
319
+ | visionOS | 适配和隐私边界 | 若支持需专项 | 人工 | 待确认 | 待确认 |
320
+
321
+ ### 3.3 iOS 权限与隐私
322
+
323
+ #### 权限治理原则
324
+
325
+ - 不得在 App 启动时一次性索要无关权限。
326
+ - 权限必须在用户触发相关功能时申请。
327
+ - 权限弹窗前应有清晰解释文案。
328
+ - 用户拒绝、永久拒绝或去设置关闭后,App 应优雅降级。
329
+ - 权限用途、隐私政策、App Store 隐私标签、SDK 数据采集必须一致。
330
+
331
+ | 权限 / 能力 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
332
+ |---|---|---|---|---|---|
333
+ | 相机 | 用途说明、拒绝后兜底、拍照失败 | 首次允许、拒绝、设置关闭 | 半自动 | Critical | 无崩溃,有替代路径 |
334
+ | 相册 | 选择范围、全量访问、拒绝后兜底 | 只选部分、取消、设置关闭 | 半自动 | Critical | 不超范围读取 |
335
+ | 定位 | 精确/模糊、后台定位、关闭定位服务 | 前台、后台、关闭定位服务 | 人工 | Critical | 权限和用途一致 |
336
+ | 麦克风 | 录音、语音、视频 | 拒绝、切后台、权限关闭 | 人工 | Major / Critical | 不泄露、不崩溃 |
337
+ | 通知 | 允许/拒绝/关闭/锁屏展示 | 前台、后台、锁屏、免打扰 | 半自动 | Major | 可降级,内容脱敏 |
338
+ | 蓝牙 | 设备连接、权限说明 | 连接、断开、拒绝 | 人工 | Major | 不阻塞非相关功能 |
339
+ | 通讯录 | 极高风险,必须证明核心必要性 | 拒绝、最小化读取、导入确认 | 人工 | Critical | 不默认上传,不滥用 |
340
+ | ATT / IDFA | 广告归因、跨 App 跟踪 | 授权、拒绝、文案、SDK 行为 | 人工 + 合规审查 | Critical | 未授权不跟踪 |
341
+ | Keychain | 存储 token、密钥、小型敏感数据 | 安全审计、重装、退出登录 | 安全测试 | Critical | 敏感数据不明文 |
342
+ | Privacy Manifest | Required Reason API、第三方 SDK 隐私清单 | 构建审计 | 半自动 | Critical | 清单完整 |
343
+ | 截图 / 录屏 / 最近任务 | 敏感页面泄露 | 支付、隐私、证件、聊天页 | 人工 | Critical | 敏感场景遮罩或脱敏 |
344
+
345
+ ### 3.4 iOS 支付与审核
346
+
347
+ | 项目 | 风险说明 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
348
+ |---|---|---|---|---|---|---|
349
+ | IAP | 数字内容、数字权益、虚拟币、订阅通常高风险 | 商品配置、沙箱、恢复购买、退款、订阅状态 | 半自动 + 沙箱 | Critical / Blocker | 数字权益规则正确 |
350
+ | Apple Pay | 实物商品、线下服务通常可走 | 金额、币种、回调、退款 | 半自动 | Critical | 服务端对账正确 |
351
+ | 实物商品支付 | 不应误用 IAP | 商品类型、支付通道、审核备注 | 合规审查 | Critical | 支付规则清楚 |
352
+ | 数字权益支付 | 可能触发 IAP | 会员、虚拟币、AI 次数包、课程 | 合规审查 | Critical | 规则待确认并执行 |
353
+ | 订阅 | 续费、取消、恢复购买、价格展示、试用 | 沙箱订阅周期、宽限期、取消 | 半自动 | Critical | 权益发放/回收正确 |
354
+ | 审核账号 / Demo Mode | 审核员无法访问会拒审 | 账号、权限、后端、样例数据 | 人工 | Critical | 审核全流程可访问 |
355
+ | App Review Notes | 非显而易见功能、权限、支付说明 | 提交前审查 | 人工 | Major / Critical | 审核材料完整 |
356
+ | App Store 隐私标签 | 数据采集和标签不一致 | 数据清单、SDK、H5、埋点 | 合规审查 | Critical | 与实际一致 |
357
+ | 元数据一致性 | 截图、标题、功能、价格、订阅不一致 | 商店页审查 | 人工 | Major / Critical | 不误导 |
358
+ | 生产包纯净 | 测试入口、占位页面、空链接、假功能 | 构建审计 + 冒烟 | 半自动 | Blocker | 无测试残留 |
359
+
360
+ ---
361
+
362
+ ## 4. Android 专项规范
363
+
364
+ ### 4.1 Android 系统版本与设备差异
365
+
366
+ #### 目标
367
+
368
+ 明确 minSdk、targetSdk、compileSdk、系统版本矩阵、设备矩阵和分发渠道要求。Android 不应只测一台手机,而应覆盖小屏、主流屏、大屏、折叠屏、平板、厂商 ROM、系统导航、权限、后台限制、targetSdk 行为变化。
369
+
370
+ #### 检查项
371
+
372
+ | 项目 | 风险说明 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
373
+ |---|---|---|---|---|---|---|
374
+ | minSdk / targetSdk | targetSdk 影响权限、后台、商店可更新 | minSdk、targetSdk、compileSdk、Play 要求 | 构建审计 | 高 | Critical | 符合当前分发要求 |
375
+ | Android 12 / 13 / 14 / 15 / 16 | 系统行为差异 | 权限、通知、后台、返回、Edge-to-edge | 真机/模拟器矩阵 | 中 | Critical | 核心流程全通过 |
376
+ | Display Cutout | 挖孔 / 刘海遮挡 | WindowInsets、safe insets、横屏 | 真机/模拟器 | 中 | Critical | 核心内容无遮挡 |
377
+ | WindowInsets / Edge-to-edge | target SDK 35 后更易绘制到系统栏下方 | 状态栏、导航栏、cutout、键盘 | UI 自动化 + 人工 | 中 | Critical | insets 处理正确 |
378
+ | Android 15 edge-to-edge | 非浮动窗口边界变化 | 每页系统栏避让 | 真机 | 中 | Critical | 不被系统栏遮挡 |
379
+ | Android 16 行为变化 | Job、Intent、安全、返回、16KB 等 | 见下方专项 | 专项测试 | 中 | Critical | 目标系统通过 |
380
+ | Predictive Back | 返回动画和状态恢复风险 | 手势返回、三键返回、长按返回、WebView 返回 | 人工 + 自动化 | 中 | Major / Critical | 返回状态正确 |
381
+ | Intent redirection | 任意跳转 / 越权 | nested Intent、目标包名、Deep Link 参数 | 安全测试 | 中 | Critical | 外部输入被校验 |
382
+ | Foreground Service | 类型声明、用户感知、Play 声明 | 类型、权限、通知、声明、视频证明 | 人工 | Critical | 符合政策和功能必要性 |
383
+ | Exact Alarm | 特殊权限和必要性 | 场景、降级、设置关闭 | 人工 | Major / Critical | 只在必要场景使用 |
384
+ | WorkManager / JobScheduler / DownloadManager | 后台任务被 quota / Doze / standby 影响 | 停止原因、重试、断点续传 | 专项 | Critical | 任务可恢复不重复 |
385
+ | 16KB page size | native .so 不兼容可能导致启动失败 | 所有 .so、第三方 SDK、Flutter/Unity/RN | 构建 + 真机 | Critical | 支持 16KB page size |
386
+ | App Standby Bucket / Doze | 后台任务、推送、同步被限制 | rare / restricted、低电量、后台 | 专项 | Major / Critical | 降级可解释 |
387
+
388
+ ### 4.2 Android 设备适配
389
+
390
+ | 设备 / 场景 | 检查项 | 测试方法 | 阻断级别 | 通过标准 |
391
+ |---|---|---|---|---|
392
+ | 小屏低端机 | 布局、性能、内存、启动、图片列表 | 真机 | Critical | 无崩溃、不卡死、核心可用 |
393
+ | 主流中端机 | 核心回归、权限、推送、支付 | 真机 | Critical | 核心流程通过 |
394
+ | 高刷旗舰机 | 高刷、动画、耗电、GPU、图片/视频 | 真机 | Major | 无明显卡顿 |
395
+ | 大屏 / 平板 | 响应式布局、分栏、横屏 | 真机/模拟器 | Major / Critical | 不简单拉伸,不截断 |
396
+ | 折叠屏 | 展开/折叠、窗口尺寸变化、状态恢复 | 真机/模拟器 | Critical | 状态不丢失 |
397
+ | ChromeOS | 窗口化、键鼠、尺寸变化 | 若支持则测 | Major | 交互可用 |
398
+ | Wear OS / Android Auto / TV | 仅适用声明支持时 | 专项 | 待确认 | 符合对应质量指南 |
399
+ | 横竖屏 | 页面状态、列表、表单、媒体 | 自动化 + 人工 | Major | 旋转无错乱 |
400
+ | 分屏 / 多窗口 | 尺寸变化、键盘、返回 | 人工 | Major | 可用且状态正确 |
401
+ | 手势导航 / 三键导航 | 底部导航栏、返回行为 | 真机 | Critical | 不遮挡、不误返回 |
402
+ | 深色模式 | 对比度、图标、背景 | 截图对比 | Major | 无看不清 |
403
+ | 字体放大 | 文本、按钮、表单 | 系统设置 | Major | 核心文案可读 |
404
+ | 厂商 ROM | MIUI / HyperOS、ColorOS、OriginOS、HarmonyOS 兼容机、Samsung、Pixel | 设备矩阵 | Critical | 权限、推送、后台、WebView 可用 |
405
+
406
+ ### 4.3 Android 权限
407
+
408
+ #### 权限测试矩阵
409
+
410
+ 每个危险权限和特殊权限都必须覆盖:
411
+
412
+ - 首次允许
413
+ - 首次拒绝
414
+ - 拒绝后再次触发
415
+ - 永久拒绝 / 不再询问
416
+ - 去设置页手动开启
417
+ - 去设置页手动关闭
418
+ - 权限关闭后的功能降级
419
+ - App 重启后的权限状态
420
+ - 权限弹窗前解释文案
421
+ - 是否与核心功能相关
422
+ - 是否存在过度索权
423
+
424
+ | 权限 | 重点风险 | 阻断级别 | 通过标准 |
425
+ |---|---|---|---|
426
+ | 通知权限 | 拒绝后消息不可达,但不能影响非通知功能 | Major | 可降级,有站内信或提示 |
427
+ | 定位权限 | 精确/模糊、后台定位、关闭定位服务 | Critical | 与用途一致,关闭后不崩溃 |
428
+ | 相机 | 扫码、拍照、头像、上传 | Critical | 拒绝后有替代入口 |
429
+ | 相册 / 媒体 | Android 13+ 图片/视频权限、Photo Picker 替代 | Critical | 不超范围读取 |
430
+ | 麦克风 | 录音、语音、视频 | Major / Critical | 拒绝后流程可退出 |
431
+ | 蓝牙 | 设备连接、扫描 | Major | 权限说明清楚 |
432
+ | 联系人 | 高隐私风险 | Critical | 必须核心必要并显著披露 |
433
+ | 后台定位 | 极高风险 | Critical / Blocker | 只在必要场景,用户明确感知 |
434
+ | 精确闹钟 | 特殊权限 | Major / Critical | 只在核心场景使用 |
435
+ | 前台服务权限 | 类型、声明、通知、用户影响说明 | Critical | 类型准确、不可滥用 |
436
+ | QUERY_ALL_PACKAGES / MANAGE_EXTERNAL_STORAGE | 高限制权限 | Critical / Blocker | 只在核心功能且有声明 |
437
+
438
+ ### 4.4 Android 生态与分发
439
+
440
+ | 渠道 | 风险说明 | 检查项 | 自动化可行性 | 阻断级别 |
441
+ |---|---|---|---|---|
442
+ | Google Play | target API、Data Safety、Billing、权限、FGS、账号删除 | Play Console 表单、审核材料、AAB | 半自动 | Critical |
443
+ | 国内安卓市场 | 隐私合规扫描、权限、加固、渠道包、素材 | 华为、小米、OPPO、vivo、应用宝、荣耀、三星 | 人工 | Critical |
444
+ | APK 官网下载 | 签名、更新机制、恶意替换、开发者验证 | 下载页、签名校验、Hash、升级 | 半自动 | Critical |
445
+ | 企业 MDM | 企业证书、设备策略、私有分发 | 证书、用户范围、回收 | 人工 | Major / Critical |
446
+ | 多渠道包 | 渠道号、支付、推送、地图 key、埋点 | Build Manifest | 高 | Critical |
447
+ | 厂商推送 | token、通道、到达率、后台限制 | 各 ROM 真机 | 半自动 | Major / Critical |
448
+ | 后台保活 / 自启动 | 厂商差异,不能依赖强保活 | 降级、用户提示 | 人工 | Major |
449
+ | 非商店分发 / Sideload | 开发者身份验证、安装链路拦截、用户信任 | 目标地区验证 | 人工 | Critical / 待确认 |
450
+
451
+ ---
452
+
453
+ ## 5. H5 / WebView / Hybrid / 微信小程序专项
454
+
455
+ ### 5.1 H5 / PC Web
456
+
457
+ | 项目 | 风险说明 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
458
+ |---|---|---|---|---|---|---|
459
+ | 响应式布局 | 手机、平板、PC、WebView 尺寸不一致 | 断点、长文本、横屏、键盘 | 自动截图 + 人工 | Major | 无遮挡截断 |
460
+ | SEO | 面向搜索流量时影响获客 | title、description、结构化数据 | 自动化 | Minor / Major | 关键页可收录 |
461
+ | 微信浏览器 | 支付、分享、登录、WebView 差异 | 微信内打开 | 人工 | Major | 登录支付分享正常 |
462
+ | 支付宝浏览器 | 支付回跳、登录、权限 | 支付宝内打开 | 人工 | Major | 回跳稳定 |
463
+ | 第三方登录 | OAuth 回跳、state 校验 | 登录流程 | 自动化 + 人工 | Critical | 防 CSRF,回跳正确 |
464
+ | 分享卡片 | 标题、图、链接、权限 | 多平台分享 | 人工 | Minor / Major | 卡片准确 |
465
+ | 支付安全 | URL 参数、金额、订单、回调 | 安全测试 | 中 | Blocker | 不信任前端金额 |
466
+ | 埋点一致性 | H5 / App / 小程序漏斗不一致 | 埋点校验 | 半自动 | Major | 事件和参数一致 |
467
+ | 多端状态一致性 | H5 下单、App 查看、后台处理 | 跨端回归 | 半自动 | Critical | 状态实时或最终一致 |
468
+
469
+ ### 5.2 WebView / Hybrid
470
+
471
+ | 项目 | 风险说明 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
472
+ |---|---|---|---|---|---|---|
473
+ | WebView 白屏 | H5、DNS、证书、缓存、JS 错误导致页面不可用 | 白屏监控、超时、错误页 | 自动化 + 监控 | Critical | 可监控、可兜底 |
474
+ | H5 加载失败 | 用户无法继续流程 | 错误页、重试、刷新、离线提示 | 自动化 | Major / Critical | 失败可恢复 |
475
+ | JSBridge 白名单 | H5 调用敏感 Native 能力 | 方法白名单、来源白名单 | 安全测试 | Critical | 未授权 H5 不可调用 |
476
+ | JSBridge 参数校验 | 参数可被篡改 | 类型、范围、签名、权限 | 安全测试 | Critical | 所有参数校验 |
477
+ | 任意 URL 跳转 | 钓鱼、绕过审核、恶意链接 | 域名白名单、外链提示 | 安全测试 | Critical | 不加载不可信内容 |
478
+ | 任意 Scheme 跳转 | 越权、拉起外部 App、Intent 攻击 | Scheme 白名单、参数校验 | 安全测试 | Critical | 不可任意跳转 |
479
+ | token 泄露 | token 放 URL、日志、Referer | 抓包、日志审计 | 安全测试 | Blocker | token 不进 URL / 日志 |
480
+ | Cookie 跨账号污染 | 账号 A/B 数据串号 | 切账号、退出登录、清缓存 | 自动化 + 人工 | Blocker | 退出后清理 |
481
+ | WebView 缓存 | 旧页面、敏感数据残留 | 清缓存、版本更新 | 人工 | Major | 不残留敏感数据 |
482
+ | H5 / Native 版本兼容 | H5 新能力调用旧 Native 崩溃 | 能力协商、版本约束 | 自动化 | Critical | 旧版本可降级 |
483
+ | H5 支付回跳 | 支付完成后状态不一致 | 支付、取消、切后台、杀进程 | 人工 + 沙箱 | Critical | 服务端状态为准 |
484
+ | H5 深链跳 Native | 未登录、参数、错误链接 | Deep Link 测试 | 自动化 | Critical | 参数校验、兜底 |
485
+ | Data Safety 归属 | App 控制的 WebView 数据采集需纳入声明 | 数据流盘点 | 合规审查 | Critical | 与声明一致 |
486
+
487
+ ### 5.3 微信小程序
488
+
489
+ | 项目 | 风险说明 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
490
+ |---|---|---|---|---|---|---|
491
+ | 小程序类目 | 类目不符导致审核失败 | 类目、资质、业务范围 | 人工 | Critical | 类目和功能一致 |
492
+ | 微信支付 | 支付、退款、分账、回调 | 沙箱 / 生产小额 | 半自动 | Blocker | 回调对账正确 |
493
+ | 订阅消息 | 模板、触发、用户授权 | 允许/拒绝、到达率 | 半自动 | Major | 消息合规到达 |
494
+ | 小程序隐私弹窗 | 数据采集和隐私接口 | 隐私协议、授权、拒绝 | 人工 | Critical | 权限和声明一致 |
495
+ | 小程序审核 | 审核账号、页面、资质、截图 | 提审清单 | 人工 | Critical | 材料完整 |
496
+ | 客服消息 | 用户咨询、售后 | 入口、SLA、记录 | 人工 | Major | 可追踪 |
497
+ | 分享裂变合规 | 诱导分享、奖励、拉新 | 分享链路审查 | 人工 | Major / Critical | 不诱导违规 |
498
+ | 小程序直播 | 若有,内容、商品、主播资质 | 专项审核 | 人工 | Critical | 单独合规 |
499
+ | 订单一致性 | 小程序下单 App/后台可见 | 跨端测试 | 半自动 | Blocker | 状态一致 |
500
+ | 权限 | 定位、相册、手机号等 | 允许、拒绝、降级 | 半自动 | Critical | 拒绝不崩溃 |
501
+ | 版本发布与回滚 | 灰度、回退、审核版本 | 发布演练 | 人工 | Critical | 可回滚 |
502
+
503
+ ---
504
+
505
+ ## 6. UI、安全区域与交互规范
506
+
507
+ ### 6.1 通用 UI 风险
508
+
509
+ | 风险 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
510
+ |---|---|---|---|---|---|
511
+ | 状态栏遮挡 | 标题、搜索、顶部按钮 | 多机型截图 | 半自动 | Critical | 顶部无遮挡 |
512
+ | 刘海 / 灵动岛遮挡 | iOS 顶部核心内容 | Dynamic Island 机型 | 人工 | Critical | 核心内容避让 |
513
+ | Home Indicator / 导航栏遮挡 | 底部按钮、Tab、输入框 | iOS/Android 真机 | 半自动 | Critical | 可见可点 |
514
+ | 键盘遮挡 | 表单、验证码、评论、搜索 | 键盘弹起测试 | 半自动 | Critical | 能完成输入提交 |
515
+ | 弹窗 / Toast / ActionSheet | 位置、遮罩、按钮可见 | 截图对比 | 半自动 | Major | 无错位 |
516
+ | 横屏安全区域 | 横屏媒体、地图、表单 | 横竖切换 | 人工 | Major | 状态不丢失 |
517
+ | 全屏视频 / 地图 / 相机 | 沉浸式、系统栏、权限 | 真机 | 人工 | Critical | 不遮挡、不泄露 |
518
+ | Loading | 长时间加载、重复点击、取消 | 弱网测试 | 半自动 | Major | 有超时和取消 |
519
+ | 空状态 | 无数据、首次进入、筛选无结果 | 数据构造 | 自动化 | Minor / Major | 文案可理解 |
520
+ | 错误态 | 接口 500、业务错误、权限错误 | Mock | 自动化 | Major | 能指导用户 |
521
+ | 无网络 / 弱网态 | 断网、慢网、切网 | 网络工具 | 半自动 | Critical | 不白屏卡死 |
522
+ | 骨架屏 | 首屏体验、内容闪烁 | 截图 | 自动化 | Minor / Major | 不误导 |
523
+ | 长文本 / 多语言 | 按钮、标题、表格、卡片 | 文案扩展 | 半自动 | Major | 不截断核心信息 |
524
+ | 深色模式 | 文本对比、图标、图片 | 系统切换 | 半自动 | Major | 可读 |
525
+ | 字体放大 | 无障碍字体最大档 | 系统设置 | 半自动 | Major | 核心可读可点 |
526
+ | 表单错误提示 | 错误位置、内容、清除规则 | 表单自动化 | 自动化 | Major | 明确可修复 |
527
+ | 手势冲突 | 返回、滑动、Tab、地图、WebView | 人工 | 人工 | Major | 手势优先级明确 |
528
+ | 返回行为 | 手势返回、三键返回、弹窗返回、WebView 返回 | 状态机测试 | 半自动 | Major / Critical | 状态恢复正确 |
529
+
530
+ ### 6.2 交互通过标准
531
+
532
+ - 核心操作按钮在所有目标设备上可见、可点击、不会被系统 UI 或键盘遮挡。
533
+ - 弱网、失败、空数据、权限拒绝、未登录、账号异常均有可理解提示。
534
+ - 表单错误能准确定位字段,不依赖用户猜测。
535
+ - 返回动作不会导致数据丢失、重复提交或订单状态错乱。
536
+ - 用户不应因为系统权限、后台限制、切后台、锁屏而陷入无响应状态。
537
+
538
+ ---
539
+
540
+ ## 7. App 生命周期状态机
541
+
542
+ 移动端必须按状态机测试,而不是只按页面测试。系统、用户、网络、权限和外部事件随时会打断流程。
543
+
544
+ ### 7.1 生命周期测试矩阵
545
+
546
+ | 状态 / 打断 | 风险说明 | 必测流程 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
547
+ |---|---|---|---|---|---|---|
548
+ | 冷启动 | 首屏白屏、崩溃、初始化慢 | 启动、登录态恢复、首页 | 性能 + 真机 | 高 | Critical | 启动达标,无崩溃 |
549
+ | 热启动 | 状态恢复错误 | 切后台再打开 | 自动化 | 中 | Major | 页面和数据正确 |
550
+ | 后台恢复 | Token、页面、任务状态变化 | 支付、表单、上传 | 半自动 | Critical | 状态可恢复 |
551
+ | 被系统杀死后恢复 | 任务丢失、订单丢失 | 支付中、下单中、上传中 | 人工 | Critical | 服务端状态可修正 |
552
+ | 被用户手动杀死后重开 | 本地状态残留 | 登录、支付、草稿 | 人工 | Major / Critical | 可恢复或明确终止 |
553
+ | 锁屏 | 任务中断、通知泄露 | 支付、录音、下载、敏感页 | 人工 | Critical | 不泄露,状态正确 |
554
+ | 接电话 | 音频、视频、支付、录制中断 | 通话打断 | 人工 | Major | 可恢复或提示 |
555
+ | 切后台 | 支付 SDK、上传、倒计时 | 支付、验证码、表单 | 半自动 | Critical | 不重复、不丢失 |
556
+ | 收到推送 | 跳转覆盖当前流程 | 当前页面 + push | 人工 | Major / Critical | 跳转可控 |
557
+ | Wi-Fi 切 4G/5G | 请求失败、重试、重复 | 支付、下单、上传 | 网络工具 | Critical | 幂等正确 |
558
+ | 断网 / 弱网 | 卡死、重复提交 | 全核心流程 | 半自动 | Critical | 失败可恢复 |
559
+ | 低电量模式 | 后台任务、定位、同步降级 | 后台任务 | 人工 | Major | 降级可解释 |
560
+ | 存储空间不足 | 缓存、下载、上传、数据库写入失败 | 文件、图片、数据库 | 人工 | Critical | 不崩溃,提示清楚 |
561
+ | 系统语言变化 | 文案、布局、缓存 | 多语言 | 人工 | Major | 重启/刷新后正确 |
562
+ | 系统时间变化 | 订单过期、订阅、缓存 | 支付、优惠券、登录 | 人工 | Critical | 服务端时间为准 |
563
+ | 时区变化 | 预约、日历、订阅 | 时间相关功能 | 人工 | Major | 时间显示正确 |
564
+ | 深色模式变化 | 颜色、图片、状态 | 全页面 | 自动截图 | Major | 不错色 |
565
+ | 字体大小变化 | 布局、可读性 | 表单、商品、设置 | 自动截图 | Major | 核心可读 |
566
+ | 权限被关闭 | 功能崩溃 | 相机、定位、通知 | 半自动 | Critical | 降级 |
567
+ | 定位服务关闭 | 地图、配送、附近 | 定位相关 | 人工 | Critical | 不崩溃,提示设置 |
568
+
569
+ ### 7.2 支付流程状态机示例
570
+
571
+ ```md
572
+ 用户点击支付
573
+ -> 创建订单
574
+ -> 锁库存 / 锁权益
575
+ -> 调起支付 SDK
576
+ -> 用户切后台 / 锁屏 / 杀 App / 断网
577
+ -> 支付平台扣款成功或失败
578
+ -> 服务端接收回调并验签
579
+ -> 客户端轮询或重新进入订单页
580
+ -> 订单状态以服务端为准
581
+ -> 权益发放 / 回收 / 退款 / 对账
582
+ ```
583
+
584
+ 必测:
585
+
586
+ - 支付中切后台后支付成功,回到 App 后订单状态正确。
587
+ - 支付中杀 App 后支付成功,再打开 App 可通过服务端状态修正。
588
+ - 客户端显示失败但平台扣款成功,服务端回调最终修正订单。
589
+ - 连续点击支付 3 次不会创建多个有效支付单。
590
+ - 客户端篡改金额、商品 ID、订单 ID,服务端拦截。
591
+
592
+ ---
593
+
594
+ ## 8. 安装、升级、迁移与版本兼容
595
+
596
+ ### 8.1 安装升级
597
+
598
+ | 场景 | 风险说明 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
599
+ |---|---|---|---|---|---|---|
600
+ | 新装 | 初始化、权限、首次引导 | 首启、隐私、登录、首页 | 自动化 | Critical | 可完成核心流程 |
601
+ | 覆盖安装 | 数据保留、配置兼容 | 老包覆盖新包 | 半自动 | Critical | 不崩溃 |
602
+ | 老版本升级 | DB、缓存、token、接口兼容 | 1-3 个历史版本 | 半自动 | Critical | 数据不丢失 |
603
+ | 跨多个版本升级 | 长期未升级用户 | 最旧支持版本直升 | 人工/自动 | Critical | migration 可恢复 |
604
+ | 卸载重装 | 本地数据、Keychain、服务端状态 | 卸载重装 | 人工 | Major | 隐私和登录态符合预期 |
605
+ | iCloud Backup 恢复 | 敏感数据和 token 恢复风险 | iOS 备份恢复 | 人工 | Critical | 敏感数据不误恢复 |
606
+ | Android 备份恢复 | shared prefs / DB 恢复风险 | 备份恢复 | 人工 | Critical | 不串号 |
607
+ | 强制更新 | 老版本不可用时控制 | 弹窗、跳商店、失败兜底 | 人工 | Critical | 可远程控制 |
608
+ | 可选更新 | 非强制升级 | 提醒频率、跳转 | 人工 | Minor / Major | 不打扰 |
609
+ | 最低版本策略 | 旧 App 兼容窗口 | 远程配置、灰度 | 半自动 | Critical | 可控可回滚 |
610
+
611
+ ### 8.2 本地数据迁移
612
+
613
+ | 项目 | 风险说明 | 检查项 | 阻断级别 | 通过标准 |
614
+ |---|---|---|---|---|
615
+ | 数据库 migration | 失败导致崩溃或数据丢失 | 可重复执行、中断恢复、失败回滚 | Critical | 升级后数据完整 |
616
+ | 缓存结构变化 | 新字段缺失、旧缓存脏数据 | 兼容默认值、清理策略 | Major / Critical | 不崩溃 |
617
+ | Token 兼容 | token 格式、刷新策略变化 | 过期、刷新失败、退出 | Critical | 会话正确 |
618
+ | 本地配置兼容 | Remote Config 默认值变化 | 默认值、版本约束 | Critical | 配错不崩 |
619
+ | 多账号缓存隔离 | A/B 串数据 | 切账号、退出、重登 | Blocker | 不串号 |
620
+
621
+ ### 8.3 服务端兼容旧 App
622
+
623
+ 移动端不能假设用户会立刻升级。服务端必须长期兼容旧 App。
624
+
625
+ | 项目 | 检查项 | 测试方法 | 阻断级别 | 通过标准 |
626
+ |---|---|---|---|---|
627
+ | 老版本 App 调新服务端 | 登录、首页、核心接口 | 旧包回归 | Critical | 不崩溃,核心可用 |
628
+ | 新字段缺失 | 客户端默认值 | Mock 缺字段 | Critical | 不崩溃 |
629
+ | 老字段废弃 | 过渡期、兼容字段 | 接口契约测试 | Critical | 旧版本可用 |
630
+ | 接口版本窗口 | v1/v2 支持期限 | 版本表 | Major / Critical | 有最后支持日期 |
631
+ | Feature Flag | 不向旧 App 下发无法识别配置 | 版本约束测试 | Critical | 旧 App 不崩 |
632
+ | Remote Config | 默认值、签名、回滚 | 配错演练 | Critical | 可回滚 |
633
+ | 强制升级 | 远程控制、分版本、分渠道 | 演练 | Critical | 可控 |
634
+ | 废弃接口统计 | 老版本用户量 | 数据统计 | Major | 废弃前有数据 |
635
+
636
+ 版本兼容表模板:
637
+
638
+ | App Version | Server API Version | 是否支持 | 最后支持日期 | 强更策略 | 备注 |
639
+ |---|---|---|---|---|---|
640
+ | 1.0 | v1 | 支持 | 待确认 | 可选升级 | 只保留核心能力 |
641
+ | 1.1 | v1 / v2 | 支持 | 待确认 | 提醒升级 | 支持新字段降级 |
642
+ | 2.0 | v2 | 支持 | 长期 | 无 | 当前主版本 |
643
+
644
+ ---
645
+
646
+ ## 9. 权限、隐私与用户数据权利
647
+
648
+ ### 9.1 权限治理
649
+
650
+ 每个权限都必须建立权限卡片。
651
+
652
+ ```md
653
+ 权限名称:
654
+ 业务用途:
655
+ 是否核心功能必要:是 / 否 / 待确认
656
+ 触发时机:用户触发具体功能时,不应启动即请求
657
+ 权限前解释文案:
658
+ 拒绝后降级:
659
+ 永久拒绝后设置引导:
660
+ 设置页关闭后行为:
661
+ 是否写入隐私政策:
662
+ 是否写入 App Store 隐私标签 / Google Play Data Safety:
663
+ 涉及 SDK:
664
+ 阻断级别:
665
+ ```
666
+
667
+ 权限测试必须覆盖:首次允许、首次拒绝、永久拒绝、去设置页开启、去设置页关闭、App 重启后状态、权限关闭后的功能降级。
668
+
669
+ ### 9.2 隐私声明一致性
670
+
671
+ | 数据来源 | 检查项 | 风险说明 | 阻断级别 | 通过标准 |
672
+ |---|---|---|---|---|
673
+ | App 自身采集 | 账号、设备、位置、支付、行为 | 与隐私政策不一致会被拒审或投诉 | Critical / Blocker | 数据清单和声明一致 |
674
+ | App Store 隐私标签 | 数据类型、用途、追踪 | 自报不准确风险 | Critical | 和实际采集一致 |
675
+ | Google Play Data Safety | 采集、共享、用途、安全实践、删除 | SDK / WebView 也需纳入 | Critical | 表单完整准确 |
676
+ | 第三方 SDK | 设备 ID、广告 ID、位置、埋点 | “我没采集”不等于 SDK 没采集 | Critical | SDK Inventory 完整 |
677
+ | H5 / WebView | App 控制页面的数据采集 | 不能当成“只是网页”忽略 | Critical | 纳入声明 |
678
+ | 埋点 | 行为、用户 ID、设备 ID、session | 拒绝隐私授权后仍采集是高风险 | Critical | 授权联动 |
679
+ | 广告 / 归因 | IDFA / GAID、跨 App 跟踪 | ATT / 同意要求 | Critical | 未授权不跟踪 |
680
+ | AI 功能 | prompt、图片、语音、联系人、位置 | 训练授权、删除、脱敏 | Critical | 说明用途和保留 |
681
+
682
+ ### 9.3 用户数据权利
683
+
684
+ | 权利 / 流程 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
685
+ |---|---|---|---|---|---|
686
+ | 账号删除 | App 内路径、Web 链接、后台处理 | 端到端演练 | 半自动 | Critical | 用户可请求删除 |
687
+ | 数据删除 | 删除范围、保留例外、完成通知 | 工单 + 后台 | 人工 | Critical | 流程可追踪 |
688
+ | 数据保留 | 订单、发票、交易、法定义务 | 合规审查 | 人工 | Critical | 保留规则明确 |
689
+ | 撤回同意 | 隐私授权、营销、追踪 | 设置页 | 半自动 | Critical | 撤回后停止非必要采集 |
690
+ | 导出个人数据 | 范围、格式、安全校验 | 工单 | 人工 | Major / Critical | 只给本人 |
691
+ | 更正个人数据 | 用户资料、地址、宠物档案等 | 表单 + 后台 | 半自动 | Major | 修改可审计 |
692
+ | 手机号 / 邮箱释放 | 注销后是否可重用 | 业务规则 | 人工 | Major / Critical | 防账号接管 |
693
+ | 注销后订单 / 发票保留 | 隐私与财务冲突 | 合规审查 | 人工 | Critical | 明确说明 |
694
+ | 封禁账号注销 | 风控冻结、申诉、数据权利 | 规则审查 | 人工 | Critical | 不绕风控,不剥夺权利 |
695
+ | 客服处理能力 | 删除/导出/投诉工单 | 演练 | 人工 | Major / Critical | SLA 和审计完整 |
696
+
697
+ ---
698
+
699
+ ## 10. 第三方 SDK 与供应链治理
700
+
701
+ ### 10.1 SDK Inventory
702
+
703
+ 每个 SDK 必须登记:
704
+
705
+ | 字段 | 说明 |
706
+ |---|---|
707
+ | SDK 名称 | 官方名称,不用简称 |
708
+ | SDK 版本 | 精确版本号 |
709
+ | 引入原因 | 业务必要性 |
710
+ | 是否必要 | 必要 / 可替代 / 可移除 |
711
+ | 是否可替代 | 替代方案和成本 |
712
+ | 负责人 | 产品 / 研发 / 安全 / 合规 owner |
713
+ | 是否采集设备 ID | IMEI、Android ID、IDFV 等 |
714
+ | 是否采集广告 ID | IDFA / GAID |
715
+ | 是否采集位置 | 精确 / 模糊 / 后台 |
716
+ | 是否采集联系人 / 相册 / 相机 / 麦克风 | 权限与数据范围 |
717
+ | 是否上传崩溃日志 | 数据内容和脱敏 |
718
+ | 是否上传行为埋点 | 事件和参数 |
719
+ | 是否用于广告归因 | 是否触发 ATT / 广告声明 |
720
+ | 是否跨 App 跟踪 | 高风险 |
721
+ | 是否有 Privacy Manifest | iOS |
722
+ | 是否有 SDK 签名 | iOS 二进制依赖 |
723
+ | 是否进入 App Store 隐私标签 | 是 / 否 |
724
+ | 是否进入 Google Play Data Safety | 是 / 否 |
725
+ | 是否有已知漏洞 | CVE / 历史风险 |
726
+ | 是否影响包体积 | 体积增量 |
727
+ | 是否影响启动速度 | 初始化时机 |
728
+ | 是否支持当前 targetSdk / iOS 版本 | 兼容性 |
729
+ | 初始化失败降级 | 失败后 App 是否可用 |
730
+ | 数据收集变更审查 | SDK 升级时必须重审 |
731
+
732
+ ### 10.2 SDK 供应链风险
733
+
734
+ | 风险 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
735
+ |---|---|---|---|---|---|
736
+ | SDK 默认采集敏感数据 | 查看文档、抓包、权限、Data Safety | 隐私审查 + 动态测试 | 半自动 | Critical | 全部登记并披露 |
737
+ | SDK 有漏洞 | CVE、版本、依赖树 | SCA 扫描 | 高 | Critical | 无高危漏洞 |
738
+ | SDK 影响启动 | 初始化耗时 | 启动性能测试 | 自动化 | Major / Critical | 不阻塞首屏 |
739
+ | SDK 影响包体积 | 体积分析 | 构建报告 | 高 | Major | 体积可接受 |
740
+ | SDK 不支持 targetSdk | 构建 / 运行异常 | 兼容测试 | 自动化 | Critical | 目标 SDK 可用 |
741
+ | SDK 过期或停服 | 维护状态 | 台账审查 | 人工 | Major / Critical | 有替代计划 |
742
+ | SDK 初始化失败 | 崩溃或核心不可用 | 故障注入 | 半自动 | Critical | 可降级 |
743
+ | SDK 数据变更 | 升级后多采集数据 | 升级审查 | 人工 | Critical | 隐私声明同步更新 |
744
+
745
+ ---
746
+
747
+ ## 11. 构建产物审计
748
+
749
+ ### 11.1 Build Manifest
750
+
751
+ 每个版本必须产出 Build Manifest,并进入发布证据。
752
+
753
+ | 字段 | 要求 |
754
+ |---|---|
755
+ | App 名称 | 与商店和包一致 |
756
+ | versionName / versionCode | Android 必填 |
757
+ | CFBundleShortVersionString / Build | iOS 必填 |
758
+ | build number | CI 唯一编号 |
759
+ | git commit | 精确 commit hash |
760
+ | branch | 发布分支 |
761
+ | build time | 构建时间 |
762
+ | build machine | CI runner / 本地禁止生产构建,若允许需记录 |
763
+ | 构建人 | CI 账号 / 操作人 |
764
+ | 环境 | dev / staging / prod |
765
+ | API base URL | 必须为生产地址 |
766
+ | WebSocket URL | 必须为生产地址 |
767
+ | CDN URL | 必须为生产地址 |
768
+ | 支付环境 | sandbox / production,生产包必须 production |
769
+ | 推送环境 | sandbox / production,生产包必须 production |
770
+ | 埋点环境 | 生产 / 测试隔离 |
771
+ | 崩溃上报环境 | 生产上报可用 |
772
+ | Feature Flag 默认值 | 可审计 |
773
+ | Remote Config 默认值 | 可审计 |
774
+ | 是否开启 debug log | 生产关闭 |
775
+ | 是否开启 mock | 生产关闭 |
776
+ | 是否开启测试入口 | 生产关闭 |
777
+ | 是否开启抓包代理 | 生产关闭 |
778
+ | mapping / dSYM | 上传状态和链接 |
779
+ | SDK 清单 | 版本和隐私变更 |
780
+ | 权限清单 | 本次权限变化 |
781
+ | 证书 / 签名 | Bundle ID / packageName / keystore / profile |
782
+
783
+ ### 11.2 生产包必须禁止
784
+
785
+ - 测试 API 进生产包。
786
+ - sandbox 支付进生产包。
787
+ - debug log 进生产包。
788
+ - mock 数据进生产包。
789
+ - 测试账号入口进生产包。
790
+ - 内部菜单进生产包。
791
+ - Charles / mitmproxy 调试信任证书进生产包。
792
+ - hardcoded token / secret / API key 进生产包。
793
+ - 临时白名单、跳过风控、跳过支付验签逻辑进生产包。
794
+ - 未上传 mapping / dSYM 就发布生产包。
795
+
796
+ ### 11.3 构建产物验收
797
+
798
+ | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
799
+ |---|---|---|---|---|
800
+ | 环境地址 | 静态扫描 + 启动抓包 | 高 | Blocker | 生产包只连生产 |
801
+ | 签名 / 证书 | CI 校验 | 高 | Blocker | 可更新旧版本 |
802
+ | packageName / Bundle ID | 构建校验 | 高 | Blocker | 与商店一致 |
803
+ | Debug / mock | 静态扫描 | 高 | Blocker | 不存在 |
804
+ | SDK / 权限变化 | diff 报告 | 高 | Critical | 已审查 |
805
+ | mapping / dSYM | CI 检查 | 高 | Critical | 已上传 |
806
+ | ProGuard / R8 / minify | 构建配置 + 回归 | 高 | Critical | 开启且不误伤 |
807
+ | AAB / APK split | 安装测试 | 中 | Major | 各 split 正确 |
808
+ | 16KB page size | native 依赖检查 | 中 | Critical | 符合要求 |
809
+
810
+ ---
811
+
812
+ ## 12. 安全规范
813
+
814
+ ### 12.1 技术安全
815
+
816
+ | 安全项 | 风险说明 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
817
+ |---|---|---|---|---|---|---|
818
+ | Token 存储 | 明文 token 可被窃取 | Keychain / Keystore / 加密存储 | 静态 + 动态 | 中 | Blocker | token 不明文 |
819
+ | iOS Keychain | 小型敏感数据安全存储 | accessibility、退出清理 | 安全测试 | 中 | Critical | 访问控制正确 |
820
+ | Android Keystore | 密钥保护 | 硬件支持、失效处理 | 安全测试 | 中 | Critical | 私钥不导出 |
821
+ | 本地缓存加密 | SQLite / Realm / 文件缓存 | 敏感字段加密、退出清理 | 静态 + 动态 | 中 | Critical | 不可直接读出 |
822
+ | HTTPS / TLS | 明文传输、MITM | 禁 HTTP、证书校验 | 抓包 | 中 | Blocker | 不忽略 TLS 错误 |
823
+ | Certificate Pinning | 防 MITM,但需可轮换 | pin、备用 pin、过期策略 | 安全测试 | 中 | Major / Critical | 可安全轮换 |
824
+ | WebView 安全 | JSBridge、混合内容、不可信来源 | 白名单、禁 file access、禁调试 | 安全测试 | 中 | Critical | 不暴露敏感能力 |
825
+ | Deep Link / Universal Links / App Links | 越权、参数篡改、scheme 劫持 | 参数校验、登录回跳、兜底 | 安全测试 | 中 | Critical | 不越权 |
826
+ | Intent 安全 | Android 任意跳转 | component、package、nested Intent 校验 | 安全测试 | 中 | Critical | 外部输入可信化 |
827
+ | 日志脱敏 | token、手机号、地址、证件、支付信息泄露 | 日志扫描 | 高 | Critical | 生产无敏感日志 |
828
+ | 通知泄露 | 锁屏展示敏感内容 | 锁屏测试、脱敏 | 人工 | Critical | 敏感内容隐藏 |
829
+ | 截图 / 录屏 / 最近任务 | 敏感页被截屏 | 敏感页遮罩 | 人工 | Critical | 不泄露 |
830
+ | 剪贴板读取 | 非必要读取引发隐私风险 | 读取时机、用户触发 | 审查 | Major | 最小化 |
831
+ | 键盘缓存 | 密码 / 支付码缓存 | secure input | 人工 | Major | 不缓存敏感输入 |
832
+ | Root / Jailbreak 检测 | 风险信号,不可作为唯一安全措施 | 检测、降级、误伤 | 安全测试 | Major / Critical | 服务端仍校验 |
833
+ | Hook / Frida / Xposed | 调试篡改 | 运行时检测 | 安全测试 | Major / Critical | 高风险拦截或加权 |
834
+ | 二次打包检测 | 恶意重打包 | 签名校验、完整性 | 安全测试 | Critical | 篡改不可用 |
835
+ | Play Integrity / DeviceCheck / App Attest | 设备可信度信号 | 服务端验证 | 安全测试 | Critical for high risk | 只作风控信号 |
836
+
837
+ ### 12.2 OWASP MASVS / MASTG 维度
838
+
839
+ | MASVS 域 | 要求 | 对应检查 |
840
+ |---|---|---|
841
+ | Storage | 安全存储敏感数据,防止数据泄露 | Keychain、Keystore、缓存加密、备份排除、日志脱敏 |
842
+ | Cryptography | 正确使用加密和密钥管理 | 密钥生成、存储、算法、随机数、轮换 |
843
+ | Authentication and Authorization | 认证和授权机制安全 | token、刷新、踢下线、越权、会话生命周期 |
844
+ | Network Communication | 网络通信安全 | HTTPS、TLS、证书校验、Pinning、禁止明文 |
845
+ | Platform Interaction | 平台交互安全 | WebView、IPC、Intent、Deep Link、通知、截图 |
846
+ | Code Quality | 输入校验、依赖安全、代码健壮性 | SAST、SCA、反序列化、注入、错误处理 |
847
+ | Resilience | 抗逆向、抗篡改、运行时防护 | Root、Hook、二次打包、调试检测 |
848
+ | Privacy | 数据最小化、披露、用户权利 | 权限、隐私政策、Data Safety、SDK、删除导出 |
849
+
850
+ ### 12.3 业务安全与黑灰产
851
+
852
+ | 业务风险 | 攻击方式 | 防护检查 | 自动化可行性 | 阻断级别 |
853
+ |---|---|---|---|---|
854
+ | 刷注册 | 短信、邮箱、代理 IP、模拟器 | 验证码限流、设备风控、IP 风控 | 中 | Critical |
855
+ | 刷验证码 | 短信轰炸、成本攻击 | 频控、图形验证、风险评分 | 高 | Critical |
856
+ | 撞库 | 批量登录 | 登录限速、密码策略、异常告警 | 高 | Critical |
857
+ | 多设备刷注册 | 改设备号、多开 | 设备可信、行为分析 | 中 | Critical |
858
+ | 刷优惠券 / 邀请 | 多账号薅羊毛 | 账号、设备、支付、地址聚类 | 中 | Critical |
859
+ | 刷单 | 商家/用户勾结 | 订单行为、物流、评价、支付 | 中 | Critical |
860
+ | 退款套利 | 退款后权益不回收 | 权益状态机、对账 | 高 | Critical |
861
+ | 机器人内容 | 发帖、评论、私信 | 内容频控、验证码、审核 | 中 | Critical |
862
+ | 私信诈骗 | 引流、钓鱼、色情赌博 | 关键词、链接、举报、封禁 | 中 | Critical |
863
+ | 虚假评价 | 水军、刷评、好评返现 | 真实购买、异常行为、风控 | 中 | Major / Critical |
864
+ | 商家刷单 | 平台交易作弊 | 商家风控、物流、结算冻结 | 中 | Critical |
865
+ | 设备指纹绕过 | 模拟器、改机、Hook | 多信号风控 | 中 | Major / Critical |
866
+ | 风控冻结和申诉 | 误伤用户 | 冻结说明、申诉、人工复核 | 人工 | Critical |
867
+
868
+ ---
869
+
870
+ ## 13. 支付、订阅、订单与对账
871
+
872
+ ### 13.1 支付分类
873
+
874
+ | 类型 | 示例 | 支付规则风险 | 阻断级别 | 备注 |
875
+ |---|---|---|---|---|
876
+ | 实物商品支付 | 电商商品、外卖、票务、线下服务 | 通常不走 IAP / Play Billing,但需按平台规则确认 | Critical | 服务端校验金额 |
877
+ | 数字权益支付 | App 会员、虚拟币、AI 次数包、课程、内容 | 可能必须 IAP / Play Billing | Critical / Blocker | 必须合规确认 |
878
+ | Apple IAP | iOS 数字内容、订阅、虚拟权益 | 绕过可能拒审 | Critical | 恢复购买必测 |
879
+ | Google Play Billing | Play 分发数字内容和功能 | 绕过可能拒审 | Critical | 部分实物商品例外 |
880
+ | Apple Pay / Google Pay | 实物商品、线下服务 | 回调和对账 | Critical | 不等于 IAP / Billing |
881
+ | 微信支付 / 支付宝 | 中国区实物电商常见 | 回调验签、退款、对账 | Blocker | 服务端可信 |
882
+ | Stripe / PayPal | 海外实物 / 服务 | 税费、拒付、退款 | Critical | 需地区合规 |
883
+ | 订阅 | 试用、续费、取消、宽限期 | 权益状态复杂 | Critical | 订阅状态以平台/服务端为准 |
884
+
885
+ ### 13.2 支付测试矩阵
886
+
887
+ | 阶段 | 场景 | 风险 | 阻断级别 | 通过标准 |
888
+ |---|---|---|---|---|
889
+ | 下单 | 重复点击、金额变更、优惠券、库存、订单过期 | 多订单、错价、超卖 | Blocker | 服务端幂等和锁定正确 |
890
+ | 支付中 | 取消、超时、切后台、杀进程、断网、支付 SDK 失败 | 状态不一致 | Critical | 可恢复,以服务端为准 |
891
+ | 支付后 | 回调、轮询、订单状态同步 | 扣款成功但订单丢失 | Blocker | 最终一致 |
892
+ | 失败 | 余额不足、风控失败、渠道异常 | 提示和重试 | Major / Critical | 不重复扣款 |
893
+ | 退款 | 部分退款、全额退款、订阅取消、权益回收 | 权益未回收 | Critical | 账务一致 |
894
+ | 订阅 | 试用、续费、宽限期、升级、降级、恢复购买 | 错发权益 | Critical | 状态正确 |
895
+ | 风控 | 篡改金额、商品 ID、重放回调 | 资金损失 | Blocker | 服务端验签和校验 |
896
+ | 对账 | 客户端、服务端、支付平台状态一致 | 财务错误 | Critical | 每日对账闭环 |
897
+
898
+ ### 13.3 支付原则
899
+
900
+ - 客户端只展示结果,不能作为支付可信来源。
901
+ - 订单金额、商品 ID、优惠、库存、权益发放、支付回调验证必须在服务端完成。
902
+ - 所有支付回调必须验签、幂等、记录 transactionId、orderId、userId、渠道、金额、币种、时间。
903
+ - 客户端支付成功页面必须允许重新拉取服务端订单状态。
904
+ - 支付失败或回调延迟不得导致用户资金或权益丢失。
905
+ - 退款、订阅取消、恢复购买和权益回收必须可对账。
906
+
907
+ ---
908
+
909
+ ## 14. 数据同步、离线、弱网与一致性
910
+
911
+ | 场景 | 风险说明 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
912
+ |---|---|---|---|---|---|---|
913
+ | 弱网 | 请求慢、重试、重复提交 | 登录、支付、下单、上传 | 网络工具 | 中 | Critical | 不重复、不丢失 |
914
+ | 断网 | 页面卡死、无提示 | 断网进入、断网提交 | 半自动 | Major / Critical | 有无网络态 |
915
+ | 超时 | Loading 无限 | 超时阈值、取消、重试 | 自动化 | Major | 可恢复 |
916
+ | DNS 失败 | WebView / API 不可达 | DNS mock | 半自动 | Major | 有兜底 |
917
+ | 接口 500 | 脏数据、错误码 | Mock | 自动化 | Major / Critical | 不崩溃 |
918
+ | 重试 | 重复写入 | 幂等 key、指数退避 | 自动化 | Critical | 不重复产生业务结果 |
919
+ | 离线创建数据 | 草稿、购物车、表单、笔记 | 离线保存、联网同步 | 半自动 | Major / Critical | 不丢失 |
920
+ | 多端同时修改 | 冲突覆盖 | 冲突策略、版本号 | 人工 | Critical | 规则明确 |
921
+ | 时间冲突 | 本地时间不可信 | 服务端时间 | 自动化 | Critical | 服务端为准 |
922
+ | 上传失败保留草稿 | 数据丢失 | 草稿保存、恢复 | 自动化 | Major | 可继续 |
923
+ | 分页重复/丢失 | 数据错乱 | cursor、刷新、加载更多 | 自动化 | Major | 无重复丢失 |
924
+ | WebSocket + HTTP 重复 | 消息重复 | 去重 ID | 自动化 | Major / Critical | 不重复展示/处理 |
925
+ | 推送 + 本地缓存重复 | 通知和列表重复 | 消息 ID | 半自动 | Major | 去重 |
926
+ | 服务端删除后同步 | 本地仍显示 | 删除消息、缓存失效 | 自动化 | Critical | 删除一致 |
927
+ | 退出登录缓存清理 | 敏感信息残留 | 退出、重启、切账号 | 自动化 | Blocker | 不残留 |
928
+ | 多账号切换 | A 看到 B 数据 | A/B 账号交叉 | 自动化 | Blocker | 完全隔离 |
929
+
930
+ ---
931
+
932
+ ## 15. 后台任务与系统调度
933
+
934
+ | 场景 | 风险说明 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
935
+ |---|---|---|---|---|---|---|
936
+ | 上传任务 | 切后台、断网、杀进程中断 | 断点续传、失败重试、取消 | 半自动 | Critical | 可恢复不重复 |
937
+ | 下载任务 | 文件不完整、重复下载 | 校验、断点、取消 | 半自动 | Major / Critical | 文件完整 |
938
+ | 大文件断点续传 | 重新上传成本和失败 | 分片、校验、幂等 | 自动化 | Major | 失败可续传 |
939
+ | App 被杀后恢复 | 任务丢失 | WorkManager / Background modes | 人工 | Critical | 规则明确 |
940
+ | 低电量模式 | 任务延迟 | 降级策略 | 人工 | Major | 用户可理解 |
941
+ | Android Doze | 后台任务被推迟 | Doze 模式测试 | 人工 | Major | 不依赖即时任务 |
942
+ | App Standby Bucket | rare/restricted 下受限 | standby 测试 | 人工 | Major | 可降级 |
943
+ | WorkManager / JobScheduler | quota、停止原因 | getStopReason / 日志 | 半自动 | Critical | 可观测 |
944
+ | DownloadManager | 下载中断、权限 | 系统下载测试 | 半自动 | Major | 可恢复 |
945
+ | Foreground Service | 类型声明、通知、权限 | FGS 专项 | 人工 | Critical | 合规 |
946
+ | iOS Background Modes | 只申请必要能力 | 后台定位、音频、同步 | 人工 | Critical | 不滥用 |
947
+ | Background App Refresh | 关闭后降级 | 设置关闭 | 人工 | Major | 不影响核心 |
948
+ | 后台定位 | 高隐私风险 | 用户感知、停止、权限 | 人工 | Critical | 明确提示 |
949
+ | 任务重复执行 | 重复扣款/下单/发消息 | 幂等和锁 | 自动化 | Blocker | 不重复业务效果 |
950
+
951
+ ---
952
+
953
+ ## 16. 发布治理、灰度、回滚与动态配置
954
+
955
+ ### 16.1 发布治理
956
+
957
+ | 能力 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
958
+ |---|---|---|---|---|---|
959
+ | Feature Flag | 功能开关、版本、地区、渠道、用户分组 | 灰度演练 | 高 | Critical | 可控可回滚 |
960
+ | Remote Config | 默认值、签名、版本约束、审计 | 配错演练 | 高 | Critical | 配错不崩 |
961
+ | Kill Switch | 高风险功能紧急关闭 | 演练 | 高 | Blocker | 分钟级生效,待确认 SLA |
962
+ | 灰度发布 | 分批、暂停、指标门槛 | 发布演练 | 中 | Critical | 可暂停可回滚 |
963
+ | 分渠道发布 | App Store、Google Play、国内市场、APK | 渠道包校验 | 中 | Critical | 配置正确 |
964
+ | 最低版本控制 | 旧版本策略 | 远程配置 | 中 | Critical | 可控 |
965
+ | 强制升级 | 不可用旧版本处理 | 弹窗和跳转 | 人工 | Critical | 不阻塞审核 |
966
+ | 服务端兼容旧版本 | 接口兼容 | 旧包回归 | 中 | Critical | 旧版核心可用 |
967
+ | 崩溃率异常暂停灰度 | 自动告警联动 | 演练 | 中 | Critical | 自动或人工暂停 |
968
+ | 支付失败率异常关入口 | 支付保护 | 演练 | 中 | Critical | 不扩大事故 |
969
+ | 新功能远程降级 | 高风险功能可关 | 演练 | 中 | Critical | 关闭后主流程可用 |
970
+
971
+ ### 16.2 动态下发治理
972
+
973
+ | 动态能力 | 风险说明 | 检查项 | 阻断级别 | 通过标准 |
974
+ |---|---|---|---|---|
975
+ | 热更新 | 绕过审核、下发核心逻辑 | 签名、灰度、回滚、审计 | Critical | 不绕审核、不下发支付/安全核心逻辑 |
976
+ | 远程 JS / Lua / DSL | 动态执行风险 | 来源、签名、权限、沙箱 | Critical | 可审计可回滚 |
977
+ | 动态插件 | 安全和合规风险 | 插件签名、版本、权限 | Critical | 不加载未审查插件 |
978
+ | 远程 UI 配置 | 错配导致崩溃/误导 | 默认值、校验、回滚 | Major / Critical | 配错不崩 |
979
+ | 动态下发支付逻辑 | 极高风险 | 禁止或专项评审 | Blocker | 不允许无审计下发 |
980
+ | 动态下发风控逻辑 | 误杀/绕过 | 审计、灰度、回滚 | Critical | 可追踪 |
981
+
982
+ 原则:远程配置可以控制开关和文案;不能无审计地下发新的核心业务能力、支付能力、安全策略或绕审核能力。
983
+
984
+ ---
985
+
986
+ ## 17. 可观测性、日志、告警与 Runbook
987
+
988
+ ### 17.1 技术指标
989
+
990
+ | 指标 | 说明 | 阈值 | 阻断级别 | 备注 |
991
+ |---|---|---|---|---|
992
+ | 崩溃率 | App crash / session 或 user | 待确认 | Critical | 上线前设灰度门槛 |
993
+ | ANR 率 | Android 卡死 | 待确认 | Critical | 低端机重点 |
994
+ | 冷启动耗时 | 首屏可交互 | 待确认 | Major / Critical | 按机型分层 |
995
+ | 热启动耗时 | 后台恢复 | 待确认 | Major | |
996
+ | 页面打开耗时 | 核心页面 P95/P99 | 待确认 | Major | 首页、详情、支付 |
997
+ | 接口成功率 | API 成功率 | 待确认 | Critical | 核心接口单独看 |
998
+ | 接口 P95 / P99 | 服务端性能 | 待确认 | Major / Critical | |
999
+ | 图片加载失败率 | 图片/CDN | 待确认 | Major | 电商/内容重要 |
1000
+ | WebView 加载失败率 | 白屏/超时 | 待确认 | Critical | Hybrid 重点 |
1001
+ | 推送到达率 | token、厂商、APNs/FCM | 待确认 | Major | 召回/交易通知 Critical |
1002
+ | 支付成功率 | 支付流程整体 | 待确认 | Critical | 渠道分维度 |
1003
+ | 支付状态不一致率 | 客户端/服务端/平台不一致 | 接近 0 | Blocker | 必须对账 |
1004
+ | 首页白屏率 | 首屏不可用 | 待确认 | Critical | |
1005
+
1006
+ ### 17.2 日志要求
1007
+
1008
+ | 日志字段 | 要求 |
1009
+ |---|---|
1010
+ | requestId | 客户端和服务端可关联 |
1011
+ | userId | 脱敏或内部 ID,不输出手机号等 |
1012
+ | orderId | 交易流程必备 |
1013
+ | transactionId | 支付流程必备 |
1014
+ | 版本号 | versionName / build |
1015
+ | 设备型号 | model |
1016
+ | 系统版本 | iOS / Android 版本 |
1017
+ | 渠道号 | 分发渠道 |
1018
+ | 日志脱敏 | token、手机号、地址、身份证、支付信息不得明文 |
1019
+ | debug log | 生产关闭 |
1020
+ | 客户端和服务端关联 | requestId / traceId 贯通 |
1021
+
1022
+ ### 17.3 告警
1023
+
1024
+ | 告警 | 触发条件 | 处理动作 | 负责人 |
1025
+ |---|---|---|---|
1026
+ | 崩溃率异常 | 超阈值 / 灰度异常 | 暂停灰度、回滚、收集 dSYM/mapping | 移动端 + SRE |
1027
+ | ANR 异常 | 超阈值 | 降级、排查线程 | Android |
1028
+ | 支付失败率异常 | 渠道或总失败率异常 | 关闭入口、切渠道、通知客服 | 支付 + SRE |
1029
+ | 登录失败率异常 | OTP / 密码 / SSO | 降级或公告 | 认证团队 |
1030
+ | 首页白屏率异常 | 白屏率升高 | Kill Switch、回滚 | 前端/移动端 |
1031
+ | 推送点击异常 | 到达/点击骤降 | 检查 token、通道、模板 | 推送团队 |
1032
+ | WebView 白屏异常 | H5 错误率升高 | 回滚 H5、切静态页 | H5 团队 |
1033
+ | 接口失败异常 | P95、错误率、500 | 降级、扩容、回滚 | 服务端 |
1034
+
1035
+ ### 17.4 生产事故演练
1036
+
1037
+ 每个高风险功能要有监控指标、告警阈值、降级方案、回滚方案、负责人、恢复步骤、用户补偿方案。
1038
+
1039
+ | 事故 | 风险 | 演练动作 | 阻断级别 | 通过标准 |
1040
+ |---|---|---|---|---|
1041
+ | 登录接口挂了 | 用户无法进入 | 错误提示、公告、限流、回滚 | Critical | 用户不白屏,告警触发 |
1042
+ | 支付回调延迟 | 扣款未到账 | 订单待确认、轮询、客服入口 | Blocker | 不丢单 |
1043
+ | 推送服务挂了 | 通知不可达 | 站内信、短信、轮询补偿 | Major / Critical | 关键消息有替代 |
1044
+ | 地图 SDK 挂了 | 定位/配送不可用 | 降级地址输入 | Major | 核心流程可继续 |
1045
+ | 图片 CDN 挂了 | 商品/内容白屏 | 占位图、备用 CDN | Major / Critical | 不阻塞交易 |
1046
+ | 远程配置配错 | 页面崩溃/入口异常 | 配置回滚、默认值 | Critical | 配错不崩 |
1047
+ | 服务端返回脏数据 | 客户端崩溃 | defensive parsing | Critical | 不崩溃 |
1048
+ | 第三方 SDK 初始化失败 | 启动失败 | 延迟初始化、降级 | Critical | 不阻塞启动 |
1049
+ | 新版本崩溃率异常 | 全量事故 | 暂停灰度、回滚 | Critical | 快速停止扩散 |
1050
+ | 商店审核被拒 | 上线延迟 | 材料修正、备用计划 | Major / Critical | 有责任人和 SLA |
1051
+
1052
+ ---
1053
+
1054
+ ## 18. 商店审核、元数据与分发渠道
1055
+
1056
+ | 项目 | 检查项 | 风险说明 | 阻断级别 | 通过标准 |
1057
+ |---|---|---|---|---|
1058
+ | App Store 审核 | 审核账号、demo mode、Notes、内购、隐私标签 | 拒审或延迟 | Critical | 审核员可完整访问 |
1059
+ | Google Play 审核 | Data Safety、Billing、target API、权限、账号删除 | 拒审/下架 | Critical | 表单准确 |
1060
+ | 国内安卓市场审核 | 隐私弹窗、权限、SDK、渠道包 | 拒审 | Critical | 扫描通过 |
1061
+ | 小程序审核 | 类目、资质、隐私、交易组件 | 拒审 | Critical | 材料完整 |
1062
+ | 隐私政策链接 | 可访问、内容准确 | 拒审 | Critical | 生产可访问 |
1063
+ | 客服联系方式 | 邮箱/电话/工单可用 | 投诉无法处理 | Major | 可联系 |
1064
+ | 年龄分级 | 内容、UGC、广告、儿童 | 合规风险 | Critical | 分类准确 |
1065
+ | App 名称 / 副标题 | 不夸大、不误导 | 元数据违规 | Major / Critical | 与功能一致 |
1066
+ | 截图 / 视频预览 | 不展示未上线功能 | 误导/拒审 | Major | 真实准确 |
1067
+ | 关键词 / 分类 | 不使用竞品误导 | 拒审/投诉 | Major | 合规 |
1068
+ | 订阅价格 / 促销文案 | 和 App 内一致 | 投诉/拒审 | Critical | 清楚准确 |
1069
+ | App 内购买项目命名 | 权益清晰 | 拒审/投诉 | Major | 用户可理解 |
1070
+ | 多渠道包配置 | 包名、签名、渠道号、支付、推送 | 功能失效 | Critical | Build Manifest 正确 |
1071
+ | 企业包 / MDM / TestFlight / APK | 证书、范围、版本、更新 | 分发风险 | Critical | 分发链路可控 |
1072
+
1073
+ ---
1074
+
1075
+ ## 19. 平台账号、主体、财务、税务与收款
1076
+
1077
+ ### 19.1 平台账号治理
1078
+
1079
+ | 项目 | 检查项 | 风险说明 | 阻断级别 | 通过标准 |
1080
+ |---|---|---|---|---|
1081
+ | Apple Developer 账号 | 公司主体、管理员、2FA、证书权限 | 唯一管理员失联/个人账号风险 | Critical | 公司可控,有备用管理员 |
1082
+ | Google Play Console | 账号主体、验证、发布权限、财务权限 | 被盗/被封/权限滥用 | Critical | 权限最小化 |
1083
+ | 公司主体 | App、收款、税务、合同一致 | 收款/转让/合规问题 | Critical | 主体明确 |
1084
+ | D-U-N-S / 税务信息 | Apple / Google 需要 | 审核/收款受阻 | Major / Critical | 完整准确 |
1085
+ | 收款账号 | 平台收入、支付渠道 | 财务风险 | Critical | 对公/授权账户 |
1086
+ | 权限治理 | Admin、发布、财务、证书 | 离职人员风险 | Critical | 定期审查 |
1087
+ | 应急方案 | 被盗、被封、2FA 丢失 | 无法发版 | Critical | 有备用管理员和恢复流程 |
1088
+
1089
+ ### 19.2 商业与财务合规
1090
+
1091
+ | 项目 | 检查项 | 风险说明 | 阻断级别 | 通过标准 |
1092
+ |---|---|---|---|---|
1093
+ | 收款主体 | Apple / Google / Stripe / PayPal / 微信 / 支付宝绑定主体 | 主体不一致 | Critical | 与运营主体一致或有授权 |
1094
+ | 税务信息 | VAT / GST / 消费税 / 本地税 | 税务风险 | Critical | 待确认目标市场 |
1095
+ | 发票 | 用户开票、企业开票 | 投诉/财务风险 | Major / Critical | 支持或说明 |
1096
+ | 退款凭证 | 退款记录、票据冲红 | 对账风险 | Critical | 可追溯 |
1097
+ | 对账 | 平台、支付、订单、财务 | 资金差异 | Critical | 日对账/月对账 |
1098
+ | 财务导出 | 订单、渠道费、税费、净收入 | 财务无法结算 | Major | 可导出 |
1099
+ | 平台抽成 / 渠道费 | Apple / Google / 支付渠道 | 利润计算错误 | Major | 规则明确 |
1100
+ | 订阅收入递延确认 | 若有订阅 | 财务确认 | Major / Critical | 待确认财务政策 |
1101
+
1102
+ ---
1103
+
1104
+ ## 20. 客服、投诉、申诉与运营后台
1105
+
1106
+ | 场景 | 后台能力 | 风险说明 | 阻断级别 | 通过标准 |
1107
+ |---|---|---|---|---|
1108
+ | 用户付款未到账 | 订单查询、支付状态、权益补发 | 用户损失 | Critical | 客服可定位和补偿 |
1109
+ | 订阅误扣费 | 订阅状态、退款指引 | 投诉 | Critical | 有流程 |
1110
+ | 退款失败 | 支付渠道、订单、退款单 | 财务不一致 | Critical | 可重试和追踪 |
1111
+ | 账号被盗 | 登录记录、设备、冻结 | 资产/隐私风险 | Critical | 可冻结和恢复 |
1112
+ | 内容被删申诉 | 内容记录、审核原因、申诉 | UGC 纠纷 | Major / Critical | 可复核 |
1113
+ | 用户被封禁申诉 | 风控理由、申诉、人工复核 | 误伤 | Critical | 可申诉 |
1114
+ | 举报他人 | 举报入口、证据、处理结果 | 社区治理 | Major | 可闭环 |
1115
+ | 删除数据 | 工单、身份验证、处理记录 | 隐私权利 | Critical | 可执行 |
1116
+ | 导出数据 | 安全验证、范围、格式 | 隐私风险 | Major / Critical | 只给本人 |
1117
+ | 隐私投诉 | 隐私专员、SLA、证据 | 合规风险 | Critical | 有责任链 |
1118
+ | 客服 SLA | 响应/解决时限 | 投诉升级 | Major | SLA 明确 |
1119
+ | 操作审计 | 客服/运营后台操作 | 内部滥用 | Critical | 不可篡改 |
1120
+ | 用户查询 | 用户资料、订单、设备、风控 | 定位问题 | Major | 可检索 |
1121
+ | 退款处理 | 全额/部分/原路退 | 资金 | Critical | 权限控制 |
1122
+ | 权益补发 | 会员、虚拟权益、订单 | 误发/漏发 | Critical | 审计 |
1123
+ | 推送补发 | 关键通知 | 召回/交易通知 | Major / Critical | 可补偿 |
1124
+ | 内容审核 | 机审、人审、举报 | 合规/社区 | Critical for UGC | 有后台 |
1125
+ | 黑名单 / 风控标记 | 账号、设备、IP | 反滥用 | Critical | 可申诉 |
1126
+
1127
+ ---
1128
+
1129
+ ## 21. AI 功能专项
1130
+
1131
+ AI 功能必须单独评估,不应当按普通文本输入或客服功能处理。
1132
+
1133
+ | 风险 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
1134
+ |---|---|---|---|---|---|
1135
+ | 上传敏感数据 | 图片、语音、位置、联系人、健康信息 | 数据流审查 | 人工 | Critical | 用户明确授权 |
1136
+ | 用于训练 | 是否默认用于模型训练 | 合规审查 | 人工 | Critical | 明示并可退出 |
1137
+ | 数据删除 | prompt/response 删除 | 端到端 | 人工 | Critical | 可执行 |
1138
+ | 内容安全过滤 | 违法、暴力、色情、诈骗、医疗误导 | 红队测试 | 半自动 | Critical | 高风险输出拦截 |
1139
+ | 提示词注入 | 越权读取系统提示或上下文 | 安全测试 | 中 | Critical | 不泄露上下文 |
1140
+ | 越权读取上下文 | 用户 A 读取 B 数据 | 安全测试 | 中 | Blocker | 不越权 |
1141
+ | 医疗/金融/法律建议 | 误导高风险建议 | Prompt 测试 | 人工 | Critical | 明确免责声明和限制 |
1142
+ | 免责声明 | AI 结果非专业建议 | 文案审查 | 人工 | Major / Critical | 清晰展示 |
1143
+ | 举报 AI 结果 | 用户反馈和处理 | 功能测试 | 自动化 | Major | 可举报 |
1144
+ | prompt/response 存储 | 脱敏、保留周期、访问控制 | 安全审查 | 人工 | Critical | 脱敏可控 |
1145
+ | AI 调用失败 | 模型不可用、超时、费用耗尽 | 故障注入 | 半自动 | Major / Critical | 可降级 |
1146
+ | AI 成本风控 | 刷接口、超额调用 | 限流、配额、风控 | 高 | Critical | 不失控 |
1147
+ | 模型输出可追溯 | 审计和复盘 | 日志脱敏 | 中 | Major | 可审计 |
1148
+
1149
+ ---
1150
+
1151
+ ## 22. 长期维护日历
1152
+
1153
+ ### 22.1 每月检查
1154
+
1155
+ | 项目 | 检查内容 | 负责人 | 证据 |
1156
+ |---|---|---|---|
1157
+ | 崩溃率 | 版本、机型、渠道、系统版本维度 | 移动端 / QA | 崩溃报告 |
1158
+ | ANR | Android ANR top case | Android | ANR 报告 |
1159
+ | 差评 | 商店差评、关键词、版本关联 | 运营 / 产品 | 差评分析 |
1160
+ | 退款 | 退款率、失败原因、渠道 | 财务 / 支付 | 对账报告 |
1161
+ | 投诉 | 隐私、支付、账号、内容、客服 | 客服 / 合规 | 工单报告 |
1162
+ | SDK 漏洞 | SCA、版本、公告 | 安全 / 移动端 | 扫描报告 |
1163
+ | 隐私政策 | 是否因功能/SDK/数据采集变化需更新 | 合规 | 审查记录 |
1164
+
1165
+ ### 22.2 每季度检查
1166
+
1167
+ | 项目 | 检查内容 | 负责人 |
1168
+ |---|---|---|
1169
+ | targetSdk 要求 | Google Play 当前要求、Android 新版本 | Android |
1170
+ | iOS 新版本适配 | 新系统 Beta / RC / 正式版 | iOS |
1171
+ | Android 新版本适配 | Android 16/17 行为变化、设备矩阵 | Android |
1172
+ | 支付 SDK 升级 | 微信、支付宝、Stripe、Billing、IAP | 支付 |
1173
+ | 推送 SDK 升级 | APNs、FCM、厂商推送 | 推送 |
1174
+ | 地图 SDK 升级 | 定位、地图、key | 移动端 |
1175
+ | 第三方登录 SDK | OAuth、Sign in with Apple、微信、Google | 认证 |
1176
+ | 证书 / 密钥过期 | APNs、OAuth、TLS、支付证书、域名 | SRE / 安全 |
1177
+ | 商店政策变化 | App Store / Google Play / 小程序 | 合规 / 产品 |
1178
+
1179
+ ### 22.3 每次发版检查
1180
+
1181
+ - SDK 清单。
1182
+ - 权限变化。
1183
+ - 数据采集变化。
1184
+ - 支付变化。
1185
+ - 后台任务变化。
1186
+ - 账号注销变化。
1187
+ - 商店元数据变化。
1188
+ - Build Manifest。
1189
+ - 灰度和回滚策略。
1190
+ - Release Gate 签字。
1191
+
1192
+ ---
1193
+
1194
+ ## 23. 通用 Release Gate
1195
+
1196
+ ### 23.1 Blocker:存在一个就不能上线
1197
+
1198
+ | Blocker | 说明 |
1199
+ |---|---|
1200
+ | 生产包连接测试环境 | API、支付、推送、埋点、CDN 任一关键环境错误 |
1201
+ | 支付金额可被客户端篡改 | 金额、商品 ID、权益由客户端可信决定 |
1202
+ | 支付成功订单丢失 | 扣款后订单/权益无法恢复 |
1203
+ | 用户 A 可看到用户 B 数据 | 订单、地址、宠物档案、聊天、缓存、通知等串号 |
1204
+ | Token 明文存储或泄露 | 本地、日志、URL、WebView、崩溃日志泄露 |
1205
+ | 隐私声明与实际采集严重不一致 | Data Safety、隐私标签、隐私政策不一致 |
1206
+ | App 启动即崩溃 | 主流设备或目标系统无法启动 |
1207
+ | 核心流程无法完成 | 注册、登录、支付、订单、核心业务失败 |
1208
+ | 线上无法回滚或关闭高风险功能 | 无 Kill Switch / 回滚 / 配置控制 |
1209
+ | 商店审核必需材料缺失 | 审核账号、隐私政策、内购配置、资质缺失 |
1210
+ | debug / mock / 测试入口进入生产包 | 测试残留进入生产 |
1211
+ | 敏感权限过度索取且无降级 | 启动即索权或拒绝后崩溃 |
1212
+ | 服务端不兼容当前仍有用户的旧 App | 旧版本大面积不可用 |
1213
+ | 严重安全越权 | Deep Link、接口、WebView、后台越权 |
1214
+
1215
+ ### 23.2 Critical:必须修复后才能全量
1216
+
1217
+ | Critical | 说明 |
1218
+ |---|---|
1219
+ | 崩溃率异常 | 灰度或测试中超阈值 |
1220
+ | 支付失败率异常 | 渠道或总支付成功率异常 |
1221
+ | 权限拒绝后核心流程无降级 | 拒绝定位/相机/通知后卡死 |
1222
+ | 日志泄露敏感信息 | token、手机号、地址、支付信息 |
1223
+ | SDK 数据采集未登记 | SDK Inventory 不完整 |
1224
+ | 旧版本兼容失败 | 有过渡方案前不得全量 |
1225
+ | 弱网导致重复下单或重复支付 | 幂等缺失 |
1226
+ | 主要设备适配严重异常 | 主流 iOS/Android 设备不可用 |
1227
+ | WebView 白屏无兜底 | Hybrid 主流程阻断 |
1228
+ | 远程配置配错会崩溃 | 无默认值或校验 |
1229
+ | 推送/短信关键通知失败无替代 | 交易、召回、安全通知缺失 |
1230
+
1231
+ ---
1232
+
1233
+ # 第二卷:宠物商城 App 行业专项案例
1234
+
1235
+ > 本卷是行业案例,不能替代第一卷的通用框架。宠物商城应先满足通用移动端生产可上线标准,再做本行业专项。
1236
+
1237
+ ## 24. 宠物商城业务范围与 MVP 边界
1238
+
1239
+ ### 24.1 宠物商城业务范围
1240
+
1241
+ 宠物商城不是普通商城。它是“电商 + 宠物食品/用品 + 健康/药品边界 + 活体/领养边界 + 服务预约 + 社区内容 + 仓储物流 + 平台治理”的组合体。
1242
+
1243
+ 可覆盖:
1244
+
1245
+ - 宠物用品。
1246
+ - 宠物食品。
1247
+ - 宠物消耗品。
1248
+ - 宠物营养品 / 保健品。
1249
+ - 宠物服务预约。
1250
+ - 宠物社区内容。
1251
+ - 宠物健康知识。
1252
+
1253
+ 不建议默认支持,需要单独合规评估和风控方案:
1254
+
1255
+ - 活体交易。
1256
+ - 处方兽药。
1257
+ - 疫苗。
1258
+ - AI 宠物诊断。
1259
+ - 宠物医院线上问诊。
1260
+ - 高风险寄养服务。
1261
+ - 直播带货。
1262
+
1263
+ ### 24.2 MVP 建议范围
1264
+
1265
+ 第一版建议做:
1266
+
1267
+ - 宠物用品。
1268
+ - 宠物食品。
1269
+ - 猫砂 / 尿垫 / 清洁类消耗品。
1270
+ - 基础宠物档案。
1271
+ - 复购提醒。
1272
+ - 普通售后。
1273
+ - 批次追溯。
1274
+ - 商家资质审核。
1275
+
1276
+ 第一版不建议做:
1277
+
1278
+ - 活体交易。
1279
+ - 处方兽药。
1280
+ - 疫苗。
1281
+ - AI 诊断。
1282
+ - 宠物医院问诊。
1283
+ - 复杂寄养服务。
1284
+ - 直播带货。
1285
+
1286
+ ### 24.3 业务边界验收
1287
+
1288
+ | 项目 | 风险说明 | 检查项 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
1289
+ |---|---|---|---|---|---|---|
1290
+ | 商品范围 | 高风险商品进入 MVP | 类目白名单、禁售库 | 商品审核测试 | 中 | Blocker | MVP 只允许白名单类目 |
1291
+ | 药品/医疗边界 | 保健品、驱虫、处方、疫苗风险 | 功效词、资质、人工审核 | 人工 | Critical / Blocker | 高风险默认不上线 |
1292
+ | 活体交易 | 动物福利、资质、纠纷、运输 | 禁售/单独系统 | 人工 | Blocker | MVP 不做 |
1293
+ | 服务预约 | 责任、保险、证据 | 服务者资质、协议 | 人工 | Critical | 非 MVP 或专项 |
1294
+ | 社区/直播 | 内容审核和广告风险 | UGC 审核、举报 | 人工 | Critical | 非 MVP 或限制 |
1295
+
1296
+ ---
1297
+
1298
+ ## 25. 宠物商城平台范围
1299
+
1300
+ ### 25.1 C 端
1301
+
1302
+ - iOS App。
1303
+ - Android App。
1304
+ - H5。
1305
+ - 微信小程序。
1306
+ - PC Web,可选。
1307
+
1308
+ ### 25.2 B 端
1309
+
1310
+ - 商家后台。
1311
+ - 供应商后台。
1312
+ - 仓库 / WMS。
1313
+ - 客服后台。
1314
+ - 运营后台。
1315
+ - 财务后台。
1316
+ - 内容审核后台。
1317
+ - 风控后台。
1318
+
1319
+ ### 25.3 服务端
1320
+
1321
+ ```md
1322
+ pet-mall/
1323
+ apps/
1324
+ ios-app/
1325
+ android-app/
1326
+ h5/
1327
+ wechat-mini-program/
1328
+ merchant-web/
1329
+ admin-web/
1330
+ warehouse-web/
1331
+ customer-service-web/
1332
+
1333
+ services/
1334
+ user-service/
1335
+ pet-profile-service/
1336
+ product-service/
1337
+ inventory-service/
1338
+ pricing-service/
1339
+ promotion-service/
1340
+ cart-service/
1341
+ order-service/
1342
+ payment-service/
1343
+ fulfillment-service/
1344
+ aftersale-service/
1345
+ review-service/
1346
+ content-service/
1347
+ notification-service/
1348
+ risk-service/
1349
+ audit-service/
1350
+ analytics-service/
1351
+ ```
1352
+
1353
+ 宠物商城比普通商城多一个核心域:`pet-profile-service`,即宠物档案。它会影响推荐、复购、适用性、隐私、健康提醒、过敏风险和售后纠纷。
1354
+
1355
+ ---
1356
+
1357
+ ## 26. 宠物商城商品类目风险分级
1358
+
1359
+ | 类型 | 例子 | 风险等级 | 是否建议 MVP | 风险说明 | 审核要求 | 测试重点 | 阻断级别 |
1360
+ |---|---|---:|---|---|---|---|---|
1361
+ | 普通宠物用品 | 玩具、牵引绳、猫砂盆、梳子、笼子、衣服 | 低 | 是 | 尺寸、材质、误吞、伤害风险 | 普通商品审核、材质说明 | 规格、图片、库存、售后 | Major |
1362
+ | 宠物消耗品 | 猫砂、尿垫、清洁湿巾、除臭剂 | 中 | 是 | 刺激性、重量、破损、物流 | 成分、规格、储存、物流 | 大件/重货运费、破损售后 | Major / Critical |
1363
+ | 宠物食品 | 主粮、罐头、冻干、零食、奶粉 | 高 | 是,但必须做批次追溯 | 保质期、批次、适用阶段、质量问题 | 标签、成分、保质期、批次、供应商 | 临期、过期、召回、FEFO | Critical / Blocker |
1364
+ | 宠物营养品 / 保健品 | 益生菌、鱼油、维生素、关节营养 | 高 | 谨慎 | 功效夸大、医疗边界 | 功效词审核、资质、免责声明 | 高风险词、推荐约束 | Critical |
1365
+ | 驱虫 / 药品边界商品 | 体外驱虫、耳螨、皮肤喷剂 | 很高 | 不建议 MVP | 可能涉及兽药资质和医疗承诺 | 资质、处方、限售、地区规则 | 禁售库、人工审核 | Blocker / Critical |
1366
+ | 处方兽药 / 疫苗 | 处方药、疫苗、抗生素、麻醉类 | 极高 | 不建议 | 强监管、高责任 | 单独合规系统 | 默认拦截 | Blocker |
1367
+ | 活体宠物 | 猫、狗、兔、鸟、鱼、爬宠 | 极高 | 不建议 | 动物福利、检疫、运输、纠纷 | 单独资质、检疫、责任协议 | 默认禁售 | Blocker |
1368
+ | 宠物服务 | 洗护、美容、寄养、上门喂养、训犬 | 高 | 谨慎 | 服务者资质、宠物受伤、丢失 | 门店/人员资质、保险、协议 | 预约、核销、纠纷证据 | Critical |
1369
+ | 宠物医疗服务 | 问诊、医院预约、体检、疫苗提醒 | 极高 | 不建议默认 | 医疗合规、误诊、处方 | 医疗资质、免责声明 | 边界限制 | Blocker / Critical |
1370
+ | 宠物社区内容 | 晒宠、种草、测评、直播 | 中高 | 谨慎 | UGC、虚假宣传、虐宠、引流 | 内容审核、举报、达人披露 | 审核、风控、举报 | Critical |
1371
+
1372
+ ---
1373
+
1374
+ ## 27. 禁售 / 限售商品库
1375
+
1376
+ ### 27.1 默认禁售
1377
+
1378
+ - 处方兽药。
1379
+ - 疫苗。
1380
+ - 麻醉药。
1381
+ - 抗生素类兽药。
1382
+ - 无资质驱虫药。
1383
+ - 三无宠物食品。
1384
+ - 假冒品牌粮。
1385
+ - 无授权进口粮。
1386
+ - 未标注成分的宠物零食。
1387
+ - 夸大治疗功效的保健品。
1388
+ - 野生保护动物及制品。
1389
+ - 活体猫狗交易,建议不做或单独合规系统。
1390
+ - 危险训练器具。
1391
+ - 可能伤害宠物的电击项圈等高争议商品。
1392
+
1393
+ ### 27.2 禁售库验收
1394
+
1395
+ | 检查项 | 风险说明 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
1396
+ |---|---|---|---|---|---|
1397
+ | 禁售商品上架 | 平台售卖高风险非法/违规商品 | 构造商品提交 | 自动化 + 人工 | Blocker | 禁售类目无法上架 |
1398
+ | 高风险词规避 | 商家用谐音、图片、变体绕过 | 关键词 + OCR + 人工 | 半自动 | Critical | 命中审核 |
1399
+ | 限售商品无资质售卖 | 商家资质缺失 | 资质匹配测试 | 半自动 | Blocker | 无资质不可售 |
1400
+ | 禁售库维护 | 法规/政策变化未更新 | 定期审查 | 人工 | Critical | 有 owner 和更新时间 |
1401
+ | 历史商品处理 | 新规则下历史商品仍可售 | 扫描历史商品 | 自动化 | Critical | 自动下架或审核 |
1402
+
1403
+ ---
1404
+
1405
+ ## 28. 宠物商城商品字段模型
1406
+
1407
+ ### 28.1 基础字段
1408
+
1409
+ | 字段 | 是否必填 | 说明 |
1410
+ |---|---|---|
1411
+ | 商品名称 | 是 | 不得包含禁售/夸大词 |
1412
+ | 品牌 | 是 | 品牌授权校验 |
1413
+ | 类目 | 是 | 决定资质和审核规则 |
1414
+ | 适用宠物 | 是 | 猫/狗/兔/鸟/鱼/爬宠等 |
1415
+ | 适用年龄 | 是 | 幼年/成年/老年等 |
1416
+ | 规格 | 是 | 重量、尺寸、数量 |
1417
+ | 保质期 | 食品必填 | 天数或日期 |
1418
+ | 生产日期 | 食品批次必填 | 可关联批次 |
1419
+ | 批次号 | 食品必填 | 召回和追溯必须 |
1420
+ | 产地 | 是 | 国产/进口 |
1421
+ | 供应商 | 是 | 追责和召回 |
1422
+ | 授权证明 | 视品牌 | 防假货 |
1423
+ | 检测报告 | 食品/保健品 | 待确认要求 |
1424
+ | 标签图片 | 食品/保健品 | OCR 审核 |
1425
+ | 外包装图片 | 是 | 证据和审核 |
1426
+ | 条码 | 建议 | 商品识别 |
1427
+ | 储存条件 | 食品/消耗品 | 常温、避光、防潮、冷链 |
1428
+
1429
+ ### 28.2 宠物食品字段
1430
+
1431
+ - 原料组成。
1432
+ - 营养成分。
1433
+ - 添加剂。
1434
+ - 喂食建议。
1435
+ - 适用阶段。
1436
+ - 是否进口。
1437
+ - 是否临期。
1438
+ - 是否冷链。
1439
+ - 是否需要召回追踪。
1440
+
1441
+ ### 28.3 保健 / 医药边界字段
1442
+
1443
+ - 是否涉及治疗功效。
1444
+ - 是否涉及疾病名称。
1445
+ - 是否涉及驱虫、抗菌、消炎、止痛等表述。
1446
+ - 是否需要资质。
1447
+ - 是否需要处方。
1448
+ - 是否允许平台销售。
1449
+
1450
+ ### 28.4 示例数据模型
1451
+
1452
+ ```json
1453
+ {
1454
+ "sku_id": "sku_123",
1455
+ "species": ["cat"],
1456
+ "age_stage": ["kitten", "adult"],
1457
+ "food_type": "dry_food",
1458
+ "ingredients": ["salmon", "rice"],
1459
+ "allergen_tags": ["fish"],
1460
+ "shelf_life_days": 540,
1461
+ "storage_condition": "dry_cool_place",
1462
+ "batch_required": true,
1463
+ "medical_claim_risk": false
1464
+ }
1465
+ ```
1466
+
1467
+ ---
1468
+
1469
+ ## 29. 商品审核流程与高风险词库
1470
+
1471
+ ### 29.1 审核流程
1472
+
1473
+ ```md
1474
+ 商家提交商品
1475
+ -> 类目识别
1476
+ -> 禁售词检查
1477
+ -> 功效词检查
1478
+ -> 图片 OCR
1479
+ -> 标签完整性检查
1480
+ -> 品牌授权检查
1481
+ -> 资质匹配
1482
+ -> 风险分级
1483
+ -> 人工审核
1484
+ -> 上架
1485
+ -> 抽检
1486
+ -> 投诉联动
1487
+ -> 下架 / 召回
1488
+ ```
1489
+
1490
+ ### 29.2 高风险词库
1491
+
1492
+ - 治疗。
1493
+ - 根治。
1494
+ - 消炎。
1495
+ - 抗菌。
1496
+ - 杀虫。
1497
+ - 驱虫。
1498
+ - 耳螨。
1499
+ - 皮肤病。
1500
+ - 猫瘟。
1501
+ - 犬瘟。
1502
+ - 细小。
1503
+ - 疫苗。
1504
+ - 处方。
1505
+ - 医生推荐。
1506
+ - 兽医专用。
1507
+ - 药效。
1508
+ - 无副作用。
1509
+ - 100% 有效。
1510
+
1511
+ ### 29.3 图片审核
1512
+
1513
+ - 商品主图 OCR。
1514
+ - 详情图 OCR。
1515
+ - 包装标签 OCR。
1516
+ - 品牌 Logo 检测。
1517
+ - 医疗功效词检测。
1518
+ - 虚假授权标识检测。
1519
+ - 宠物虐待 / 不当展示检测。
1520
+
1521
+ ### 29.4 审核验收
1522
+
1523
+ | 检查项 | 风险说明 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
1524
+ |---|---|---|---|---|---|
1525
+ | 文本违规词 | 直接违规 | 构造商品名/详情 | 自动化 | Critical | 命中审核 |
1526
+ | 图片违规词 | 图片规避文字审查 | OCR 样本 | 半自动 | Critical | 命中人工复核 |
1527
+ | 类目误选 | 逃避资质 | 类目识别和人工复核 | 半自动 | Critical | 高风险类目不漏 |
1528
+ | 品牌授权 | 假冒品牌 | 授权链路校验 | 人工 | Critical | 无授权不可上架 |
1529
+ | 资质匹配 | 商家资质不覆盖类目 | 提交商品测试 | 自动化 | Blocker | 无资质不可售 |
1530
+ | 审核后改详情 | 上架后加违规词 | 变更触发复审 | 自动化 | Critical | 关键字段改动复审 |
1531
+ | 投诉联动 | 违规商品继续卖 | 投诉后冻结/复审 | 半自动 | Critical | 高风险投诉联动下架 |
1532
+
1533
+ ---
1534
+
1535
+ ## 30. 商家入驻与资质审核
1536
+
1537
+ ### 30.1 基础资质
1538
+
1539
+ - 营业执照。
1540
+ - 法人信息。
1541
+ - 店铺名称。
1542
+ - 联系方式。
1543
+ - 经营范围。
1544
+ - 对公账户。
1545
+ - 品牌授权。
1546
+ - 商标授权。
1547
+ - 质检报告。
1548
+ - 进口商品证明。
1549
+ - 仓储地址。
1550
+ - 发货地址。
1551
+ - 售后地址。
1552
+
1553
+ ### 30.2 类目资质
1554
+
1555
+ - 宠物食品销售资质。
1556
+ - 品牌授权链路。
1557
+ - 进口报关 / 检疫材料,按实际业务和地区判断。
1558
+ - 宠物服务人员资质。
1559
+ - 宠物医疗相关资质,若涉及。
1560
+
1561
+ ### 30.3 资质生命周期
1562
+
1563
+ - 入驻审核。
1564
+ - 类目审核。
1565
+ - 商品审核。
1566
+ - 资质过期提醒。
1567
+ - 资质过期自动限制上架。
1568
+ - 资质变更重新审核。
1569
+ - 风险商家冻结。
1570
+ - 商品抽检。
1571
+ - 售后投诉联动降权。
1572
+ - 虚假资质黑名单。
1573
+
1574
+ ### 30.4 资质过期处理
1575
+
1576
+ - 不能新上架。
1577
+ - 不能改价格继续卖。
1578
+ - 高风险类目应自动下架。
1579
+ - 已付款未发货订单进入人工审核。
1580
+
1581
+ ### 30.5 验收表
1582
+
1583
+ | 检查项 | 风险说明 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
1584
+ |---|---|---|---|---|---|
1585
+ | 假资质提交 | 虚假商家入驻 | 上传伪造/过期材料 | 人工 | Critical | 不通过 |
1586
+ | 类目资质缺失 | 无资质卖食品/保健品 | 商家提交高风险商品 | 自动化 | Blocker | 不可上架 |
1587
+ | 资质过期 | 到期后继续售卖 | 设置资质到期 | 自动化 | Blocker | 自动限制 |
1588
+ | 资质变更 | 替换主体或授权 | 变更触发复审 | 半自动 | Critical | 未复审不可继续 |
1589
+ | 投诉联动 | 高投诉商家继续卖 | 投诉样本 | 半自动 | Critical | 降权/冻结 |
1590
+ | 历史责任 | 商家改名逃避责任 | 历史订单追踪 | 人工 | Critical | 责任链保留 |
1591
+
1592
+ ---
1593
+
1594
+ ## 31. 宠物档案与推荐系统
1595
+
1596
+ ### 31.1 宠物档案字段
1597
+
1598
+ - 宠物类型:猫 / 狗 / 兔 / 鸟 / 鱼 / 爬宠。
1599
+ - 年龄:幼年 / 成年 / 老年。
1600
+ - 体重。
1601
+ - 品种。
1602
+ - 性别。
1603
+ - 是否绝育。
1604
+ - 过敏信息。
1605
+ - 疾病史。
1606
+ - 饮食偏好。
1607
+ - 已购主粮。
1608
+ - 疫苗 / 驱虫提醒。
1609
+
1610
+ 示例:
1611
+
1612
+ ```json
1613
+ {
1614
+ "pet_id": "pet_123",
1615
+ "owner_user_id": "user_123",
1616
+ "species": "cat",
1617
+ "breed": "British Shorthair",
1618
+ "birth_date": "2023-05-01",
1619
+ "age_stage": "adult",
1620
+ "weight_kg": 4.8,
1621
+ "gender": "female",
1622
+ "neutered": true,
1623
+ "allergens": ["chicken"],
1624
+ "health_notes": ["sensitive stomach"],
1625
+ "food_preferences": ["grain-free"],
1626
+ "created_at": "...",
1627
+ "updated_at": "..."
1628
+ }
1629
+ ```
1630
+
1631
+ ### 31.2 推荐系统硬约束
1632
+
1633
+ 禁止推荐:
1634
+
1635
+ - 不适用当前宠物物种的商品。
1636
+ - 不适用年龄阶段的食品。
1637
+ - 用户标记过敏原相关食品。
1638
+ - 用户已投诉过的品牌。
1639
+ - 已下架 / 召回 / 临期异常商品。
1640
+ - 高风险保健品给未确认适用宠物。
1641
+ - 医疗功效类商品通过算法暗示治疗。
1642
+
1643
+ ### 31.3 隐私风险
1644
+
1645
+ - 多账号切换串宠物数据。
1646
+ - 退出登录后宠物档案残留。
1647
+ - 推荐系统采集过多行为数据。
1648
+ - 宠物健康信息是否属于敏感数据,待确认目标市场规则。
1649
+ - 隐私政策是否说明宠物档案用途。
1650
+
1651
+ ### 31.4 验收表
1652
+
1653
+ | 检查项 | 风险说明 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
1654
+ |---|---|---|---|---|---|
1655
+ | 猫推荐狗粮 | 商品适用性错误 | 宠物档案 + 推荐样本 | 自动化 | Critical | 不推荐不适用商品 |
1656
+ | 过敏推荐 | 伤害宠物风险 | 设置过敏原 | 自动化 | Critical | 过滤过敏原 |
1657
+ | 已召回商品推荐 | 严重风险 | 召回商品进入推荐池 | 自动化 | Blocker | 不出现 |
1658
+ | 多账号串数据 | 隐私泄露 | A/B 切换 | 自动化 | Blocker | 完全隔离 |
1659
+ | 退出后残留 | Widget / 缓存 / 推荐残留 | 退出重启 | 半自动 | Critical | 清理敏感数据 |
1660
+ | 推荐采集声明 | 隐私不一致 | 数据流审查 | 人工 | Critical | 声明一致 |
1661
+
1662
+ ---
1663
+
1664
+ ## 32. 库存、批次、保质期与仓储
1665
+
1666
+ ### 32.1 库存模型
1667
+
1668
+ - SKU 库存。
1669
+ - 批次库存。
1670
+ - 仓库库存。
1671
+ - 可售库存。
1672
+ - 锁定库存。
1673
+ - 退货库存。
1674
+ - 临期库存。
1675
+ - 召回库存。
1676
+ - 破损库存。
1677
+ - 冻结库存。
1678
+
1679
+ ### 32.2 批次追溯
1680
+
1681
+ 订单必须能关联:
1682
+
1683
+ - batch_no。
1684
+ - production_date。
1685
+ - expiry_date。
1686
+ - warehouse_id。
1687
+ - supplier_id。
1688
+ - inbound_record_id。
1689
+ - outbound_record_id。
1690
+
1691
+ ### 32.3 临期规则示例
1692
+
1693
+ | 距离过期 | 规则 |
1694
+ |---|---|
1695
+ | 180 天以上 | 正常售卖 |
1696
+ | 90 天内 | 标记临期 |
1697
+ | 60 天内 | 显著提示 |
1698
+ | 30 天内 | 禁止普通售卖,只能特殊处理,待确认业务规则 |
1699
+ | 已过期 | 禁止售卖,自动冻结库存 |
1700
+
1701
+ ### 32.4 FEFO
1702
+
1703
+ 食品类应使用 FEFO(First Expired, First Out,先到期先出库),不应只使用 FIFO。
1704
+
1705
+ ### 32.5 验收表
1706
+
1707
+ | 检查项 | 风险说明 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
1708
+ |---|---|---|---|---|---|
1709
+ | 过期批次可售 | 严重合规和安全风险 | 构造过期批次 | 自动化 | Blocker | 自动冻结不可售 |
1710
+ | 临期无提示 | 用户投诉和质量风险 | 构造临期 | 自动化 | Critical | 显著提示 |
1711
+ | 批次无法追溯 | 召回失败 | 订单关联检查 | 自动化 | Blocker | 每个食品订单有批次 |
1712
+ | FEFO 失效 | 后到期先发导致临期积压 | 出库规则测试 | 自动化 | Critical | 先到期先出 |
1713
+ | 退货入库 | 退货商品误入可售 | 售后退货 | 半自动 | Critical | 进入退货/冻结库存 |
1714
+ | 多仓库存 | 超卖、拆单错误 | 多仓下单 | 自动化 | Critical | 库存和订单一致 |
1715
+
1716
+ ---
1717
+
1718
+ ## 33. 订单、支付与履约
1719
+
1720
+ ### 33.1 下单前校验
1721
+
1722
+ - 商品是否上架。
1723
+ - 商品是否可售。
1724
+ - 商家资质是否有效。
1725
+ - 商品批次是否可售。
1726
+ - 是否临期。
1727
+ - 是否库存充足。
1728
+ - 是否支持当前地区配送。
1729
+ - 是否需要冷链。
1730
+ - 是否为高风险商品。
1731
+ - 是否命中禁售地区。
1732
+ - 是否需要用户确认适用性。
1733
+ - 是否需要售前提示。
1734
+
1735
+ ### 33.2 订单状态
1736
+
1737
+ - 待支付。
1738
+ - 已支付。
1739
+ - 待审核,高风险商品。
1740
+ - 待拣货。
1741
+ - 已锁库存。
1742
+ - 已出库。
1743
+ - 已发货。
1744
+ - 运输中。
1745
+ - 已签收。
1746
+ - 售后中。
1747
+ - 召回中。
1748
+ - 已退款。
1749
+ - 已关闭。
1750
+
1751
+ ### 33.3 支付分类
1752
+
1753
+ 实物商品:
1754
+
1755
+ - 宠物食品。
1756
+ - 宠物用品。
1757
+ - 猫砂。
1758
+ - 洗护服务。
1759
+ - 寄养服务。
1760
+ - 线下服务预约。
1761
+
1762
+ 数字权益:
1763
+
1764
+ - App 内数字会员。
1765
+ - 虚拟积分。
1766
+ - 付费内容。
1767
+ - AI 宠物医生咨询次数包。
1768
+ - 线上课程。
1769
+ - 纯数字报告。
1770
+
1771
+ 说明:实物商品一般可走微信 / 支付宝 / 银行卡 / Apple Pay / Google Pay / Stripe 等通道;数字权益可能触发 Apple IAP / Google Play Billing。具体规则需按目标市场、分发渠道和商品形态确认。支付金额、订单状态、权益发放必须以服务端为准,不能信任客户端金额。
1772
+
1773
+ ### 33.4 验收表
1774
+
1775
+ | 检查项 | 风险说明 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
1776
+ |---|---|---|---|---|---|
1777
+ | 下架商品下单 | 非法售卖 | 下架后下单 | 自动化 | Blocker | 拦截 |
1778
+ | 商家资质过期仍发货 | 高风险 | 资质过期订单 | 自动化 | Blocker | 待审核/拦截 |
1779
+ | 临期下单无提示 | 投诉 | 临期商品 | 自动化 | Critical | 显著提示 |
1780
+ | 冷链城市不支持 | 履约失败 | 地址切换 | 自动化 | Critical | 不可下单或提示 |
1781
+ | 重复支付 | 资金事故 | 连续点击/回调重放 | 自动化 | Blocker | 幂等 |
1782
+ | 支付成功回调失败 | 丢单 | 故障注入 | 半自动 | Blocker | 最终修正 |
1783
+ | 高风险商品自动发货 | 合规风险 | 高风险类目 | 自动化 | Critical | 进入审核 |
1784
+ | 订单状态跨端不一致 | 用户/客服错乱 | App/H5/小程序/后台 | 自动化 | Blocker | 一致 |
1785
+
1786
+ ---
1787
+
1788
+ ## 34. 物流、冷链、大件、多仓
1789
+
1790
+ ### 34.1 物流类型
1791
+
1792
+ - 普通快递。
1793
+ - 宠物食品防潮配送。
1794
+ - 冷链配送。
1795
+ - 大件配送。
1796
+ - 多仓发货。
1797
+ - 拆单。
1798
+ - 部分发货。
1799
+ - 运输中拦截。
1800
+
1801
+ ### 34.2 测试重点
1802
+
1803
+ - 偏远地区是否可配送。
1804
+ - 高温地区是否限制配送。
1805
+ - 冷链商品是否支持当前城市。
1806
+ - 大件运费是否正确。
1807
+ - 多仓拆单是否正确。
1808
+ - 部分发货是否正确。
1809
+ - 食品 + 普通用品 + 冷链是否拆单。
1810
+ - 运输中拦截。
1811
+ - 召回拦截。
1812
+
1813
+ ### 34.3 验收表
1814
+
1815
+ | 检查项 | 风险说明 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
1816
+ |---|---|---|---|---|---|
1817
+ | 冷链不支持城市下单 | 商品变质/履约失败 | 地址测试 | 自动化 | Critical | 拦截或提示 |
1818
+ | 大件运费错误 | 财务损失/投诉 | 运费模板 | 自动化 | Major / Critical | 金额正确 |
1819
+ | 多仓拆单错误 | 漏发/超卖 | 多仓订单 | 自动化 | Critical | 拆单正确 |
1820
+ | 部分发货状态错误 | 用户误解 | 分批发货 | 自动化 | Major | 状态清晰 |
1821
+ | 食品+冷链+普通品混发 | 储存条件不符 | 混合购物车 | 自动化 | Critical | 按规则拆单 |
1822
+ | 运输中召回拦截 | 风险商品继续送达 | 召回演练 | 人工 | Critical | 可拦截或通知 |
1823
+ | 破损/漏液 | 售后证据不足 | 售后流程 | 人工 | Major | 证据完整 |
1824
+
1825
+ ---
1826
+
1827
+ ## 35. 售后、纠纷与证据链
1828
+
1829
+ ### 35.1 宠物商城售后原因
1830
+
1831
+ 商品问题:
1832
+
1833
+ - 包装破损。
1834
+ - 漏气。
1835
+ - 发霉。
1836
+ - 异味。
1837
+ - 生虫。
1838
+ - 临期。
1839
+ - 过期。
1840
+ - 假货疑似。
1841
+ - 批次问题。
1842
+ - 错发 / 漏发。
1843
+
1844
+ 适用性问题:
1845
+
1846
+ - 宠物不吃。
1847
+ - 过敏。
1848
+ - 腹泻。
1849
+ - 呕吐。
1850
+ - 不适用当前宠物。
1851
+ - 规格不合适。
1852
+
1853
+ 服务问题:
1854
+
1855
+ - 预约失败。
1856
+ - 服务人员迟到。
1857
+ - 服务质量差。
1858
+ - 宠物受伤。
1859
+ - 服务门店拒单。
1860
+
1861
+ 平台风险:
1862
+
1863
+ - 虚假宣传。
1864
+ - 功效不符。
1865
+ - 商家资质存疑。
1866
+ - 价格欺诈。
1867
+
1868
+ ### 35.2 售后证据
1869
+
1870
+ 用户上传:
1871
+
1872
+ - 商品包装照片。
1873
+ - 批次号照片。
1874
+ - 生产日期照片。
1875
+ - 宠物状态照片 / 视频。
1876
+ - 快递包装照片。
1877
+ - 购买记录。
1878
+ - 医院证明,严重情况。
1879
+
1880
+ 平台记录:
1881
+
1882
+ - 商品详情快照。
1883
+ - 下单时价格。
1884
+ - 下单时促销。
1885
+ - 下单时商家资质。
1886
+ - 发货批次。
1887
+ - 仓库出库记录。
1888
+ - 物流轨迹。
1889
+ - 客服聊天记录。
1890
+
1891
+ 商品详情快照非常重要。商家改详情页不能影响历史订单证据,纠纷处理必须能追溯当时的商品、价格、资质、批次和承诺。
1892
+
1893
+ ### 35.3 验收表
1894
+
1895
+ | 检查项 | 风险说明 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
1896
+ |---|---|---|---|---|---|
1897
+ | 售后原因缺失 | 无法分类处理 | 售后申请 | 自动化 | Major | 原因完整 |
1898
+ | 批次证据缺失 | 无法追责/召回 | 食品售后 | 半自动 | Critical | 可上传/关联批次 |
1899
+ | 商品快照缺失 | 商家改详情逃避责任 | 下单后改详情 | 自动化 | Critical | 历史快照保留 |
1900
+ | 价格/促销快照缺失 | 价格纠纷 | 活动订单 | 自动化 | Major / Critical | 可追溯 |
1901
+ | 客服记录缺失 | 无法复盘 | 工单处理 | 人工 | Major | 记录完整 |
1902
+ | 医院证明处理 | 高风险纠纷 | 严重售后样本 | 人工 | Critical | 有升级流程 |
1903
+ | 退款后状态错误 | 账务/订单错乱 | 退款测试 | 自动化 | Critical | 状态一致 |
1904
+
1905
+ ---
1906
+
1907
+ ## 36. 商品召回系统
1908
+
1909
+ ### 36.1 召回触发
1910
+
1911
+ - 用户投诉集中。
1912
+ - 商家主动上报。
1913
+ - 平台抽检异常。
1914
+ - 监管通知。
1915
+ - 品牌方召回。
1916
+ - 批次质量问题。
1917
+
1918
+ ### 36.2 系统动作
1919
+
1920
+ - 冻结批次库存。
1921
+ - 下架相关商品。
1922
+ - 找出购买用户。
1923
+ - 发送站内信 / 短信 / Push。
1924
+ - 阻止继续发货。
1925
+ - 拦截运输中订单。
1926
+ - 发起退款 / 退货。
1927
+ - 记录通知结果。
1928
+ - 客服跟进。
1929
+
1930
+ ### 36.3 召回通知字段
1931
+
1932
+ - 商品。
1933
+ - 批次。
1934
+ - 订单号。
1935
+ - 购买时间。
1936
+ - 风险说明。
1937
+ - 处理方式。
1938
+ - 客服联系。
1939
+
1940
+ ### 36.4 验收表
1941
+
1942
+ | 检查项 | 风险说明 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
1943
+ |---|---|---|---|---|---|
1944
+ | 批次召回无法定位用户 | 召回失败 | 批次订单查询 | 自动化 | Blocker | 可定位全部购买用户 |
1945
+ | 召回后商品仍可售 | 风险扩大 | 召回触发 | 自动化 | Blocker | 自动下架/冻结 |
1946
+ | 运输中无法拦截 | 风险商品送达 | 物流拦截演练 | 人工 | Critical | 可拦截或通知 |
1947
+ | 通知失败无补偿 | 用户不知道风险 | Push/短信失败 | 半自动 | Critical | 有补发和客服跟进 |
1948
+ | 召回退款不一致 | 财务错误 | 退款流程 | 自动化 | Critical | 对账一致 |
1949
+ | 召回记录缺失 | 无法审计 | 审计日志 | 自动化 | Critical | 记录完整 |
1950
+
1951
+ ---
1952
+
1953
+ ## 37. 评价、内容社区、直播与种草风险
1954
+
1955
+ ### 37.1 评价系统字段
1956
+
1957
+ - 评分。
1958
+ - 文字。
1959
+ - 图片。
1960
+ - 视频。
1961
+ - 宠物类型。
1962
+ - 宠物年龄。
1963
+ - 宠物体重。
1964
+ - 是否挑食。
1965
+ - 是否过敏。
1966
+ - 适口性。
1967
+ - 便便情况。
1968
+ - 毛发变化。
1969
+ - 复购意愿。
1970
+ - 是否真实购买。
1971
+ - 是否异常评价。
1972
+ - 是否商家刷评。
1973
+ - 是否水军。
1974
+ - 是否恶意差评。
1975
+
1976
+ ### 37.2 内容风险
1977
+
1978
+ - 虚假测评。
1979
+ - 商家刷评。
1980
+ - 达人收钱不标广告。
1981
+ - 夸大功效。
1982
+ - 宠物医疗建议。
1983
+ - 虐宠内容。
1984
+ - 活体交易引流。
1985
+ - 私下交易。
1986
+ - 假货推荐。
1987
+ - 诱导加微信。
1988
+ - 赌博抽奖。
1989
+ - 未成年人内容。
1990
+
1991
+ ### 37.3 内容审核
1992
+
1993
+ 禁止或高风险内容:
1994
+
1995
+ - 虐宠。
1996
+ - 活体非法交易。
1997
+ - 野生动物交易。
1998
+ - 医疗虚假宣传。
1999
+ - 未授权品牌测评。
2000
+ - 引导私下交易。
2001
+ - 假货推广。
2002
+ - 恶意差评。
2003
+ - 商家刷单刷评。
2004
+ - 医生身份造假。
2005
+
2006
+ ### 37.4 验收表
2007
+
2008
+ | 检查项 | 风险说明 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
2009
+ |---|---|---|---|---|---|
2010
+ | 虚假医疗功效评价 | 绕过商品审核 | 评价关键词 | 半自动 | Critical | 过滤/折叠/审核 |
2011
+ | 商家刷评 | 误导用户 | 评价风控 | 中 | Critical | 异常识别 |
2012
+ | 虐宠内容 | 内容合规风险 | 内容样本 | 人工 + 机审 | Critical | 拦截 |
2013
+ | 私下交易引流 | 平台风险 | 链接/联系方式 | 半自动 | Critical | 拦截 |
2014
+ | 活体交易引流 | 高风险 | 关键词/图片 | 半自动 | Blocker | 拦截 |
2015
+ | 达人广告未披露 | 虚假种草 | 内容审核 | 人工 | Major / Critical | 标记广告 |
2016
+ | 直播带货 | 主播/商品/内容多重风险 | 专项审核 | 人工 | Critical | 非 MVP 或专项上线 |
2017
+
2018
+ ---
2019
+
2020
+ ## 38. 宠物服务预约
2021
+
2022
+ 如果支持服务预约,必须单独设计服务协议、责任边界、保险机制、证据留存、门店/服务者资质、客服升级流程。
2023
+
2024
+ ### 38.1 用户侧
2025
+
2026
+ - 选择宠物。
2027
+ - 选择服务。
2028
+ - 选择门店 / 服务者。
2029
+ - 选择时间。
2030
+ - 支付定金 / 全款。
2031
+ - 到店核销。
2032
+ - 服务完成。
2033
+ - 评价。
2034
+ - 售后。
2035
+
2036
+ ### 38.2 商家侧
2037
+
2038
+ - 排班。
2039
+ - 接单。
2040
+ - 拒单。
2041
+ - 改期。
2042
+ - 核销。
2043
+ - 服务记录。
2044
+ - 异常上报。
2045
+
2046
+ ### 38.3 平台侧
2047
+
2048
+ - 服务类目审核。
2049
+ - 服务者资质。
2050
+ - 门店资质。
2051
+ - 纠纷处理。
2052
+ - 保险 / 赔付。
2053
+
2054
+ ### 38.4 服务专项风险
2055
+
2056
+ - 宠物在洗护中受伤。
2057
+ - 宠物寄养期间生病。
2058
+ - 宠物丢失。
2059
+ - 上门喂养进不了门。
2060
+ - 服务者迟到。
2061
+ - 用户临时取消。
2062
+ - 商家临时取消。
2063
+ - 服务质量争议。
2064
+
2065
+ ### 38.5 验收表
2066
+
2067
+ | 检查项 | 风险说明 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
2068
+ |---|---|---|---|---|---|
2069
+ | 服务者无资质 | 责任风险 | 入驻审核 | 人工 | Critical | 无资质不可接单 |
2070
+ | 排班冲突 | 超卖服务 | 时间段下单 | 自动化 | Major / Critical | 不超卖 |
2071
+ | 改期/取消规则 | 纠纷 | 取消/改期场景 | 自动化 | Major | 规则清晰 |
2072
+ | 到店核销 | 错核销/提前核销 | 核销测试 | 自动化 | Major | 状态正确 |
2073
+ | 宠物受伤纠纷 | 高风险 | 售后升级演练 | 人工 | Critical | 有证据和保险流程 |
2074
+ | 上门服务失败 | 进不了门/迟到 | 异常上报 | 人工 | Major | 可处理 |
2075
+
2076
+ ---
2077
+
2078
+ ## 39. 宠物医疗 / AI 问诊边界
2079
+
2080
+ ### 39.1 可以做
2081
+
2082
+ - 健康知识科普。
2083
+ - 疫苗提醒。
2084
+ - 驱虫提醒。
2085
+ - 体检提醒。
2086
+ - 附近医院预约。
2087
+ - 非诊断类建议。
2088
+
2089
+ ### 39.2 谨慎做 / MVP 不建议
2090
+
2091
+ - 症状判断。
2092
+ - 用药建议。
2093
+ - 疾病诊断。
2094
+ - AI 问诊。
2095
+ - 处方推荐。
2096
+
2097
+ ### 39.3 必须有免责声明
2098
+
2099
+ > 本功能仅提供宠物健康知识参考,不能替代兽医诊断、治疗或处方建议。如宠物出现异常症状,请及时前往正规宠物医院就诊。
2100
+
2101
+ ### 39.4 验收表
2102
+
2103
+ | 检查项 | 风险说明 | 测试方法 | 自动化可行性 | 阻断级别 | 通过标准 |
2104
+ |---|---|---|---|---|---|
2105
+ | AI 给出处方建议 | 医疗风险 | 红队 prompt | 半自动 | Blocker | 拒绝或建议线下就医 |
2106
+ | 商品推荐暗示治疗 | 规避医疗监管 | 推荐样本 | 半自动 | Critical | 不暗示治疗 |
2107
+ | 免责声明缺失 | 用户误解 | UI 审查 | 人工 | Critical | 清晰展示 |
2108
+ | 记录健康信息未声明 | 隐私风险 | 数据流审查 | 人工 | Critical | 隐私声明一致 |
2109
+ | 医生身份造假 | 内容/服务风险 | 资质审核 | 人工 | Blocker | 无资质不可展示 |
2110
+
2111
+ ---
2112
+
2113
+ ## 40. 宠物商城自动化测试策略
2114
+
2115
+ ### 40.1 C 端适合自动化
2116
+
2117
+ - 注册登录。
2118
+ - 添加宠物档案。
2119
+ - 搜索商品。
2120
+ - 筛选猫 / 狗商品。
2121
+ - 商品详情。
2122
+ - 加购。
2123
+ - 下单。
2124
+ - 支付 mock。
2125
+ - 订单列表。
2126
+ - 售后申请。
2127
+ - 评价。
2128
+ - 优惠券。
2129
+ - 复购提醒。
2130
+
2131
+ ### 40.2 B 端适合自动化
2132
+
2133
+ - 商家入驻。
2134
+ - 商品提交。
2135
+ - 商品审核。
2136
+ - 批次入库。
2137
+ - 库存调整。
2138
+ - 订单发货。
2139
+ - 售后处理。
2140
+ - 资质过期。
2141
+
2142
+ ### 40.3 必须人工 / 专项
2143
+
2144
+ - 商品资质审核。
2145
+ - 包装标签 OCR 结果复核。
2146
+ - 宠物食品功效宣传判断。
2147
+ - 活体 / 药品边界判断。
2148
+ - 复杂售后纠纷。
2149
+ - 服务预约纠纷。
2150
+ - App Store / 小程序审核。
2151
+ - 多厂商 Android 权限和推送。
2152
+ - 真实支付回调。
2153
+ - 召回演练。
2154
+
2155
+ ### 40.4 自动化分层
2156
+
2157
+ | 层级 | 范围 | 目标 | 工具建议 |
2158
+ |---|---|---|---|
2159
+ | 单元测试 | 商品规则、临期、库存、资质、推荐约束 | 快速验证业务规则 | XCTest / JUnit / Jest / pytest |
2160
+ | API 测试 | 商品、订单、支付、库存、售后、召回 | 服务端状态机和幂等 | Postman / pytest / Contract Test |
2161
+ | UI 自动化 | C 端主链路、B 端流程 | 回归 | Appium / XCUITest / Espresso / Playwright |
2162
+ | 数据一致性测试 | App/H5/小程序/后台 | 跨端状态一致 | API + UI 混合 |
2163
+ | 安全测试 | 支付篡改、越权、Deep Link、WebView | 防攻击 | MASTG / Burp / 自研脚本 |
2164
+ | 人工专项 | 审核、资质、真机、召回、复杂售后 | 判断和证据 | 测试用例 + 工单 |
2165
+
2166
+ ---
2167
+
2168
+ ## 41. 宠物商城 P0 测试用例
2169
+
2170
+ ### 41.1 商品治理
2171
+
2172
+ | 用例 | 期望 | 阻断级别 |
2173
+ |---|---|---|
2174
+ | 三无宠物食品能否上架 | 不允许上架 | Blocker |
2175
+ | 过期批次能否售卖 | 不允许售卖 | Blocker |
2176
+ | 商家资质过期后能否继续发货 | 高风险类目自动拦截或进入人工审核 | Blocker |
2177
+ | 商品详情改动后历史订单快照是否保留 | 历史快照不变 | Critical |
2178
+ | 违规功效词是否拦截 | 命中审核 | Critical |
2179
+ | 图片中违规功效词是否 OCR 识别 | 命中复核 | Critical |
2180
+
2181
+ ### 41.2 订单
2182
+
2183
+ | 用例 | 期望 | 阻断级别 |
2184
+ |---|---|---|
2185
+ | 临期商品是否提示 | 显著提示 | Critical |
2186
+ | 不同仓库是否正确拆单 | 拆单和库存正确 | Critical |
2187
+ | 冷链商品是否限制城市 | 不支持城市不可下单 | Critical |
2188
+ | 高风险商品是否进入审核 | 不自动发货 | Critical |
2189
+ | 支付成功但订单回调失败是否修正 | 最终一致 | Blocker |
2190
+ | 重复支付是否防止 | 幂等防重复 | Blocker |
2191
+
2192
+ ### 41.3 售后
2193
+
2194
+ | 用例 | 期望 | 阻断级别 |
2195
+ |---|---|---|
2196
+ | 用户投诉食品发霉是否能追溯批次 | 可追溯供应商、仓库、批次、用户 | Blocker |
2197
+ | 批次召回是否能定位购买用户 | 可定位全部用户 | Blocker |
2198
+ | 召回商品是否自动下架 | 下架并冻结库存 | Blocker |
2199
+ | 售后证据是否完整保存 | 证据链完整 | Critical |
2200
+
2201
+ ### 41.4 宠物档案
2202
+
2203
+ | 用例 | 期望 | 阻断级别 |
2204
+ |---|---|---|
2205
+ | 猫用户是否会推荐狗粮 | 不推荐 | Critical |
2206
+ | 过敏宠物是否会推荐过敏原商品 | 不推荐 | Critical |
2207
+ | 退出账号后宠物档案是否清理 | 不残留 | Critical |
2208
+ | 多账号切换是否串宠物数据 | 不串号 | Blocker |
2209
+
2210
+ ### 41.5 商家
2211
+
2212
+ | 用例 | 期望 | 阻断级别 |
2213
+ |---|---|---|
2214
+ | 假资质能否通过 | 不通过 | Critical |
2215
+ | 资质过期是否自动限制 | 自动限制 | Blocker |
2216
+ | 被处罚商家是否还能上架 | 不可或需复审 | Critical |
2217
+ | 商家改名后历史责任是否可追踪 | 可追踪 | Critical |
2218
+
2219
+ ### 41.6 全平台
2220
+
2221
+ | 用例 | 期望 | 阻断级别 |
2222
+ |---|---|---|
2223
+ | iOS / Android / H5 / 小程序订单状态是否一致 | 一致 | Blocker |
2224
+ | 小程序下单 App 能否查看 | 可查看 | Critical |
2225
+ | App 售后后台能否处理 | 可处理 | Critical |
2226
+ | 商家后台发货 C 端是否实时同步 | 同步或最终一致 | Critical |
2227
+
2228
+ ---
2229
+
2230
+ ## 42. 宠物商城 Release Gate
2231
+
2232
+ ### 42.1 Blocker:存在一个就不能上线
2233
+
2234
+ | Blocker | 说明 |
2235
+ |---|---|
2236
+ | 可以上架禁售商品 | 包括处方兽药、疫苗、三无食品、假冒品牌、活体等 |
2237
+ | 可以售卖过期食品 | 批次过期仍可下单 |
2238
+ | 批次无法追溯 | 食品订单无法关联批次、仓库、供应商 |
2239
+ | 支付成功订单丢失 | 扣款后订单/权益无法恢复 |
2240
+ | 退款后权益 / 订单状态错误 | 退款成功但订单或权益未正确处理 |
2241
+ | 商家资质过期仍可售卖高风险类目 | 食品、保健、服务等高风险类目 |
2242
+ | 召回无法定位购买用户 | 批次召回无法通知用户 |
2243
+ | 用户 A 能看到用户 B 的宠物档案 / 地址 / 订单 | 隐私泄露 |
2244
+ | 生产包连接测试环境 | App / 小程序 / H5 / 后台任一生产入口连接错误 |
2245
+ | App / 小程序 / H5 订单状态不一致 | 跨端交易状态不一致 |
2246
+ | 隐私政策、Data Safety、App Store 隐私标签和实际数据采集不一致 | 宠物档案、推荐、SDK、埋点未披露 |
2247
+ | 高风险医疗/处方/活体功能未评估上线 | MVP 直接做高风险业务 |
2248
+
2249
+ ### 42.2 Critical:必须修复后才能全量
2250
+
2251
+ | Critical | 说明 |
2252
+ |---|---|
2253
+ | 临期提示不明显 | 用户无法感知临期 |
2254
+ | 商品详情历史快照缺失 | 纠纷无法举证 |
2255
+ | 售后证据不完整 | 批次、包装、快递、宠物状态、客服记录缺失 |
2256
+ | 推荐系统推荐不适用商品 | 猫推狗粮、过敏原、召回商品等 |
2257
+ | 商家资质即将过期无提醒 | 可能导致高风险类目继续销售 |
2258
+ | Push / 短信召回通知失败无补偿 | 召回无法触达 |
2259
+ | 冷链商品未限制地区 | 变质/履约失败 |
2260
+ | 高风险商品审核绕过 | 直接上架或自动发货 |
2261
+ | 图片 OCR 无法覆盖高风险词 | 商家通过图片规避审核 |
2262
+ | 服务预约无纠纷升级流程 | 宠物受伤、丢失、延误无法处理 |
2263
+
2264
+ ---
2265
+
2266
+ # 第三卷:通用框架与宠物商城案例映射关系
2267
+
2268
+ | 能力 / 风险项 | 所有 App 必须做 | 移动端 App 必须做 | 电商类 App 必须做 | 宠物商城特有 | 高风险业务才需要做 | MVP 是否需要 | 说明 |
2269
+ |---|---|---|---|---|---|---|---|
2270
+ | Release Gate | 是 | 是 | 是 | 是 | 是 | 是 | 所有上线都必须有阻断标准 |
2271
+ | Build Manifest | 是 | 是 | 是 | 是 | 是 | 是 | 生产包可审计 |
2272
+ | SDK Inventory | 是 | 是 | 是 | 是 | 是 | 是 | 第三方 SDK 数据和风险必须登记 |
2273
+ | Safe Area | 否 | 是 | 是 | 是 | 否 | 是 | iOS 基础适配 |
2274
+ | Android WindowInsets / Cutout | 否 | 是 | 是 | 是 | 否 | 是 | Android 基础适配 |
2275
+ | Runtime Permission | 否 | 是 | 是 | 是 | 视权限 | 是 | 权限拒绝和降级必须测 |
2276
+ | App Store / Google Play 审核 | 否 | 是 | 是 | 是 | 是 | 是 | 商店分发必须做 |
2277
+ | H5 / WebView 安全 | 视业务 | 视业务 | 常见 | 常见 | 是 | 视业务 | Hybrid 才需要深做 |
2278
+ | 微信小程序审核 | 否 | 否 | 视业务 | 视业务 | 视业务 | 视渠道 | 只做小程序时必需 |
2279
+ | 支付服务端校验 | 视业务 | 视业务 | 是 | 是 | 是 | 是 | 电商必需 |
2280
+ | Apple IAP / Play Billing | 否 | 视业务 | 视业务 | 视业务 | 是 | 视业务 | 数字权益才高风险 |
2281
+ | 订单状态机 | 否 | 视业务 | 是 | 是 | 是 | 是 | 有交易必需 |
2282
+ | 退款 / 对账 | 否 | 视业务 | 是 | 是 | 是 | 是 | 有支付必需 |
2283
+ | 旧 App 兼容 | 否 | 是 | 是 | 是 | 是 | 是 | 移动端无法强制用户立即升级 |
2284
+ | 灰度 / 回滚 / Kill Switch | 是 | 是 | 是 | 是 | 是 | 是 | 生产事故控制 |
2285
+ | 可观测性 | 是 | 是 | 是 | 是 | 是 | 是 | 崩溃、支付、白屏、接口必须监控 |
2286
+ | 账号删除 / 数据删除 | 视账号 | 是,若有账号 | 是 | 是 | 是 | 是 | 有账号创建时需提供路径 |
2287
+ | 平台账号治理 | 是 | 是 | 是 | 是 | 是 | 是 | Apple / Google / 微信 / 支付账号 |
2288
+ | 财务税务收款 | 视业务 | 视业务 | 是 | 是 | 是 | 是 | 有交易或订阅必需 |
2289
+ | 商品中心 | 否 | 否 | 是 | 是 | 是 | 是 | 电商必需 |
2290
+ | 商品详情快照 | 否 | 否 | 是 | 是 | 是 | 是 | 纠纷证据 |
2291
+ | 商家资质 | 否 | 否 | 平台型需要 | 是 | 是 | 是,若平台型 | 自营也需供应商资质 |
2292
+ | 批次追溯 | 否 | 否 | 食品类需要 | 是 | 是 | 是 | 宠物食品必须考虑 |
2293
+ | 保质期 / 临期 | 否 | 否 | 食品/消耗品需要 | 是 | 是 | 是 | 宠物食品 P0 |
2294
+ | FEFO | 否 | 否 | 食品类需要 | 是 | 是 | 是 | 先到期先出 |
2295
+ | 商品召回 | 否 | 否 | 食品类需要 | 是 | 是 | 是 | 宠物食品 P0 |
2296
+ | 宠物档案 | 否 | 否 | 否 | 是 | 视业务 | 是,基础版 | 宠物商城推荐和复购核心 |
2297
+ | 适用性推荐约束 | 否 | 否 | 否 | 是 | 是 | 是 | 防猫推狗粮、过敏原 |
2298
+ | 禁售 / 限售商品库 | 否 | 否 | 视类目 | 是 | 是 | 是 | 宠物食品/药品/活体边界 |
2299
+ | 活体交易审核 | 否 | 否 | 否 | 特有 | 是 | 不建议 | MVP 不建议做 |
2300
+ | 处方兽药 / 疫苗 | 否 | 否 | 否 | 特有 | 是 | 不建议 | 需要单独合规系统 |
2301
+ | 宠物服务预约 | 否 | 否 | 视业务 | 特有 | 是 | 谨慎 | 洗护/寄养等高纠纷 |
2302
+ | 宠物医疗 / AI 问诊 | 否 | 否 | 否 | 特有 | 是 | 不建议 | 高风险,需免责声明和资质 |
2303
+ | 内容社区 / 种草 | 否 | 视业务 | 视业务 | 常见 | 是 | 谨慎 | UGC、虚假宣传、虐宠 |
2304
+ | 直播带货 | 否 | 视业务 | 视业务 | 可选 | 是 | 不建议 | 内容、商品、主播多重风险 |
2305
+ | 冷链 / 大件 / 多仓 | 否 | 否 | 视商品 | 是 | 是 | 视商品 | 食品、大袋粮、猫砂常见 |
2306
+ | 售后证据链 | 视业务 | 视业务 | 是 | 是 | 是 | 是 | 包装、批次、宠物状态、快照 |
2307
+ | 运营后台 / 客服闭环 | 视业务 | 视业务 | 是 | 是 | 是 | 是 | 交易与投诉必需 |
2308
+
2309
+ ---
2310
+
2311
+ # 补充风险
2312
+
2313
+ 以下为历史材料基础上进一步补齐的工程风险。若项目属于相关场景,应纳入专项。
2314
+
2315
+ | 补充风险 | 说明 | 建议动作 | 阻断级别 |
2316
+ |---|---|---|---|
2317
+ | 数据主权 / 跨境传输 | 出海、境外云、跨境客服、海外 AI 模型 | 做数据流向图和地区合规评估 | Critical |
2318
+ | 广告与归因 SDK | IDFA/GAID、ATT、跨 App 跟踪、再营销 | SDK Inventory + 隐私声明 + 授权 | Critical |
2319
+ | A/B 实验伦理 | 默认收集、诱导授权、暗黑模式 | 实验审核和用户退出机制 | Major / Critical |
2320
+ | 体验伦理 | 诱导通知、诱导通讯录、弱化取消订阅 | 设计评审 | Major / Critical |
2321
+ | 证书密钥台账 | APNs、TLS、支付、OAuth、短信、地图等过期 | 建台账、提前告警 | Critical |
2322
+ | 外部服务 SLA | 短信、邮件、支付、推送、地图、CDN、AI | 备用方案和事故演练 | Critical |
2323
+ | 行业法律专项 | 金融、医疗、儿童、宠物药品、活体交易 | 单独法律评审 | Blocker / Critical |
2324
+ | App 扩展入口隐私 | Widget、Live Activity、Share Extension | 退出登录清理、锁屏脱敏 | Critical |
2325
+ | 开发者账号风险 | 个人账号、2FA、唯一管理员、账号封禁 | 公司主体和备用管理员 | Critical |
2326
+ | 非商店分发变化 | Android sideload、APK、企业包 | 目标国家政策跟踪 | Critical / 待确认 |
2327
+
2328
+ ---
2329
+
2330
+ # 待确认问题
2331
+
2332
+ | 待确认项 | 为什么需要确认 | 负责人建议 |
2333
+ |---|---|---|
2334
+ | 目标国家 / 地区 | 宠物食品、兽药、隐私、税务、支付、分发规则依地区不同 | 产品 + 合规 |
2335
+ | 是否平台型电商还是自营 | 商家资质、结算、售后、平台责任不同 | 产品 |
2336
+ | 是否销售保健品 / 驱虫类 | 可能进入兽药或医疗边界 | 产品 + 法务 |
2337
+ | 是否涉及进口商品 | 报关、检疫、标签、授权要求不同 | 供应链 + 法务 |
2338
+ | 是否做活体交易 | MVP 不建议,若做需单独系统 | 产品 + 法务 + 风控 |
2339
+ | 是否做宠物服务预约 | 洗护、寄养、上门服务有责任和保险问题 | 产品 + 运营 |
2340
+ | 是否做 AI 问诊 | 可能涉及医疗误导和高风险建议 | 产品 + 安全 + 法务 |
2341
+ | 是否做社区 / 直播 | UGC、达人广告、内容审核成本 | 产品 + 内容审核 |
2342
+ | 是否有数字会员 / AI 次数包 | 可能触发 IAP / Play Billing | 产品 + 合规 + 支付 |
2343
+ | 是否出海 | 隐私、数据跨境、支付税务、商店规则 | 战略 + 合规 |
2344
+ | 目标崩溃率 / 性能阈值 | Release Gate 需要量化阈值 | QA + SRE |
2345
+ | 召回通知 SLA | 食品召回需要响应时限 | 运营 + 客服 + 法务 |
2346
+ | 证书密钥负责人 | 过期风险需要 owner | SRE + 安全 |
2347
+
2348
+ ---
2349
+
2350
+ # 建议下一步拆分的专项文档
2351
+
2352
+ 1. 《iOS App 上架与隐私审核专项 Checklist》
2353
+ 2. 《Android targetSdk / 权限 / 分发渠道专项 Checklist》
2354
+ 3. 《Mobile App Build Manifest 与 CI 发布门禁规范》
2355
+ 4. 《SDK Inventory 与隐私数据流盘点模板》
2356
+ 5. 《移动端支付、订阅、退款、对账专项测试规范》
2357
+ 6. 《WebView / JSBridge / Deep Link 安全测试规范》
2358
+ 7. 《移动端灰度、回滚、Kill Switch 与事故演练 Runbook》
2359
+ 8. 《宠物商城商品治理与禁售 / 限售商品库》
2360
+ 9. 《宠物食品批次追溯、保质期、FEFO 与召回系统规范》
2361
+ 10. 《宠物商城商家资质、商品审核与售后证据链规范》
2362
+ 11. 《宠物档案、推荐系统和隐私合规专项规范》
2363
+ 12. 《宠物服务预约、宠物医疗 / AI 问诊边界专项评估》
2364
+ 13. 《客服、投诉、申诉、退款与运营后台闭环规范》
2365
+ 14. 《平台账号、主体、财务、税务、收款与证书密钥台账》
2366
+
2367
+ ---
2368
+
2369
+ # 附录 A:官方资料索引
2370
+
2371
+ > 以下资料用于校验政策和平台敏感项。实际项目应在每次发版前重新核对官方页面,因为 App Store、Google Play、Android 系统和小程序规则会持续变化。
2372
+
2373
+ | 主题 | 官方资料 |
2374
+ |---|---|
2375
+ | Apple App Review Guidelines | Apple Developer:App Review Guidelines |
2376
+ | Apple 第三方 SDK / Privacy Manifest | Apple Developer:Third-party SDK requirements;Privacy manifest files;Required Reason API |
2377
+ | Apple 隐私与数据使用 | Apple Developer:User Privacy and Data Use;App Store Connect App Privacy Details |
2378
+ | Apple Keychain | Apple Developer:Keychain Services / Storing Keys in the Keychain |
2379
+ | Android 运行时权限 | Android Developers:Request runtime permissions |
2380
+ | Android Display Cutout / WindowInsets | Android Developers:Support display cutouts;WindowInsets / edge-to-edge docs |
2381
+ | Android 大屏 / 折叠屏 | Android Developers:Support different display sizes |
2382
+ | Android 16 行为变化 | Android Developers:Behavior changes: all apps;Behavior changes for Android 16 target |
2383
+ | Google Play target API | Play Console Help:Target API level requirements |
2384
+ | Google Play Payments | Play Console Help:Payments |
2385
+ | Google Play Data Safety | Play Console Help:Provide information for Google Play's Data safety section |
2386
+ | Google Play User Data / Disclosure | Play Console Help:Developer Program Policy / User Data / Prominent Disclosure |
2387
+ | Google Play Foreground Service / Full-screen Intent | Play Console Help:Understanding foreground service and full-screen intent requirements |
2388
+ | Google Play Account Deletion | Play Console Help:Understanding Google Play's app account deletion requirements |
2389
+ | Android Developer Verification | Android Developers:Android developer verification timeline |
2390
+ | OWASP MASVS | OWASP MASVS / MASTG |
2391
+
2392
+ ---
2393
+
2394
+ # 附录 B:Release Gate 签字模板
2395
+
2396
+ ```md
2397
+ 版本:
2398
+ 平台:iOS / Android / H5 / 小程序 / 后台 / 服务端
2399
+ 构建编号:
2400
+ Commit:
2401
+ 发布日期:
2402
+ 灰度范围:
2403
+ 回滚方案:
2404
+ Kill Switch:是 / 否
2405
+
2406
+ 产品负责人:
2407
+ 移动端负责人:
2408
+ 服务端负责人:
2409
+ QA 负责人:
2410
+ 安全负责人:
2411
+ 隐私合规负责人:
2412
+ 运营负责人:
2413
+ 客服负责人:
2414
+ 财务负责人,若涉及支付:
2415
+
2416
+ Blocker:0 / 非 0
2417
+ Critical:0 / 非 0
2418
+ Major:
2419
+ Minor:
2420
+
2421
+ 结论:允许上线 / 允许灰度 / 禁止上线 / 待补充验证
2422
+ 备注:
2423
+ ```
2424
+
2425
+ ---
2426
+
2427
+ # 附录 C:证书密钥台账模板
2428
+
2429
+ | 名称 | 用途 | 所属平台 | 创建人 | 管理人 | 存储位置 | 过期时间 | 轮换方式 | 影响范围 | 过期前告警 | 备注 |
2430
+ |---|---|---|---|---|---|---|---|---|---|---|
2431
+ | APNs Key | iOS 推送 | Apple | 待确认 | 待确认 | 密钥库 | 待确认 | 待确认 | 推送 | 90/30/7 天 | |
2432
+ | TLS 证书 | API HTTPS | 云平台 | 待确认 | 待确认 | 证书管理 | 待确认 | 自动/手动 | 全站 | 30/7 天 | |
2433
+ | 支付证书 | 支付验签 | 支付平台 | 待确认 | 待确认 | 密钥库 | 待确认 | 手动 | 支付/退款 | 30/7 天 | |
2434
+ | OAuth Secret | 第三方登录 | OAuth | 待确认 | 待确认 | 密钥库 | 待确认 | 手动 | 登录 | 30/7 天 | |
2435
+ | 地图 SDK Key | 地图定位 | 地图平台 | 待确认 | 待确认 | 配置中心 | 待确认 | 手动 | 地图/配送 | 30/7 天 | |
2436
+
2437
+ ---
2438
+
2439
+ # 附录 D:宠物商城核心上线证据清单
2440
+
2441
+ - 商品类目白名单和禁售库截图。
2442
+ - 商家资质审核流程截图。
2443
+ - 商品提交、审核、上架、下架、召回流程截图。
2444
+ - 食品批次入库、下单关联、售后追溯截图。
2445
+ - 临期/过期商品拦截测试报告。
2446
+ - FEFO 出库规则测试报告。
2447
+ - 支付 mock 与真实小额支付回调证据。
2448
+ - 退款和对账报告。
2449
+ - 售后证据链样例。
2450
+ - 批次召回演练记录。
2451
+ - 宠物档案跨账号隔离测试报告。
2452
+ - 推荐系统适用性约束测试报告。
2453
+ - App / H5 / 小程序 / 后台订单状态一致性报告。
2454
+ - 隐私政策、Data Safety、App Store 隐私标签、SDK Inventory 一致性审查记录。
2455
+ - iOS / Android 真机矩阵截图。
2456
+ - Build Manifest。
2457
+ - Release Gate 签字。