@cometchat/skills 4.4.2 → 5.0.1

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 (518) hide show
  1. package/.claude-plugin/marketplace.json +55 -0
  2. package/.claude-plugin/plugin.json +14 -0
  3. package/CHANGELOG.md +44 -0
  4. package/LICENSE +21 -0
  5. package/MIGRATING.md +187 -0
  6. package/README.md +52 -156
  7. package/RULES.md +125 -0
  8. package/bin/cometchat-skills.mjs +1280 -0
  9. package/bin/legacy-skills.json +95 -0
  10. package/catalogs/android-v6.json +1646 -0
  11. package/catalogs/flutter-v6.json +651 -0
  12. package/catalogs/ios-v5.json +1383 -0
  13. package/catalogs/rn-calls-v5.json +134 -0
  14. package/catalogs/rn-calls-v5.symbols.txt +58 -0
  15. package/catalogs/rn-sdk-v4.json +672 -0
  16. package/catalogs/rn-v5.json +449 -0
  17. package/catalogs/rn-v5.symbols.txt +216 -0
  18. package/catalogs/sdk-android-v5.json +514 -0
  19. package/contracts.android-calls-v5.json +122 -0
  20. package/contracts.android-v6.json +135 -0
  21. package/contracts.angular-v5.json +694 -0
  22. package/contracts.flutter-calls-v5.json +77 -0
  23. package/contracts.flutter-v6.json +126 -0
  24. package/contracts.ios-calls-v5.json +67 -0
  25. package/contracts.ios-v5.json +436 -0
  26. package/contracts.json +82 -0
  27. package/contracts.rn-calls-v5.json +77 -0
  28. package/contracts.rn-v5.json +727 -0
  29. package/contracts.sdk-android-v5.json +15 -0
  30. package/contracts.web-calls-v5.json +45 -0
  31. package/features.android-calls-v5.json +246 -0
  32. package/features.android-v6.json +65 -0
  33. package/features.angular-v5.json +521 -0
  34. package/features.flutter-calls-v5.json +286 -0
  35. package/features.flutter-v6.json +484 -0
  36. package/features.ios-calls-v5.json +236 -0
  37. package/features.ios-v5.json +573 -0
  38. package/features.json +61 -0
  39. package/features.rn-calls-v5.json +187 -0
  40. package/features.rn-v5.json +614 -0
  41. package/features.sdk-android-v5.json +40 -0
  42. package/features.sdk-jsv4.json +24 -0
  43. package/features.web-calls-v5.json +108 -0
  44. package/package.json +156 -74
  45. package/peers.yaml +355 -0
  46. package/registry/README.md +31 -0
  47. package/registry/android-calls-v5.json +94 -0
  48. package/registry/android-v6.json +177 -0
  49. package/registry/angular-v5.json +154 -0
  50. package/registry/flutter-calls-v5.json +94 -0
  51. package/registry/flutter-v6.json +159 -0
  52. package/registry/ios-calls-v5.json +99 -0
  53. package/registry/ios-v5.json +152 -0
  54. package/registry/rn-calls-v5.json +99 -0
  55. package/registry/rn-v5.json +169 -0
  56. package/registry/sdk-android-v5.json +93 -0
  57. package/registry/sdk-jsv4.json +93 -0
  58. package/registry/web-calls-v5.json +94 -0
  59. package/registry/web-v7.json +154 -0
  60. package/skills/cometchat/SKILL.md +47 -2096
  61. package/skills/cometchat-a11y/SKILL.md +44 -472
  62. package/skills/cometchat-analytics/SKILL.md +61 -0
  63. package/skills/cometchat-android-v5-calls-sdk/SKILL.md +206 -0
  64. package/skills/cometchat-android-v5-calls-sdk/references/build-truth.md +63 -0
  65. package/skills/cometchat-android-v5-calls-sdk/references/docs-map.md +119 -0
  66. package/skills/cometchat-android-v5-calls-sdk/references/method-map.md +53 -0
  67. package/skills/cometchat-android-v5-calls-sdk/references/pitfalls.md +72 -0
  68. package/skills/cometchat-android-v5-calls-sdk/references/ringing.md +92 -0
  69. package/skills/cometchat-android-v5-calls-sdk/references/user-switch.md +90 -0
  70. package/skills/cometchat-android-v5-sdk/SKILL.md +127 -0
  71. package/skills/cometchat-android-v5-sdk/references/app-surface.md +88 -0
  72. package/skills/cometchat-android-v5-sdk/references/docs-map.md +91 -0
  73. package/skills/cometchat-android-v6-builder-settings/SKILL.md +51 -137
  74. package/skills/cometchat-android-v6-calls/SKILL.md +128 -413
  75. package/skills/cometchat-android-v6-compose-components/SKILL.md +84 -194
  76. package/skills/cometchat-android-v6-compose-customization/SKILL.md +66 -411
  77. package/skills/cometchat-android-v6-compose-placement/SKILL.md +154 -237
  78. package/skills/cometchat-android-v6-core/SKILL.md +236 -672
  79. package/skills/cometchat-android-v6-core/references/anti-patterns.md +31 -0
  80. package/skills/cometchat-android-v6-core/references/component-props.md +168 -0
  81. package/skills/cometchat-android-v6-core/references/docs-map.md +153 -0
  82. package/skills/cometchat-android-v6-core/references/layout.md +112 -0
  83. package/skills/cometchat-android-v6-core/references/lifecycle.md +75 -0
  84. package/skills/cometchat-android-v6-core/references/setup-credentials.md +105 -0
  85. package/skills/cometchat-android-v6-core/references/troubleshooting.md +36 -0
  86. package/skills/cometchat-android-v6-events/SKILL.md +46 -184
  87. package/skills/cometchat-android-v6-extensions/SKILL.md +39 -179
  88. package/skills/cometchat-android-v6-features/SKILL.md +74 -143
  89. package/skills/cometchat-android-v6-kotlin-components/SKILL.md +75 -193
  90. package/skills/cometchat-android-v6-kotlin-customization/SKILL.md +67 -419
  91. package/skills/cometchat-android-v6-kotlin-placement/SKILL.md +77 -223
  92. package/skills/cometchat-android-v6-migration/SKILL.md +67 -378
  93. package/skills/cometchat-android-v6-production/SKILL.md +41 -179
  94. package/skills/cometchat-android-v6-push/SKILL.md +39 -289
  95. package/skills/cometchat-android-v6-testing/SKILL.md +50 -265
  96. package/skills/cometchat-android-v6-troubleshooting/SKILL.md +70 -254
  97. package/skills/cometchat-angular-v5-calls/SKILL.md +193 -0
  98. package/skills/cometchat-angular-v5-components/SKILL.md +131 -0
  99. package/skills/cometchat-angular-v5-components/references/catalog.md +111 -0
  100. package/skills/cometchat-angular-v5-components/references/host-composed.md +46 -0
  101. package/skills/cometchat-angular-v5-core/SKILL.md +300 -0
  102. package/skills/cometchat-angular-v5-core/references/anti-patterns.md +49 -0
  103. package/skills/cometchat-angular-v5-core/references/component-props.md +55 -0
  104. package/skills/cometchat-angular-v5-core/references/dependencies.md +66 -0
  105. package/skills/cometchat-angular-v5-core/references/docs-map.md +132 -0
  106. package/skills/cometchat-angular-v5-core/references/layout.md +64 -0
  107. package/skills/cometchat-angular-v5-core/references/lifecycle.md +202 -0
  108. package/skills/cometchat-angular-v5-core/references/setup-credentials.md +137 -0
  109. package/skills/cometchat-angular-v5-core/references/theming.md +70 -0
  110. package/skills/cometchat-angular-v5-core/references/troubleshooting.md +27 -0
  111. package/skills/cometchat-angular-v5-customization/SKILL.md +94 -0
  112. package/skills/cometchat-angular-v5-features/SKILL.md +107 -0
  113. package/skills/cometchat-angular-v5-features/references/custom-messages.md +133 -0
  114. package/skills/cometchat-angular-v5-features/references/formatters.md +28 -0
  115. package/skills/cometchat-angular-v5-features/references/host-composed-extensions.md +85 -0
  116. package/skills/cometchat-angular-v5-migration/SKILL.md +40 -0
  117. package/skills/cometchat-angular-v5-migration/references/migration-guide.md +165 -0
  118. package/skills/cometchat-angular-v5-patterns/SKILL.md +107 -0
  119. package/skills/cometchat-angular-v5-placement/SKILL.md +133 -0
  120. package/skills/cometchat-angular-v5-placement/references/combined-app.md +174 -0
  121. package/skills/cometchat-angular-v5-placement/references/core-surface.md +199 -0
  122. package/skills/cometchat-angular-v5-production/SKILL.md +102 -0
  123. package/skills/cometchat-angular-v5-push/SKILL.md +61 -0
  124. package/skills/cometchat-angular-v5-testing/SKILL.md +112 -0
  125. package/skills/cometchat-angular-v5-troubleshooting/SKILL.md +96 -0
  126. package/skills/cometchat-audit/SKILL.md +61 -0
  127. package/skills/cometchat-compliance/SKILL.md +63 -0
  128. package/skills/cometchat-flutter-v5-sdk/SKILL.md +188 -0
  129. package/skills/cometchat-flutter-v5-sdk/references/doc-corrections.md +55 -0
  130. package/skills/cometchat-flutter-v5-sdk/references/docs-map.md +211 -0
  131. package/skills/cometchat-flutter-v5-sdk/references/platform-notes.md +48 -0
  132. package/skills/cometchat-flutter-v5-sdk/references/transcription.md +87 -0
  133. package/skills/cometchat-flutter-v6-calls/SKILL.md +75 -389
  134. package/skills/cometchat-flutter-v6-components/SKILL.md +88 -361
  135. package/skills/cometchat-flutter-v6-core/SKILL.md +154 -593
  136. package/skills/cometchat-flutter-v6-core/references/anti-patterns.md +55 -0
  137. package/skills/cometchat-flutter-v6-core/references/docs-map.md +143 -0
  138. package/skills/cometchat-flutter-v6-core/references/layout.md +45 -0
  139. package/skills/cometchat-flutter-v6-core/references/lifecycle.md +87 -0
  140. package/skills/cometchat-flutter-v6-core/references/setup-credentials.md +84 -0
  141. package/skills/cometchat-flutter-v6-core/references/troubleshooting.md +26 -0
  142. package/skills/cometchat-flutter-v6-customization/SKILL.md +70 -712
  143. package/skills/cometchat-flutter-v6-events/SKILL.md +79 -174
  144. package/skills/cometchat-flutter-v6-features/SKILL.md +55 -394
  145. package/skills/cometchat-flutter-v6-migration/SKILL.md +68 -367
  146. package/skills/cometchat-flutter-v6-migration/references/migration-guide.md +132 -0
  147. package/skills/cometchat-flutter-v6-patterns/SKILL.md +61 -0
  148. package/skills/cometchat-flutter-v6-placement/SKILL.md +94 -381
  149. package/skills/cometchat-flutter-v6-production/SKILL.md +59 -615
  150. package/skills/cometchat-flutter-v6-push/SKILL.md +46 -455
  151. package/skills/cometchat-flutter-v6-testing/SKILL.md +68 -299
  152. package/skills/cometchat-flutter-v6-troubleshooting/SKILL.md +54 -878
  153. package/skills/cometchat-i18n/SKILL.md +35 -404
  154. package/skills/cometchat-ios-calls/SKILL.md +112 -563
  155. package/skills/cometchat-ios-components/SKILL.md +44 -834
  156. package/skills/cometchat-ios-core/SKILL.md +182 -1068
  157. package/skills/cometchat-ios-core/references/anti-patterns.md +113 -0
  158. package/skills/cometchat-ios-core/references/docs-map.md +124 -0
  159. package/skills/cometchat-ios-core/references/install.md +23 -0
  160. package/skills/cometchat-ios-core/references/layout.md +219 -0
  161. package/skills/cometchat-ios-core/references/setup-credentials.md +197 -0
  162. package/skills/cometchat-ios-core/references/swiftui.md +91 -0
  163. package/skills/cometchat-ios-core/references/troubleshooting.md +100 -0
  164. package/skills/cometchat-ios-customization/SKILL.md +33 -968
  165. package/skills/cometchat-ios-features/SKILL.md +29 -738
  166. package/skills/cometchat-ios-migration/SKILL.md +39 -0
  167. package/skills/cometchat-ios-placement/SKILL.md +51 -729
  168. package/skills/cometchat-ios-production/SKILL.md +67 -723
  169. package/skills/cometchat-ios-push/SKILL.md +24 -602
  170. package/skills/cometchat-ios-testing/SKILL.md +36 -355
  171. package/skills/cometchat-ios-troubleshooting/SKILL.md +31 -989
  172. package/skills/cometchat-ios-v5-sdk/SKILL.md +161 -0
  173. package/skills/cometchat-ios-v5-sdk/references/docs-map.md +326 -0
  174. package/skills/cometchat-js-v5-sdk/SKILL.md +95 -0
  175. package/skills/cometchat-js-v5-sdk/references/docs-map.md +114 -0
  176. package/skills/cometchat-migrate-from-getstream/SKILL.md +65 -0
  177. package/skills/cometchat-migrate-from-getstream/references/concept-map.md +98 -0
  178. package/skills/cometchat-migrate-from-getstream/references/data-migration.md +74 -0
  179. package/skills/cometchat-migrate-from-getstream/references/feature-map.md +108 -0
  180. package/skills/cometchat-migrate-from-getstream/references/inventory.md +82 -0
  181. package/skills/cometchat-migrate-from-getstream/references/native-build.md +9 -0
  182. package/skills/cometchat-migrate-from-getstream/references/report-template.md +59 -0
  183. package/skills/cometchat-migrate-from-sendbird/SKILL.md +64 -0
  184. package/skills/cometchat-migrate-from-sendbird/references/concept-map.md +99 -0
  185. package/skills/cometchat-migrate-from-sendbird/references/data-migration.md +74 -0
  186. package/skills/cometchat-migrate-from-sendbird/references/feature-map.md +104 -0
  187. package/skills/cometchat-migrate-from-sendbird/references/inventory.md +86 -0
  188. package/skills/cometchat-migrate-from-sendbird/references/native-build.md +10 -0
  189. package/skills/cometchat-migrate-from-sendbird/references/report-template.md +59 -0
  190. package/skills/cometchat-migrate-from-twilio/SKILL.md +52 -0
  191. package/skills/cometchat-migrate-from-twilio/references/concept-map.md +49 -0
  192. package/skills/cometchat-migrate-from-twilio/references/data-migration.md +50 -0
  193. package/skills/cometchat-migrate-from-twilio/references/feature-map.md +27 -0
  194. package/skills/cometchat-migrate-from-twilio/references/inventory.md +53 -0
  195. package/skills/cometchat-migrate-from-twilio/references/report-template.md +52 -0
  196. package/skills/cometchat-moderation/SKILL.md +58 -0
  197. package/skills/cometchat-onboarding/SKILL.md +92 -0
  198. package/skills/cometchat-onboarding/references/archetypes.md +51 -0
  199. package/skills/cometchat-onboarding/references/calling-first.md +77 -0
  200. package/skills/cometchat-onboarding/references/not-in-this-pack.md +8 -0
  201. package/skills/cometchat-onboarding/references/plan-artifact.md +133 -0
  202. package/skills/cometchat-onboarding/references/platforms.md +105 -0
  203. package/skills/cometchat-react-native-bare-patterns/SKILL.md +120 -0
  204. package/skills/cometchat-react-native-calls/SKILL.md +200 -0
  205. package/skills/cometchat-react-native-components/SKILL.md +142 -0
  206. package/skills/cometchat-react-native-core/SKILL.md +335 -0
  207. package/skills/cometchat-react-native-core/references/anti-patterns.md +79 -0
  208. package/skills/cometchat-react-native-core/references/component-props.md +105 -0
  209. package/skills/cometchat-react-native-core/references/dependencies.md +62 -0
  210. package/skills/cometchat-react-native-core/references/docs-map.md +127 -0
  211. package/skills/cometchat-react-native-core/references/layout.md +61 -0
  212. package/skills/cometchat-react-native-core/references/lifecycle.md +64 -0
  213. package/skills/cometchat-react-native-core/references/setup-credentials.md +39 -0
  214. package/skills/cometchat-react-native-customization/SKILL.md +198 -0
  215. package/skills/cometchat-react-native-expo-patterns/SKILL.md +116 -0
  216. package/skills/cometchat-react-native-features/SKILL.md +122 -0
  217. package/skills/cometchat-react-native-migration/SKILL.md +103 -0
  218. package/skills/cometchat-react-native-placement/SKILL.md +158 -0
  219. package/skills/cometchat-react-native-production/SKILL.md +79 -0
  220. package/skills/cometchat-react-native-push/SKILL.md +88 -0
  221. package/skills/cometchat-react-native-sdk/SKILL.md +133 -0
  222. package/skills/cometchat-react-native-sdk/references/method-map.md +239 -0
  223. package/skills/cometchat-react-native-sdk/references/page-map.md +96 -0
  224. package/skills/cometchat-react-native-testing/SKILL.md +94 -0
  225. package/skills/cometchat-react-native-troubleshooting/SKILL.md +174 -0
  226. package/skills/cometchat-react-native-v5-sdk/SKILL.md +150 -0
  227. package/skills/cometchat-react-native-v5-sdk/references/docs-map.md +127 -0
  228. package/skills/cometchat-react-native-v5-sdk/references/ringing-voip.md +369 -0
  229. package/skills/cometchat-react-v7-calls/SKILL.md +75 -0
  230. package/skills/cometchat-react-v7-components/SKILL.md +72 -0
  231. package/skills/cometchat-react-v7-core/SKILL.md +101 -0
  232. package/skills/cometchat-react-v7-core/references/anti-patterns.md +19 -0
  233. package/skills/cometchat-react-v7-core/references/component-props.md +82 -0
  234. package/skills/cometchat-react-v7-core/references/dependencies.md +23 -0
  235. package/skills/cometchat-react-v7-core/references/docs-map.md +117 -0
  236. package/skills/cometchat-react-v7-core/references/layout.md +150 -0
  237. package/skills/cometchat-react-v7-core/references/lifecycle.md +74 -0
  238. package/skills/cometchat-react-v7-core/references/setup-credentials.md +58 -0
  239. package/skills/cometchat-react-v7-core/references/ssr.md +11 -0
  240. package/skills/cometchat-react-v7-core/references/theming.md +52 -0
  241. package/skills/cometchat-react-v7-customization/SKILL.md +84 -0
  242. package/skills/cometchat-react-v7-features/SKILL.md +92 -0
  243. package/skills/cometchat-react-v7-migration/SKILL.md +39 -0
  244. package/skills/cometchat-react-v7-migration/references/migration-guide.md +119 -0
  245. package/skills/cometchat-react-v7-patterns/SKILL.md +43 -0
  246. package/skills/cometchat-react-v7-placement/SKILL.md +106 -0
  247. package/skills/cometchat-react-v7-placement/references/recipes.md +354 -0
  248. package/skills/cometchat-react-v7-production/SKILL.md +84 -0
  249. package/skills/cometchat-react-v7-push/SKILL.md +53 -0
  250. package/skills/cometchat-react-v7-testing/SKILL.md +60 -0
  251. package/skills/cometchat-react-v7-troubleshooting/SKILL.md +47 -0
  252. package/skills/cometchat-security/SKILL.md +80 -0
  253. package/skills/cometchat-self-host/SKILL.md +56 -0
  254. package/test-suite/README.md +70 -0
  255. package/test-suite/catalogs/android-calls-v5.json +830 -0
  256. package/test-suite/catalogs/android-calls-v5.symbols.txt +499 -0
  257. package/test-suite/catalogs/android-v6.json +1646 -0
  258. package/test-suite/catalogs/android-v6.symbols.txt +298 -0
  259. package/test-suite/catalogs/angular-v5.json +7587 -0
  260. package/test-suite/catalogs/flutter-calls-v5.json +196 -0
  261. package/test-suite/catalogs/flutter-calls-v5.symbols.txt +59 -0
  262. package/test-suite/catalogs/flutter-v6.json +651 -0
  263. package/test-suite/catalogs/ios-calls-v5.json +158 -0
  264. package/test-suite/catalogs/ios-calls-v5.symbols.txt +70 -0
  265. package/test-suite/catalogs/ios-v5.json +1383 -0
  266. package/test-suite/catalogs/ios-v5.symbols.txt +699 -0
  267. package/test-suite/catalogs/rn-calls-v5.json +134 -0
  268. package/test-suite/catalogs/rn-sdk-v4.json +672 -0
  269. package/test-suite/catalogs/rn-v5.json +449 -0
  270. package/test-suite/catalogs/sdk-android-v5.json +514 -0
  271. package/test-suite/catalogs/sdk-android-v5.symbols.txt +254 -0
  272. package/test-suite/catalogs/sdk-jsv4.json +800 -0
  273. package/test-suite/catalogs/web-calls-v5.json +195 -0
  274. package/test-suite/catalogs/web-v7.json +1243 -0
  275. package/test-suite/scripts/build-registry.mjs +113 -0
  276. package/test-suite/scripts/catalog-refresh-dart.mjs +151 -0
  277. package/test-suite/scripts/catalog-refresh.mjs +100 -0
  278. package/test-suite/scripts/lint-skills.mjs +932 -0
  279. package/test-suite/scripts/measure-tokens.mjs +169 -0
  280. package/test-suite/scripts/typecheck-fences-dart.mjs +437 -0
  281. package/test-suite/scripts/typecheck-fences-kotlin.mjs +269 -0
  282. package/test-suite/scripts/typecheck-fences.mjs +206 -0
  283. package/test-suite/scripts/verify-catalog.mjs +242 -0
  284. package/test-suite/scripts/verify-contract-fences.mjs +94 -0
  285. package/test-suite/scripts/verify-detection.mjs +178 -0
  286. package/test-suite/scripts/verify-docs-base.mjs +91 -0
  287. package/test-suite/scripts/verify-family-agnostic.mjs +134 -0
  288. package/test-suite/scripts/verify-golden-path.mjs +138 -0
  289. package/test-suite/scripts/verify-oracle-components.mjs +133 -0
  290. package/test-suite/scripts/verify-template-bindings.mjs +148 -0
  291. package/test-suite/typecheck/angular-v5/package.json +21 -0
  292. package/test-suite/typecheck/angular-v5/tsconfig.json +21 -0
  293. package/test-suite/typecheck/flutter-v6/analysis_options.yaml +25 -0
  294. package/test-suite/typecheck/flutter-v6/pubspec.yaml +21 -0
  295. package/test-suite/typecheck/web-v7/package.json +18 -0
  296. package/test-suite/typecheck/web-v7/tsconfig.json +19 -0
  297. package/bin/install.js +0 -1003
  298. package/skills/.claude-plugin/marketplace.json +0 -86
  299. package/skills/cometchat/references/asking-questions.md +0 -48
  300. package/skills/cometchat-android-v5/SKILL.md +0 -121
  301. package/skills/cometchat-android-v5-calls/SKILL.md +0 -429
  302. package/skills/cometchat-android-v5-calls/references/README.md +0 -53
  303. package/skills/cometchat-android-v5-calls/references/add-calls-to-existing-chat.md +0 -197
  304. package/skills/cometchat-android-v5-calls/references/audio-controls.md +0 -91
  305. package/skills/cometchat-android-v5-calls/references/background-handling.md +0 -168
  306. package/skills/cometchat-android-v5-calls/references/call-layouts.md +0 -131
  307. package/skills/cometchat-android-v5-calls/references/call-logs.md +0 -113
  308. package/skills/cometchat-android-v5-calls/references/call-session.md +0 -274
  309. package/skills/cometchat-android-v5-calls/references/custom-ui.md +0 -150
  310. package/skills/cometchat-android-v5-calls/references/event-listeners.md +0 -123
  311. package/skills/cometchat-android-v5-calls/references/group-calls.md +0 -205
  312. package/skills/cometchat-android-v5-calls/references/idle-timeout.md +0 -117
  313. package/skills/cometchat-android-v5-calls/references/in-call-chat.md +0 -134
  314. package/skills/cometchat-android-v5-calls/references/join-session.md +0 -120
  315. package/skills/cometchat-android-v5-calls/references/migration-v4-to-v5.md +0 -222
  316. package/skills/cometchat-android-v5-calls/references/participant-management.md +0 -110
  317. package/skills/cometchat-android-v5-calls/references/picture-in-picture.md +0 -106
  318. package/skills/cometchat-android-v5-calls/references/raise-hand.md +0 -248
  319. package/skills/cometchat-android-v5-calls/references/recording.md +0 -101
  320. package/skills/cometchat-android-v5-calls/references/ringing-integration.md +0 -152
  321. package/skills/cometchat-android-v5-calls/references/screen-sharing.md +0 -78
  322. package/skills/cometchat-android-v5-calls/references/server-fcm-voip.md +0 -215
  323. package/skills/cometchat-android-v5-calls/references/session-settings.md +0 -121
  324. package/skills/cometchat-android-v5-calls/references/setup.md +0 -137
  325. package/skills/cometchat-android-v5-calls/references/share-invite.md +0 -156
  326. package/skills/cometchat-android-v5-calls/references/video-controls.md +0 -87
  327. package/skills/cometchat-android-v5-calls/references/voip-calling.md +0 -526
  328. package/skills/cometchat-android-v5-components/SKILL.md +0 -431
  329. package/skills/cometchat-android-v5-core/SKILL.md +0 -486
  330. package/skills/cometchat-android-v5-customization/SKILL.md +0 -469
  331. package/skills/cometchat-android-v5-extensions/SKILL.md +0 -127
  332. package/skills/cometchat-android-v5-features/SKILL.md +0 -131
  333. package/skills/cometchat-android-v5-placement/SKILL.md +0 -277
  334. package/skills/cometchat-android-v5-production/SKILL.md +0 -95
  335. package/skills/cometchat-android-v5-push/SKILL.md +0 -619
  336. package/skills/cometchat-android-v5-testing/SKILL.md +0 -188
  337. package/skills/cometchat-android-v5-theming/SKILL.md +0 -167
  338. package/skills/cometchat-android-v5-troubleshooting/SKILL.md +0 -74
  339. package/skills/cometchat-android-v6/SKILL.md +0 -108
  340. package/skills/cometchat-android-v6-calls/references/add-calls-to-existing-chat.md +0 -97
  341. package/skills/cometchat-android-v6-calls/references/advanced-features.md +0 -87
  342. package/skills/cometchat-android-v6-calls/references/call-layouts.md +0 -100
  343. package/skills/cometchat-android-v6-calls/references/call-session.md +0 -163
  344. package/skills/cometchat-android-v6-calls/references/device-management.md +0 -172
  345. package/skills/cometchat-android-v6-calls/references/group-calls.md +0 -191
  346. package/skills/cometchat-android-v6-calls/references/idle-timeout.md +0 -110
  347. package/skills/cometchat-android-v6-calls/references/in-call-chat.md +0 -141
  348. package/skills/cometchat-android-v6-calls/references/raise-hand.md +0 -188
  349. package/skills/cometchat-android-v6-calls/references/ringing-integration.md +0 -176
  350. package/skills/cometchat-android-v6-calls/references/server-fcm-voip.md +0 -127
  351. package/skills/cometchat-android-v6-calls/references/share-invite.md +0 -105
  352. package/skills/cometchat-android-v6-compose-theming/SKILL.md +0 -250
  353. package/skills/cometchat-android-v6-kotlin-theming/SKILL.md +0 -233
  354. package/skills/cometchat-angular-calls/SKILL.md +0 -380
  355. package/skills/cometchat-angular-calls/references/add-calls-to-existing-chat.md +0 -96
  356. package/skills/cometchat-angular-calls/references/call-layouts.md +0 -123
  357. package/skills/cometchat-angular-calls/references/call-session.md +0 -167
  358. package/skills/cometchat-angular-calls/references/custom-ui.md +0 -239
  359. package/skills/cometchat-angular-calls/references/device-management.md +0 -154
  360. package/skills/cometchat-angular-calls/references/group-calls.md +0 -433
  361. package/skills/cometchat-angular-calls/references/idle-timeout.md +0 -161
  362. package/skills/cometchat-angular-calls/references/in-call-chat.md +0 -148
  363. package/skills/cometchat-angular-calls/references/lazy-loading-pitfalls.md +0 -205
  364. package/skills/cometchat-angular-calls/references/migration-v4-to-v5.md +0 -53
  365. package/skills/cometchat-angular-calls/references/ngzone-and-async-callbacks.md +0 -184
  366. package/skills/cometchat-angular-calls/references/picture-in-picture.md +0 -285
  367. package/skills/cometchat-angular-calls/references/raise-hand.md +0 -172
  368. package/skills/cometchat-angular-calls/references/recording-screen-share.md +0 -260
  369. package/skills/cometchat-angular-calls/references/ringing-integration.md +0 -133
  370. package/skills/cometchat-angular-calls/references/server-web-push-vapid.md +0 -100
  371. package/skills/cometchat-angular-calls/references/share-invite.md +0 -122
  372. package/skills/cometchat-angular-calls/references/virtual-background.md +0 -29
  373. package/skills/cometchat-angular-components/SKILL.md +0 -235
  374. package/skills/cometchat-angular-core/SKILL.md +0 -386
  375. package/skills/cometchat-angular-customization/SKILL.md +0 -616
  376. package/skills/cometchat-angular-features/SKILL.md +0 -329
  377. package/skills/cometchat-angular-patterns/SKILL.md +0 -256
  378. package/skills/cometchat-angular-placement/SKILL.md +0 -314
  379. package/skills/cometchat-angular-production/SKILL.md +0 -564
  380. package/skills/cometchat-angular-push/SKILL.md +0 -389
  381. package/skills/cometchat-angular-testing/SKILL.md +0 -605
  382. package/skills/cometchat-angular-theming/SKILL.md +0 -290
  383. package/skills/cometchat-angular-troubleshooting/SKILL.md +0 -364
  384. package/skills/cometchat-astro-patterns/SKILL.md +0 -708
  385. package/skills/cometchat-calls/SKILL.md +0 -364
  386. package/skills/cometchat-calls/references/use-case-broadcast.md +0 -199
  387. package/skills/cometchat-calls/references/use-case-marketplace.md +0 -157
  388. package/skills/cometchat-calls/references/use-case-support.md +0 -189
  389. package/skills/cometchat-calls/references/use-case-team.md +0 -180
  390. package/skills/cometchat-calls/references/use-case-telehealth.md +0 -153
  391. package/skills/cometchat-components/SKILL.md +0 -1142
  392. package/skills/cometchat-core/SKILL.md +0 -1048
  393. package/skills/cometchat-customization/SKILL.md +0 -580
  394. package/skills/cometchat-customization/references/component-catalog.md +0 -236
  395. package/skills/cometchat-features/SKILL.md +0 -861
  396. package/skills/cometchat-flutter-v5/SKILL.md +0 -173
  397. package/skills/cometchat-flutter-v5-calls/SKILL.md +0 -455
  398. package/skills/cometchat-flutter-v5-calls/references/add-calls-to-existing-chat.md +0 -193
  399. package/skills/cometchat-flutter-v5-calls/references/call-layouts.md +0 -103
  400. package/skills/cometchat-flutter-v5-calls/references/call-session.md +0 -285
  401. package/skills/cometchat-flutter-v5-calls/references/device-management.md +0 -124
  402. package/skills/cometchat-flutter-v5-calls/references/group-calls.md +0 -181
  403. package/skills/cometchat-flutter-v5-calls/references/idle-timeout.md +0 -99
  404. package/skills/cometchat-flutter-v5-calls/references/in-call-chat.md +0 -135
  405. package/skills/cometchat-flutter-v5-calls/references/migration-v4-to-v5.md +0 -210
  406. package/skills/cometchat-flutter-v5-calls/references/raise-hand.md +0 -255
  407. package/skills/cometchat-flutter-v5-calls/references/ringing-integration.md +0 -196
  408. package/skills/cometchat-flutter-v5-calls/references/server-push-bridge.md +0 -101
  409. package/skills/cometchat-flutter-v5-calls/references/share-invite.md +0 -148
  410. package/skills/cometchat-flutter-v5-conversations/SKILL.md +0 -118
  411. package/skills/cometchat-flutter-v5-core/SKILL.md +0 -239
  412. package/skills/cometchat-flutter-v5-customization/SKILL.md +0 -358
  413. package/skills/cometchat-flutter-v5-events/SKILL.md +0 -156
  414. package/skills/cometchat-flutter-v5-messages/SKILL.md +0 -259
  415. package/skills/cometchat-flutter-v5-production/SKILL.md +0 -216
  416. package/skills/cometchat-flutter-v5-push/SKILL.md +0 -285
  417. package/skills/cometchat-flutter-v5-testing/SKILL.md +0 -401
  418. package/skills/cometchat-flutter-v5-theming/SKILL.md +0 -161
  419. package/skills/cometchat-flutter-v5-troubleshooting/SKILL.md +0 -130
  420. package/skills/cometchat-flutter-v5-users-groups/SKILL.md +0 -152
  421. package/skills/cometchat-flutter-v6/SKILL.md +0 -446
  422. package/skills/cometchat-flutter-v6-calls/references/add-calls-to-existing-chat.md +0 -136
  423. package/skills/cometchat-flutter-v6-calls/references/advanced-features.md +0 -89
  424. package/skills/cometchat-flutter-v6-calls/references/call-layouts.md +0 -105
  425. package/skills/cometchat-flutter-v6-calls/references/call-session.md +0 -229
  426. package/skills/cometchat-flutter-v6-calls/references/device-management.md +0 -105
  427. package/skills/cometchat-flutter-v6-calls/references/group-calls.md +0 -190
  428. package/skills/cometchat-flutter-v6-calls/references/idle-timeout.md +0 -88
  429. package/skills/cometchat-flutter-v6-calls/references/in-call-chat.md +0 -125
  430. package/skills/cometchat-flutter-v6-calls/references/raise-hand.md +0 -275
  431. package/skills/cometchat-flutter-v6-calls/references/ringing-integration.md +0 -171
  432. package/skills/cometchat-flutter-v6-calls/references/server-push-bridge.md +0 -93
  433. package/skills/cometchat-flutter-v6-calls/references/share-invite.md +0 -102
  434. package/skills/cometchat-flutter-v6-conversations/SKILL.md +0 -238
  435. package/skills/cometchat-flutter-v6-messages/SKILL.md +0 -384
  436. package/skills/cometchat-flutter-v6-theming/SKILL.md +0 -293
  437. package/skills/cometchat-flutter-v6-users-groups/SKILL.md +0 -224
  438. package/skills/cometchat-ios/SKILL.md +0 -325
  439. package/skills/cometchat-ios-calls/references/add-calls-to-existing-chat.md +0 -181
  440. package/skills/cometchat-ios-calls/references/audio-modes-and-controls.md +0 -45
  441. package/skills/cometchat-ios-calls/references/avaudiosession-routing.md +0 -188
  442. package/skills/cometchat-ios-calls/references/call-layouts.md +0 -76
  443. package/skills/cometchat-ios-calls/references/call-session.md +0 -218
  444. package/skills/cometchat-ios-calls/references/callkit-and-pushkit.md +0 -357
  445. package/skills/cometchat-ios-calls/references/custom-ui.md +0 -322
  446. package/skills/cometchat-ios-calls/references/device-management.md +0 -171
  447. package/skills/cometchat-ios-calls/references/group-calls.md +0 -359
  448. package/skills/cometchat-ios-calls/references/idle-timeout.md +0 -184
  449. package/skills/cometchat-ios-calls/references/in-call-chat.md +0 -179
  450. package/skills/cometchat-ios-calls/references/migration-v4-to-v5.md +0 -196
  451. package/skills/cometchat-ios-calls/references/picture-in-picture.md +0 -246
  452. package/skills/cometchat-ios-calls/references/raise-hand.md +0 -26
  453. package/skills/cometchat-ios-calls/references/recording-screen-share.md +0 -252
  454. package/skills/cometchat-ios-calls/references/ringing-integration.md +0 -143
  455. package/skills/cometchat-ios-calls/references/server-apns-pushkit.md +0 -267
  456. package/skills/cometchat-ios-calls/references/share-invite.md +0 -148
  457. package/skills/cometchat-ios-calls/references/swiftui-uikit-hosting.md +0 -246
  458. package/skills/cometchat-ios-calls/references/voip-cert-setup.md +0 -166
  459. package/skills/cometchat-ios-theming/SKILL.md +0 -667
  460. package/skills/cometchat-native-bare-patterns/SKILL.md +0 -550
  461. package/skills/cometchat-native-calls/SKILL.md +0 -671
  462. package/skills/cometchat-native-calls/references/add-calls-to-existing-chat.md +0 -203
  463. package/skills/cometchat-native-calls/references/call-layouts.md +0 -125
  464. package/skills/cometchat-native-calls/references/call-session.md +0 -182
  465. package/skills/cometchat-native-calls/references/custom-ui.md +0 -254
  466. package/skills/cometchat-native-calls/references/device-management.md +0 -158
  467. package/skills/cometchat-native-calls/references/expo-vs-bare.md +0 -179
  468. package/skills/cometchat-native-calls/references/group-calls.md +0 -296
  469. package/skills/cometchat-native-calls/references/idle-timeout.md +0 -128
  470. package/skills/cometchat-native-calls/references/in-call-chat.md +0 -145
  471. package/skills/cometchat-native-calls/references/migration-v4-to-v5.md +0 -72
  472. package/skills/cometchat-native-calls/references/picture-in-picture.md +0 -276
  473. package/skills/cometchat-native-calls/references/raise-hand.md +0 -205
  474. package/skills/cometchat-native-calls/references/recording-screen-share.md +0 -169
  475. package/skills/cometchat-native-calls/references/ringing-integration.md +0 -118
  476. package/skills/cometchat-native-calls/references/server-push-bridge.md +0 -135
  477. package/skills/cometchat-native-calls/references/server-push-payloads.md +0 -193
  478. package/skills/cometchat-native-calls/references/share-invite.md +0 -146
  479. package/skills/cometchat-native-calls/references/voip-push-end-to-end.md +0 -319
  480. package/skills/cometchat-native-components/SKILL.md +0 -628
  481. package/skills/cometchat-native-core/SKILL.md +0 -679
  482. package/skills/cometchat-native-customization/SKILL.md +0 -716
  483. package/skills/cometchat-native-expo-patterns/SKILL.md +0 -552
  484. package/skills/cometchat-native-features/SKILL.md +0 -638
  485. package/skills/cometchat-native-placement/SKILL.md +0 -509
  486. package/skills/cometchat-native-production/SKILL.md +0 -700
  487. package/skills/cometchat-native-push/SKILL.md +0 -594
  488. package/skills/cometchat-native-testing/SKILL.md +0 -582
  489. package/skills/cometchat-native-theming/SKILL.md +0 -681
  490. package/skills/cometchat-native-troubleshooting/SKILL.md +0 -501
  491. package/skills/cometchat-nextjs-patterns/SKILL.md +0 -899
  492. package/skills/cometchat-placement/SKILL.md +0 -1360
  493. package/skills/cometchat-production/SKILL.md +0 -1027
  494. package/skills/cometchat-react-calls/SKILL.md +0 -752
  495. package/skills/cometchat-react-calls/references/add-calls-to-existing-chat.md +0 -146
  496. package/skills/cometchat-react-calls/references/call-layouts.md +0 -160
  497. package/skills/cometchat-react-calls/references/call-session.md +0 -235
  498. package/skills/cometchat-react-calls/references/custom-ui.md +0 -247
  499. package/skills/cometchat-react-calls/references/device-management.md +0 -210
  500. package/skills/cometchat-react-calls/references/group-calls.md +0 -257
  501. package/skills/cometchat-react-calls/references/idle-timeout.md +0 -188
  502. package/skills/cometchat-react-calls/references/in-call-chat.md +0 -212
  503. package/skills/cometchat-react-calls/references/migration-v4-to-v5.md +0 -170
  504. package/skills/cometchat-react-calls/references/picture-in-picture.md +0 -245
  505. package/skills/cometchat-react-calls/references/raise-hand.md +0 -238
  506. package/skills/cometchat-react-calls/references/recording-screen-share.md +0 -144
  507. package/skills/cometchat-react-calls/references/ringing-integration.md +0 -255
  508. package/skills/cometchat-react-calls/references/server-web-push-vapid.md +0 -241
  509. package/skills/cometchat-react-calls/references/share-invite.md +0 -175
  510. package/skills/cometchat-react-calls/references/testing-calls-on-web.md +0 -216
  511. package/skills/cometchat-react-calls/references/virtual-background.md +0 -32
  512. package/skills/cometchat-react-calls/references/voip-and-web-push.md +0 -165
  513. package/skills/cometchat-react-patterns/SKILL.md +0 -628
  514. package/skills/cometchat-react-push/SKILL.md +0 -634
  515. package/skills/cometchat-react-router-patterns/SKILL.md +0 -758
  516. package/skills/cometchat-react-testing/SKILL.md +0 -413
  517. package/skills/cometchat-theming/SKILL.md +0 -498
  518. package/skills/cometchat-troubleshooting/SKILL.md +0 -294
@@ -0,0 +1,55 @@
1
+ # anti-patterns — the real bugs, Flutter v6
2
+
3
+ ## Startup
4
+ 1. **Rendering a `CometChat*` widget before `login` succeeds** → blank screen or a listener exception. Gate
5
+ the first frame (`lifecycle.md`).
6
+ 2. **Missing `WidgetsFlutterBinding.ensureInitialized()`** → `initFromSettings` cannot read the settings
7
+ asset through `rootBundle`; first-run crash.
8
+ 3. **`init` inside a screen's `initState`** that can be re-entered → repeated init, raced Calls-SDK routing.
9
+ 4. **Using `init()` + `UIKitSettingsBuilder` instead of `initFromSettings()`** → loses
10
+ `integrationSource="ai-agent"` telemetry attribution (`RULES.md` §5). The docs still show the old path.
11
+ 5. **A REAL Auth Key committed in `cometchat-settings.json`** → the key is in your repo history. Do NOT fix this by gitignoring the file — it is a registered Flutter asset, so a fresh clone / CI `flutter build bundle` then fails with *"No file or variants found for asset."* Commit a **placeholder** `cometchat-settings.json` (empty/placeholder `authKey`) that dev and CI overwrite locally; guard the real key with a pre-commit/CI check.
12
+ 6. **Auth Key in a production build** → it authenticates *any* user. Prod is `loginWithAuthToken` with a
13
+ server-minted token.
14
+ 7. **Inventing a UID.** `login` requires a user that already exists. Ask, or read Dashboard → Users.
15
+
16
+ ## Layout
17
+ 8. **A kit list without `Expanded`/`Flexible` in a `Column`** → unbounded-height exception or a zero-height
18
+ list. The single most common Flutter integration failure (`layout.md`).
19
+ 9. **The surface inside a `SingleChildScrollView`** → infinite height constraints; same failure.
20
+ 10. **`resizeToAvoidBottomInset: false`** → the composer disappears under the keyboard.
21
+ 11. **No `Scaffold`/`SafeArea`** → missing `Material` ancestor, or UI under the notch/home indicator.
22
+
23
+ ## v5 carry-overs (all REMOVED in v6 — see `cometchat-flutter-v6-migration`)
24
+ 12. **Registering extensions** — `UIKitSettings.extensions`, `CometChatUIKitChatExtensions`,
25
+ `DataSource`, `ChatConfigurator`, `*ExtensionDecorator`, `CometChatUIKit.getDataSource()`. v6 deleted
26
+ the entire pattern; a dashboard-enabled extension surfaces **automatically** with zero client code.
27
+ Emitting registration is a defect, not a harmless no-op.
28
+ 13. **Combined shell widgets** — `CometChatConversationsWithMessages`, `CometChatUsersWithMessages`,
29
+ `CometChatGroupsWithMessages`, `CometChatMessages`, `CometChatUI`, `CometChatMessenger`,
30
+ `CometChatUserList`, `CometChatContactList`. v6 has **no** shell widget; the host composes screens.
31
+ 14. **GetX controllers** — `CometChatMessagesController`, `CometChatOngoingCallController`. v6 is BLoC.
32
+ 15. **`CometChatCompactMessageComposer`** → one `CometChatMessageComposer`.
33
+
34
+ ## Cross-family contamination
35
+ 16. **Carrying a React name into Flutter.** `CometChatThreadHeader` does not exist here — it is
36
+ `CometChatThreadedHeader`. Nor do `showSearchOption`/`onSearchOptionClicked` on the message header, or
37
+ `onItemClick` on the conversation list (it is **`onItemTap`**). Equally: `CometChatMediaRecorder` DOES
38
+ exist in Flutter though it is a React phantom. **Never reuse another family's symbol or phantom list —
39
+ check `catalogs/flutter-v6.json`.**
40
+ 17. **Importing calls widgets from the chat barrel.** `CometChatIncomingCall`, `CometChatOutgoingCall`,
41
+ `CometChatCallButtons`, `CometChatCallLogs`, `CometChatCallBubble` and `CometChatCalls` resolve ONLY
42
+ from `package:cometchat_chat_uikit/cometchat_calls_uikit.dart`. A calls screen imports **both** barrels.
43
+ 18. **Adding `cometchat_sdk` as a direct dependency to get `User`/`Group`/`TextMessage`.** The kit barrel
44
+ already re-exports the whole Chat SDK.
45
+
46
+ ## Composition
47
+ 19. **Passing `parentMessageId` without `user:`/`group:`** on a thread list/composer → replies silently
48
+ never send. Both are required.
49
+ 20. **A dead-ending affordance.** A search field that opens nothing, or a thread indicator with no
50
+ `onThreadRepliesClick` — wire it to a destination or hide it (`hideSearch`).
51
+ 21. **Hand-rolling what the widget already exposes.** Custom UI belongs in a slot
52
+ (`auxiliaryButtonView` / `trailingView` / `appBarOptions`), never stacked on top of the widget.
53
+ 22. **Client-side filtering the conversation list.** Scope `conversationsRequestBuilder` instead.
54
+ 23. **Hand-rolling moderation or report UI.** Both are automatic in `CometChatMessageList`; the work is in
55
+ the Dashboard.
@@ -0,0 +1,143 @@
1
+ # docs-map — CometChat Flutter v6: intent → the exact docs page to fetch
2
+
3
+ Fetch a page instead of guessing a prop. This file is the map; `SKILL.md` bakes only the hot path.
4
+
5
+ ## Reaching docs — PREFER the CometChat docs MCP; fetch is the fallback
6
+ The canonical doc channel is the **first-party CometChat docs MCP** — tools `search_cometchat_docs`,
7
+ `fetch_cometchat_doc_page`, and `get_cometchat_implementation_bundle`. **If those tools are connected,
8
+ use them instead of a raw web fetch:**
9
+ - **Find the page** → `search_cometchat_docs(query, version?)` — replaces browsing the scoped `llms-*` index.
10
+ - **Read the page** → `fetch_cometchat_doc_page(path)` — pass the SAME `<path>` the tables below list
11
+ (the conversations page path for your platform); the MCP resolves the `.md` twin and returns raw Markdown.
12
+ A full `https://…/docs/<path>` URL also works.
13
+ - **A whole feature/recipe** → `get_cometchat_implementation_bundle(...)` is **NON-AUTHORITATIVE** — curated STATIC recipes that can lag the live docs (verified stale vs v7: e.g. `CometChatConversationsWithMessages`, `css-variables.css`). Treat any bundle as a hint only: RECONCILE it against the `fetch_cometchat_doc_page` result + the pack's hardening; never emit bundle code verbatim.
14
+
15
+ The MCP reads whatever docs environment it is pointed at (production by default; a preview when repointed),
16
+ so it also carries the environment-swap concern below — no hardcoded host on the skill side.
17
+
18
+ **If the MCP tools are NOT connected:** add it (`claude mcp add --transport http cometchat-docs https://mcp.cometchat.com/mcp`, or reinstall/enable the plugin) and retry; only if it still will not connect, fall back to a plain fetch via `DOCS_BASE` (defined next).
19
+ Either way the `<path>` catalog in this file is the source of truth for WHICH page — MCP-vs-fetch is only HOW.
20
+
21
+ ## DOCS_BASE — the fetch FALLBACK entry point (⚠️ SWAP HERE to change environments)
22
+ ```
23
+ DOCS_BASE = https://www.cometchat.com/docs
24
+ ```
25
+ > The ONLY line to change for a preview/staging deploy. Every path below is identical across environments.
26
+ >
27
+ > **Fetch rule:** build a URL as `DOCS_BASE` + the path shown, then append `.md`. Never hardcode a host
28
+ > anywhere else; never read installed Dart source in place of a missing doc (see the DOCS GAP protocol).
29
+
30
+ ## The convention
31
+ `DOCS_BASE` + `<path>` + `.md` → raw Markdown (verbatim code + prop tables).
32
+ ```
33
+ Fetch: {DOCS_BASE}/ui-kit/flutter/conversations.md
34
+ ```
35
+ Fallback order: `.md` twin → the same URL **without** `.md` (HTML) → **DOCS GAP** (below).
36
+
37
+ ## ⚠️ Scoped index — DOES NOT EXIST YET for Flutter (tracked DOCS GAP, go-live dependency)
38
+ ```
39
+ {DOCS_BASE}/ui-kit/flutter/llms.txt → 404 as of 2026-08-21
40
+ {DOCS_BASE}/sdk/flutter/llms.txt → 404 as of 2026-08-21
41
+ ```
42
+ Neither scoped index has been generated. **Until they exist, use the page table below as the index**
43
+ (it was derived from the global index and is complete for this family), and fall back to the global
44
+ all-products index — `{DOCS_BASE}/llms.txt` (large; last resort) — for anything not listed.
45
+ > **Go-live ask (owner: docs):** generate the **scoped UI-Kit `llms.txt` for Flutter v6, including its
46
+ > "Task guides (recipes)" section**, and the **SDK `llms.txt` for the Flutter Chat SDK**. Without them the
47
+ > docs-maximal, guide-first completeness check degrades to component-wiring only. Tracked in `DOCS-BACKLOG.md`.
48
+
49
+ ## `[verified]` signatures — confirmed against the kit AND the live docs
50
+ These signatures were wrong on the live pages when the skill was written (`DOCS-BACKLOG` F1/F2/F3/F5); all four
51
+ were **corrected upstream** and re-verified against `cometchat/docs`@`2ebb1db` (2026-09-09), so the pages now
52
+ AGREE with `SKILL.md`. Kept here as the authoritative signature reference. Re-verify with
53
+ `npm run verify:fences:flutter-v6` if a page ever drifts again.
54
+
55
+ | Symbol | Confirmed signature |
56
+ |---|---|
57
+ | `CometChatThreadedHeader` | `parentMessage:` + required `loggedInUser:` (not `message:`) |
58
+ | `onThreadRepliesClick` | `void Function(BaseMessage, BuildContext, {CometChatMessageTemplate? template})` |
59
+ | `CometChatThreadedHeader` back/error | none — no `onBack:` / `onError:`; back comes from the screen's own `AppBar` |
60
+ | `CometChatSearch` results | `onConversationClicked` / `onMessageClicked` |
61
+ | `getting-started` init | `initFromSettings()` + `cometchat-settings.json` — **deliberately undocumented (F4 WONTFIX)**; this skill is its reference |
62
+
63
+ ## Component docs (intent → path)
64
+ | Intent | Path |
65
+ |---|---|
66
+ | Install · init · login · first screen | `/ui-kit/flutter/getting-started` |
67
+ | What v6 is · architecture | `/ui-kit/flutter/overview` · `/ui-kit/flutter/components-overview` |
68
+ | Conversation list props | `/ui-kit/flutter/conversations` |
69
+ | Message list props | `/ui-kit/flutter/message-list` |
70
+ | Composer props | `/ui-kit/flutter/message-composer` |
71
+ | Message header props | `/ui-kit/flutter/message-header` |
72
+ | Thread screen | `/ui-kit/flutter/threaded-messages-header` (⚠️ see the wrong-pages table) |
73
+ | Search | `/ui-kit/flutter/search` (⚠️ see the wrong-pages table) |
74
+ | Users / Groups / Members | `/ui-kit/flutter/users` · `/groups` · `/group-members` |
75
+ | Calls (incoming/outgoing/logs/buttons) | `/ui-kit/flutter/call-features` · `/incoming-call` · `/outgoing-call` · `/call-logs` · `/call-buttons` |
76
+ | Notification feed | `/ui-kit/flutter/notification-feed` |
77
+ | Push notifications (FCM/APNs setup — `-push`) | `/notifications/push-overview` · `/notifications/flutter-push-notifications-android` · `/notifications/flutter-push-notifications-ios` (NOT the legacy singular `/notifications/flutter-push-notifications`) |
78
+ | Theming — tokens & palette | `/ui-kit/flutter/theme-introduction` · `/color-resources` · `/component-styling` · `/message-bubble-styling` |
79
+ | Customization — slots & behavior | `/ui-kit/flutter/customization-overview` · `-view-slots` · `-state-views` · `-menu-options` · `-bloc-data` · `-datasource` · `-text-formatters` |
80
+ | Custom message types | `/ui-kit/flutter/message-template` |
81
+ | Formatters (mentions / custom / shortcut) | `/ui-kit/flutter/mentions-formatter-guide` · `/custom-text-formatter-guide` · `/shortcut-formatter-guide` |
82
+ | Events (SDK listeners vs UI events) | `/ui-kit/flutter/events` |
83
+ | Extensions (all dashboard-enabled) | `/ui-kit/flutter/extensions` |
84
+ | Localization | `/ui-kit/flutter/localize` |
85
+ | Sounds | `/ui-kit/flutter/sound-manager` |
86
+ | Methods / helpers | `/ui-kit/flutter/methods` |
87
+ | Troubleshooting | `/ui-kit/flutter/troubleshooting` |
88
+ | v5 → v6 upgrade | `/ui-kit/flutter/upgrading-from-v5` |
89
+
90
+ ## Task guides (recipes) — BUILD FROM THESE, then COMPARE (docs-maximal, `RULES.md` §20)
91
+ For a whole task, **build from the guide and compare your implementation against it for completeness**,
92
+ then apply the hardening deltas in `SKILL.md`. **No matching guide? Build the normal way** (wire the
93
+ widgets + fetch props) — the guide is an enhancement, not a prerequisite.
94
+
95
+ | Task | Guide |
96
+ |---|---|
97
+ | Guide index | `/ui-kit/flutter/guide-overview` |
98
+ | One-to-one chat | `/ui-kit/flutter/flutter-one-to-one-chat` |
99
+ | Conversation + messages | `/ui-kit/flutter/flutter-conversation` |
100
+ | Tab-based app (the grow target) | `/ui-kit/flutter/flutter-tab-based-chat` · `/multi-tab-chat-ui-guide` |
101
+ | Group chat | `/ui-kit/flutter/guide-group-chat` |
102
+ | Threaded messages | `/ui-kit/flutter/guide-threaded-messages` (⚠️ signatures wrong — see above) |
103
+ | Start a new chat | `/ui-kit/flutter/guide-new-chat` |
104
+ | Message privately | `/ui-kit/flutter/guide-message-privately` |
105
+ | Block / unblock | `/ui-kit/flutter/guide-block-unblock-user` |
106
+ | Call log details | `/ui-kit/flutter/guide-call-log-details` |
107
+ | AI agentic flow | `/ui-kit/flutter/guide-message-agentic-flow` |
108
+
109
+ ## SDK docs — the FALLBACK reference (so the SDK ALSO works, `RULES.md` §13)
110
+ **UI-Kit first, SDK fallback.** For every feature, first check whether the UI Kit has a widget/prop
111
+ (the table above + the catalog). If it does — use it. If it does NOT (AI agents, campaigns,
112
+ advanced/AI moderation, transient messages, bots, webhooks, banned-members listing, low-level presence)
113
+ — drop to the Flutter Chat SDK and call its method directly. The SDK is **already installed and
114
+ re-exported by the kit barrel**, so `User`, `Group`, `Conversation`, `BaseMessage`, `TextMessage` and the
115
+ `*RequestBuilder` types need no extra import.
116
+ ```
117
+ SDK_DOCS_BASE = https://www.cometchat.com/docs/sdk/flutter
118
+ ```
119
+ | Intent | Path |
120
+ |---|---|
121
+ | Overview · setup · auth | `/overview` · `/setup` · `/authentication-overview` |
122
+ | Send / receive / edit / delete messages | `/messaging-overview` · `/send-message` · `/receive-messages` |
123
+ | Real-time listeners | `/real-time-listeners` · `/connection-status` |
124
+ | Users · presence · block | `/users-overview` · `/user-presence` · `/block-users` |
125
+ | Groups · members · kick/ban | `/groups-overview` · `/group-kick-ban-members` |
126
+ | Conversations & unread | `/conversations-overview` |
127
+ | Threads | `/threaded-messages` |
128
+ | AI agents / chatbots | `/ai-agents` · `/ai-moderation` |
129
+ | Campaigns | `/campaigns` |
130
+ | Push token registration | no `sdk/flutter` page (`/sdk/flutter/push-notifications` 404s) — use the three `/notifications/*` push pages in the component table above |
131
+ | Webhooks | `/webhooks-overview` |
132
+ > Each SDK page carries an **AI Integration Quick Reference** block with method signatures — read that
133
+ > first. The SDK's scoped `llms.txt` does not exist yet (see the index gap above); use this table.
134
+
135
+ ## DOCS GAP protocol (`RULES.md` §20 — never silently source-fill)
136
+ If a prop/method/behavior you need is **absent or wrong** in the docs:
137
+ 1. **Do not** substitute reading installed Dart source as though it were documentation, and do not bake a
138
+ permanent workaround into a skill for what is really a docs bug (AUDIT-072 / CHECKLIST row 24).
139
+ 2. **Verify** the actual behavior by compiling against the pinned kit
140
+ (`npm run verify:fences:flutter-v6` / `test-suite/typecheck/flutter-v6`) — the compiler is the oracle.
141
+ 3. **TELL THE DEVELOPER**: page · section · what's there now · what it should say · why it matters.
142
+ 4. **Record it** in `DOCS-BACKLOG.md` (owner **docs**) + an `AUDIT.md` row, and bake only a clearly-labelled
143
+ temporary stopgap in the skill, citing the backlog entry — exactly as F1–F5 are handled in `SKILL.md`.
@@ -0,0 +1,45 @@
1
+ # layout — the mobile sizing standard (bounded height, safe area, keyboard)
2
+
3
+ The Flutter instance of the pack's reflow-free-surface standard. The web recipe (`100dvh`, `min-height:0`
4
+ columns, prepared ancestor chain) does NOT apply here; the principle does: **the kit's list widgets expand
5
+ to fill their parent, so the parent must supply a bounded height — never let content drive it.**
6
+
7
+ ## The four invariants
8
+
9
+ **1. Bounded height for every list.** `CometChatConversations`, `CometChatMessageList`, `CometChatUsers`,
10
+ `CometChatGroups`, `CometChatGroupMembers` and `CometChatSearch` all want to fill their parent. Inside a
11
+ `Column`, wrap them in `Expanded` (or `Flexible`); otherwise Flutter throws
12
+ *"RenderFlex children have non-zero flex but incoming height constraints are unbounded"* — or the list
13
+ collapses to zero height.
14
+ ```dart
15
+ Widget messagePane(User user) => Column(children: [
16
+ CometChatMessageHeader(user: user),
17
+ Expanded(child: CometChatMessageList(user: user)), // REQUIRED — bounds the list
18
+ CometChatMessageComposer(user: user),
19
+ ]);
20
+ ```
21
+
22
+ **2. Never nest the surface in an unbounded scroll parent.** A `SingleChildScrollView`, a `ListView`, or a
23
+ `Column` inside one gives its children *infinite* height, so a kit list inside it throws or renders
24
+ nothing. If chat must sit inside a scrolling page, give it a **fixed** height (`SizedBox(height: 480)`) or
25
+ a sized cell — a content-driven box is the defect, not the kit.
26
+
27
+ **3. `Scaffold` + `SafeArea`.** The surface belongs in a `Scaffold` (it supplies the `Material` ancestor the
28
+ kit's widgets need) with `SafeArea` so the composer clears the home indicator and the header clears the
29
+ notch. A bare `Container` at the root is the usual cause of "the composer is under the home bar".
30
+
31
+ **4. Keyboard avoidance — leave `resizeToAvoidBottomInset` alone.** It defaults to `true`, which is what
32
+ keeps `CometChatMessageComposer` above the keyboard. Setting it to `false`, or placing the surface inside a
33
+ widget that swallows the inset, hides the input the moment the user types. If the composer is covered:
34
+ check for `resizeToAvoidBottomInset: false`, a nested `Scaffold`, or a manual `MediaQuery.viewInsets` hack.
35
+
36
+ ## No load-transition reflow
37
+ The kit ships its own loading and empty states, so give it the full box immediately and let it render its
38
+ loader **inside** that box. Do not gate the whole screen behind your own placeholder→chat swap sized
39
+ differently from the final surface — that is what makes the UI jump when messages arrive. (The init/login
40
+ gate in `lifecycle.md` is different and correct: it runs *before* the chat screen exists at all.)
41
+
42
+ ## Embedded / modal placements
43
+ A bottom sheet, dialog, or embedded panel must still supply a bounded height — `showModalBottomSheet` with
44
+ a `SizedBox(height: MediaQuery.of(context).size.height * 0.9)`, or a `Container` with a fixed height.
45
+ Recipes: `cometchat-flutter-v6-placement`.
@@ -0,0 +1,87 @@
1
+ # lifecycle — init once, login, gate the first frame, log out
2
+
3
+ Loaded when the task touches startup, session, or "why is it blank / why did it re-init".
4
+
5
+ ## The invariant
6
+ `initFromSettings()` → `login(uid)` → **only then** render any `CometChat*` widget. Both are async and
7
+ callback-reporting; a widget rendered before login succeeds shows blank or throws.
8
+
9
+ ## Init once — not once per widget, and hot-restart-safe
10
+ Do it at app startup (before `runApp`, or in the root widget's `initState`), never inside a screen that
11
+ can be re-entered. `initFromSettings` reads `cometchat-settings.json` and persists
12
+ `integrationSource="ai-agent"`; calling it twice is wasteful and races the Calls SDK routing.
13
+
14
+ ```dart
15
+ Future<void> main() async {
16
+ WidgetsFlutterBinding.ensureInitialized(); // REQUIRED before any plugin/asset access
17
+ runApp(const MyApp()); // init happens inside the gate widget below
18
+ }
19
+ ```
20
+ > `WidgetsFlutterBinding.ensureInitialized()` is mandatory — `initFromSettings` loads an asset through
21
+ > `rootBundle`, which needs the binding. Omitting it is a common first-run crash.
22
+
23
+ ## Gate the first frame (the pattern that prevents the blank screen)
24
+ Hold the app on a loader until init AND login have both reported success; only then build the chat.
25
+ Keep the gate at the ROOT so a hot restart re-runs it cleanly.
26
+
27
+ ```dart
28
+ import 'package:cometchat_chat_uikit/cometchat_chat_uikit.dart';
29
+ import 'package:flutter/material.dart';
30
+
31
+ class ChatGate extends StatefulWidget {
32
+ const ChatGate({super.key});
33
+ @override
34
+ State<ChatGate> createState() => _ChatGateState();
35
+ }
36
+
37
+ class _ChatGateState extends State<ChatGate> {
38
+ bool _ready = false;
39
+ String? _error;
40
+
41
+ @override
42
+ void initState() {
43
+ super.initState();
44
+ _start();
45
+ }
46
+
47
+ Future<void> _start() async {
48
+ await CometChatUIKit.initFromSettings(
49
+ onError: (e) => setState(() => _error = e.message),
50
+ );
51
+ if (_error != null) return;
52
+ // Already signed in after a restart? login() no-ops for the same UID.
53
+ await CometChatUIKit.login(
54
+ 'cometchat-uid-1', // ASK for a real UID — never invent one
55
+ onSuccess: (_) => setState(() => _ready = true),
56
+ onError: (e) => setState(() => _error = e.message),
57
+ );
58
+ }
59
+
60
+ @override
61
+ Widget build(BuildContext context) {
62
+ if (_error != null) return Scaffold(body: Center(child: Text('CometChat: $_error')));
63
+ if (!_ready) return const Scaffold(body: Center(child: CircularProgressIndicator()));
64
+ // Only past this point may a CometChat* widget be built.
65
+ return const Scaffold(body: SafeArea(child: CometChatConversations()));
66
+ }
67
+ }
68
+ ```
69
+ > `setState` after an await needs the usual `if (!mounted) return;` guard in real code.
70
+
71
+ ## Who is logged in
72
+ `CometChatUIKit.loggedInUser` is the cached `User?` — the sync getter the thread screen needs
73
+ (`loggedInUser:` is a REQUIRED param on `CometChatThreadedHeader`). It is populated by `login`, so it is
74
+ non-null anywhere behind the gate above. `CometChatUIKit.login` itself calls `getLoggedInUser()` first and
75
+ returns early when that UID is already signed in — **no host-side concurrent-login guard is needed.**
76
+
77
+ ## Production auth — the Auth Key is dev-only
78
+ `login(uid)` uses the Auth Key from the settings file, which means the key ships inside the app bundle.
79
+ That is acceptable for development only. For production:
80
+ 1. Omit `credentials.authKey` from `cometchat-settings.json`.
81
+ 2. Mint a per-user **auth token** on your server (CometChat REST API, using the App's REST key).
82
+ 3. Sign in with `CometChatUIKit.loginWithAuthToken(authToken, onSuccess: …, onError: …)`.
83
+ Say this out loud to the user when you wire the dev path — flag dev-only AS dev-only.
84
+
85
+ ## Logout
86
+ `CometChatUIKit.logout()` clears the session; send the user back to the gate afterwards so a subsequent
87
+ login re-runs cleanly. Do not re-`init` on logout.
@@ -0,0 +1,84 @@
1
+ # setup-credentials — detect, reconcile, fetch, write, authorize
2
+
3
+ The full version of `SKILL.md` §"Setup & credentials". Load when doing first-time setup or debugging auth.
4
+
5
+ ## 1. Detect the project (`npx @cometchat/skills detect --json`, topped up by reading the repo — `RULES.md`)
6
+ Parse, recording `null` rather than guessing when a signal is absent:
7
+
8
+ | Signal | Where |
9
+ |---|---|
10
+ | Flutter/Dart constraints | `pubspec.yaml` → `environment:` |
11
+ | Existing CometChat + **major** | `pubspec.yaml` deps + `pubspec.lock` (`cometchat_chat_uikit`) |
12
+ | State management | deps: `flutter_bloc` · `riverpod` · `provider` · `get` · `mobx` |
13
+ | Navigation | deps/source: `go_router` · `auto_route` · plain `Navigator` |
14
+ | Config strategy | `--dart-define` in run configs · `envied` · `flutter_dotenv` · a constants file |
15
+ | Existing credentials | `cometchat-settings.json` · `.cometchat/config.json` · `--dart-define` keys |
16
+ | App entry | `lib/main.dart` — where `runApp` is, and what wraps it |
17
+ | Platform floors | `android/app/build.gradle.kts` (`minSdk`) · `ios/Podfile` (`platform :ios`) |
18
+
19
+ ## 2. version_conflict — STOP
20
+ A non-v6 `cometchat_chat_uikit` present on an **add** request is a STOP, not a warning: reconcile first,
21
+ never mix majors (`RULES.md`). v5 → v6 is `cometchat-flutter-v6-migration`. If v6 is already wired and
22
+ working, this is a **re-entry** — summarize what exists and ask what to ADD, don't re-run setup.
23
+
24
+ ## 3. Credentials — OFFER the fetch FIRST (never degrade to "paste it yourself")
25
+ **(a) Fetch from the dashboard — the default.** Load the CLI on demand:
26
+ ```bash
27
+ npx @cometchat/skills-cli@3 auth login
28
+ npx @cometchat/skills-cli@3 provision list --json
29
+ npx @cometchat/skills-cli@3 provision use --app-id <id> --json
30
+ ```
31
+ - **Never auto-create an app.** List, show the top few plus a "show all", and ASK which.
32
+ - `provision use` returns App ID / Region / Auth Key **and** writes a neutral `.cometchat/config.json`.
33
+ It does **not** know Flutter — writing the settings asset is the skill's job.
34
+
35
+ **(b) Manual paste** — Dashboard → Your App → Credentials. Use only if the user declines (a) or the CLI
36
+ can't run. Ask and WAIT; never guess a value.
37
+
38
+ ## 4. Write the settings asset
39
+ `cometchat-settings.json` at the **project root** (beside `pubspec.yaml`):
40
+ ```json
41
+ {
42
+ "appId": "APP_ID",
43
+ "region": "REGION",
44
+ "credentials": { "authKey": "AUTH_KEY" },
45
+ "uiKit": { "subscribePresenceForAllUsers": true, "enableCalling": false },
46
+ "chatSDK": { "autoEstablishSocketConnection": true }
47
+ }
48
+ ```
49
+ Register it (exact indentation matters in YAML):
50
+ ```yaml
51
+ flutter:
52
+ uses-material-design: true
53
+ assets:
54
+ - cometchat-settings.json
55
+ ```
56
+ Then: `flutter pub get`. **Do NOT gitignore a registered asset** — a fresh clone / CI `flutter build bundle`
57
+ fails with *"No file or variants found for asset: cometchat-settings.json"* if the file is missing. Instead
58
+ **commit a placeholder `cometchat-settings.json`** (same shape, placeholder/empty `authKey` — never a real
59
+ dev key) so the asset path always resolves, and have each dev and CI overwrite it with real credentials
60
+ locally / at build time. Guard against committing a real key with a pre-commit hook or CI check, not
61
+ `.gitignore`. Never echo the Auth Key back to the user or into logs.
62
+ > Optional keys: `chatSDK.adminHost` / `chatSDK.clientHost` (dedicated/on-prem clusters only).
63
+ > `uiKit.enableCalling` stays `false` until the user asks for calls (→ `cometchat-flutter-v6-calls`).
64
+
65
+ ### If the team already uses `--dart-define` / envied
66
+ The settings **file** is what `initFromSettings` reads — it cannot read `--dart-define`. Two honest options,
67
+ state the trade-off and let the user choose:
68
+ - Keep `initFromSettings` and generate `cometchat-settings.json` at build time from your existing secret
69
+ source (CI writes the file). Keeps telemetry attribution.
70
+ - Or use the classic `UIKitSettingsBuilder` + `CometChatUIKit.init(...)` with `--dart-define` values —
71
+ works, but loses `integrationSource="ai-agent"`. Only if the user prefers it after hearing the trade-off.
72
+
73
+ ## 5. Authorize — confirm it actually worked
74
+ `initFromSettings` reaches `onSuccess`, then `login` reaches `onSuccess` with a `User`. Failure modes:
75
+ - **Wrong Region** — the single most common cause of an immediate auth error. `us` / `eu` / `in`, matching
76
+ the Dashboard exactly.
77
+ - **UID doesn't exist** — `login` needs an existing user (Dashboard → Users; fresh apps seed
78
+ `cometchat-uid-1…`). Never invent one.
79
+ - **Asset not found** — see `troubleshooting.md`.
80
+
81
+ ## 6. Production
82
+ Omit `credentials.authKey`, mint a per-user auth token server-side, and call
83
+ `CometChatUIKit.loginWithAuthToken(...)` (`lifecycle.md`). Tell the user plainly that the Auth Key path you
84
+ wired is dev-only — flag dev-only AS dev-only.
@@ -0,0 +1,26 @@
1
+ # troubleshooting — symptom → cause → fix
2
+
3
+ The first stop when a Flutter integration renders wrong. Live page: `/ui-kit/flutter/troubleshooting`.
4
+
5
+ | Symptom | Likely cause | Fix |
6
+ |---|---|---|
7
+ | Blank/white screen where chat should be | A widget rendered before `login` succeeded | Gate the first frame on init **and** login (`lifecycle.md`) |
8
+ | `Unable to load asset: cometchat-settings.json` | File missing, not at project root, or not registered | Add it and list it under `flutter: assets:` in `pubspec.yaml`; re-run `flutter pub get` |
9
+ | Crash on `initFromSettings` before any UI | `WidgetsFlutterBinding.ensureInitialized()` missing | Call it first in `main()` |
10
+ | `RenderFlex children have non-zero flex but incoming height constraints are unbounded` | A kit list inside an unbounded parent | Wrap in `Expanded`, or give a fixed height (`layout.md`) |
11
+ | The list renders as a zero-height sliver | Same — content-driven parent | Same |
12
+ | Composer hidden by the keyboard | `resizeToAvoidBottomInset: false`, or a nested/absent `Scaffold` | Leave the default `true`; one `Scaffold` per screen |
13
+ | Header under the notch / composer under the home bar | No `SafeArea` | Wrap the body in `SafeArea` |
14
+ | `AUTH_ERR_AUTH_TOKEN_NOT_FOUND` / login fails immediately | Wrong **Region**, or the UID does not exist | Check `region` against the Dashboard; use a real UID from Dashboard → Users |
15
+ | Login fails only in release builds | Auth Key stripped/obfuscated, or no network permission | Verify the settings asset ships; check Android `INTERNET` permission |
16
+ | `Undefined name 'CometChatIncomingCall'` (or any call widget) | Imported only the chat barrel | Also import `package:cometchat_chat_uikit/cometchat_calls_uikit.dart` |
17
+ | Call buttons missing from the message header | Calls not enabled | `uiKit.enableCalling: true` in the settings file **and** `cometchat_calls_sdk` added (→ `-calls`) |
18
+ | Thread replies never appear / never send | `parentMessageId` passed without `user:`/`group:` | Pass BOTH on the thread list *and* composer |
19
+ | `The named parameter 'onBack' isn't defined` on the thread header | Following the docs page | It has no `onBack` — use the screen's `AppBar` (`DOCS-BACKLOG` F5) |
20
+ | `The named parameter 'onConversationItemClick' isn't defined` | Following the search docs page | `onConversationClicked` / `onMessageClicked` (`DOCS-BACKLOG` F3) |
21
+ | An enabled extension (polls/stickers) doesn't appear | Expecting v5-style registration | v6 auto-surfaces it; confirm the Dashboard toggle, add NO client code |
22
+ | Presence/online status never updates | `subscribePresenceForAllUsers` false in settings | Set it `true` (default) |
23
+ | Messages arrive only after reopening the screen | Socket not auto-connecting | `chatSDK.autoEstablishSocketConnection: true` |
24
+ | Android build fails on minSdk | App below the real floor (the docs' 24 is too low) | `minSdk = 26` in `android/app/build.gradle.kts` — forced by `cometchat_calls_sdk`, a hard dependency of the kit |
25
+ | iOS pod install fails | Deployment target too low (the docs' 13.0 is too low on 5.0.7) | `platform :ios, '15.1'` in `ios/Podfile`, then `pod install` |
26
+ | Everything breaks after upgrading from v5 | Mixed majors / removed v5 APIs | → `cometchat-flutter-v6-migration`; never mix majors |