devendra-skill-package 1.0.2

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 (223) hide show
  1. package/.github/skills/boiler-project-generator/SKILL.md +103 -0
  2. package/.github/skills/boiler-project-generator/assets/templates/android/README.md +3 -0
  3. package/.github/skills/boiler-project-generator/assets/templates/angular/README.md +3 -0
  4. package/.github/skills/boiler-project-generator/assets/templates/flutter/README.md +3 -0
  5. package/.github/skills/boiler-project-generator/assets/templates/ios/README.md +3 -0
  6. package/.github/skills/boiler-project-generator/assets/templates/react/README.md +3 -0
  7. package/.github/skills/boiler-project-generator/assets/templates/react-native/README.md +3 -0
  8. package/.github/skills/boiler-project-generator/assets/templates/react-native/api-setup.ts +76 -0
  9. package/.github/skills/boiler-project-generator/assets/templates/react-native/component-primary-button.tsx +29 -0
  10. package/.github/skills/boiler-project-generator/assets/templates/react-native/env-config.env +4 -0
  11. package/.github/skills/boiler-project-generator/assets/templates/react-native/feature-auth-screen.tsx +45 -0
  12. package/.github/skills/boiler-project-generator/assets/templates/react-native/feature-dashboard-screen.tsx +45 -0
  13. package/.github/skills/boiler-project-generator/assets/templates/react-native/feature-profile-screen.tsx +45 -0
  14. package/.github/skills/boiler-project-generator/assets/templates/react-native/hook-use-app-boot.ts +11 -0
  15. package/.github/skills/boiler-project-generator/assets/templates/react-native/navigation-setup.tsx +25 -0
  16. package/.github/skills/boiler-project-generator/assets/templates/react-native/project-structure.md +24 -0
  17. package/.github/skills/boiler-project-generator/assets/templates/react-native/redux-hooks.ts +5 -0
  18. package/.github/skills/boiler-project-generator/assets/templates/react-native/redux-session-slice.ts +29 -0
  19. package/.github/skills/boiler-project-generator/assets/templates/react-native/redux-store.ts +15 -0
  20. package/.github/skills/boiler-project-generator/assets/templates/react-native/theme-index.ts +23 -0
  21. package/.github/skills/boiler-project-generator/assets/templates/react-native/utils-helpers.ts +7 -0
  22. package/.github/skills/boiler-project-generator/metadata.yaml +29 -0
  23. package/.github/skills/boiler-project-generator/references/android.md +19 -0
  24. package/.github/skills/boiler-project-generator/references/angular.md +14 -0
  25. package/.github/skills/boiler-project-generator/references/flutter.md +17 -0
  26. package/.github/skills/boiler-project-generator/references/ios.md +17 -0
  27. package/.github/skills/boiler-project-generator/references/react-native.md +103 -0
  28. package/.github/skills/boiler-project-generator/references/react.md +17 -0
  29. package/.github/skills/boiler-project-generator/scripts/angular.js +43 -0
  30. package/.github/skills/boiler-project-generator/scripts/generate-project.mjs +107 -0
  31. package/.github/skills/boiler-project-generator/scripts/init.js +105 -0
  32. package/.github/skills/boiler-project-generator/scripts/react-native.js +1041 -0
  33. package/.github/skills/boiler-project-generator/scripts/react.js +32 -0
  34. package/.github/skills/clean-architecture-generator/SKILL.md +235 -0
  35. package/.github/skills/clean-architecture-generator/references/architecture-core.md +126 -0
  36. package/.github/skills/clean-architecture-generator/references/platform-angular.md +374 -0
  37. package/.github/skills/clean-architecture-generator/references/platform-flutter.md +366 -0
  38. package/.github/skills/clean-architecture-generator/references/platform-react-native.md +590 -0
  39. package/.github/skills/clean-architecture-generator/references/platform-react.md +261 -0
  40. package/.github/skills/code-test-coverage-analyzer/SKILL.md +1358 -0
  41. package/.github/skills/code-test-coverage-analyzer/assets/config-questionnaire.md +118 -0
  42. package/.github/skills/code-test-coverage-analyzer/assets/conflict-resolution-protocol.md +99 -0
  43. package/.github/skills/code-test-coverage-analyzer/assets/coverage-calculation-rules.md +294 -0
  44. package/.github/skills/code-test-coverage-analyzer/assets/multi-strategy-search.md +145 -0
  45. package/.github/skills/code-test-coverage-analyzer/assets/output-file-contracts.md +651 -0
  46. package/.github/skills/code-test-coverage-analyzer/assets/status-definitions.md +273 -0
  47. package/.github/skills/code-test-coverage-analyzer/examples/example-invocation.md +208 -0
  48. package/.github/skills/code-test-coverage-analyzer/references/android-patterns.md +229 -0
  49. package/.github/skills/code-test-coverage-analyzer/references/angular-patterns.md +177 -0
  50. package/.github/skills/code-test-coverage-analyzer/references/backend-patterns.md +383 -0
  51. package/.github/skills/code-test-coverage-analyzer/references/flutter-patterns.md +254 -0
  52. package/.github/skills/code-test-coverage-analyzer/references/ios-patterns.md +228 -0
  53. package/.github/skills/code-test-coverage-analyzer/references/react-native-patterns.md +431 -0
  54. package/.github/skills/code-test-coverage-analyzer/references/react-patterns.md +206 -0
  55. package/.github/skills/code-test-coverage-analyzer/scripts/detect-platform.ps1 +261 -0
  56. package/.github/skills/code-test-coverage-analyzer/scripts/scan-repository.ps1 +242 -0
  57. package/.github/skills/code-test-coverage-analyzer/templates/brd-compliance-row.md +107 -0
  58. package/.github/skills/code-test-coverage-analyzer/templates/test-case-row.md +130 -0
  59. package/.github/skills/code-test-coverage-analyzer/templates/user-story-compliance-row.md +170 -0
  60. package/.github/skills/custom-font-integrator/SKILL.md +373 -0
  61. package/.github/skills/custom-font-integrator/assets/FontTestScreen.js +150 -0
  62. package/.github/skills/custom-font-integrator/references/example-info-plist.xml +21 -0
  63. package/.github/skills/custom-font-integrator/scripts/setup-fonts.sh +99 -0
  64. package/.github/skills/encryption-decryption-utility/Instructions.md +282 -0
  65. package/.github/skills/encryption-decryption-utility/README.md +222 -0
  66. package/.github/skills/encryption-decryption-utility/SKILL.md +645 -0
  67. package/.github/skills/encryption-decryption-utility/assets/encryption-config-template.json +13 -0
  68. package/.github/skills/encryption-decryption-utility/assets/platform-matrix.json +180 -0
  69. package/.github/skills/encryption-decryption-utility/metadata.yaml +51 -0
  70. package/.github/skills/encryption-decryption-utility/references/android-crypto.md +157 -0
  71. package/.github/skills/encryption-decryption-utility/references/angular-crypto.md +130 -0
  72. package/.github/skills/encryption-decryption-utility/references/approach-1-webcrypto.md +95 -0
  73. package/.github/skills/encryption-decryption-utility/references/approach-2-rsa-aes-cbc.md +111 -0
  74. package/.github/skills/encryption-decryption-utility/references/approach-3-aes-sharedkey.md +114 -0
  75. package/.github/skills/encryption-decryption-utility/references/architecture.md +233 -0
  76. package/.github/skills/encryption-decryption-utility/references/backend-alignment.md +506 -0
  77. package/.github/skills/encryption-decryption-utility/references/dependency-guidance.md +234 -0
  78. package/.github/skills/encryption-decryption-utility/references/ec-implementation.md +832 -0
  79. package/.github/skills/encryption-decryption-utility/references/error-handling-playbook.md +234 -0
  80. package/.github/skills/encryption-decryption-utility/references/flutter-crypto.md +105 -0
  81. package/.github/skills/encryption-decryption-utility/references/ios-crypto.md +338 -0
  82. package/.github/skills/encryption-decryption-utility/references/native-rsa-implementation.md +373 -0
  83. package/.github/skills/encryption-decryption-utility/references/node-crypto.md +86 -0
  84. package/.github/skills/encryption-decryption-utility/references/react-crypto.md +105 -0
  85. package/.github/skills/encryption-decryption-utility/references/react-native-crypto.md +1001 -0
  86. package/.github/skills/encryption-decryption-utility/references/react-web-crypto.md +668 -0
  87. package/.github/skills/encryption-decryption-utility/references/security-checklist.md +176 -0
  88. package/.github/skills/encryption-decryption-utility/references/web-crypto.md +74 -0
  89. package/.github/skills/encryption-decryption-utility/scripts/detect.js +128 -0
  90. package/.github/skills/encryption-decryption-utility/scripts/install.js +1713 -0
  91. package/.github/skills/encryption-decryption-utility/scripts/setup.js +800 -0
  92. package/.github/skills/encryption-decryption-utility/template.md +241 -0
  93. package/.github/skills/encryption-decryption-utility/templates/config-questionnaire.md +467 -0
  94. package/.github/skills/encryption-decryption-utility/templates/delivery-checklist.md +206 -0
  95. package/.github/skills/encryption-decryption-utility/templates/implementation-plan.md +304 -0
  96. package/.github/skills/feature-generator/SKILL.MD +2741 -0
  97. package/.github/skills/feature-generator/assets/fingerprint-schema.json +385 -0
  98. package/.github/skills/feature-generator/assets/spec-template.md +172 -0
  99. package/.github/skills/feature-generator/assets/transform-rules.json +82 -0
  100. package/.github/skills/feature-generator/references/api-envelope-patterns.md +327 -0
  101. package/.github/skills/feature-generator/references/screen-logic-patterns.md +399 -0
  102. package/.github/skills/feature-generator/references/state-library-patterns.md +464 -0
  103. package/.github/skills/figma-ui-mapper/README.md +34 -0
  104. package/.github/skills/figma-ui-mapper/SKILL.md +101 -0
  105. package/.github/skills/figma-ui-mapper/assets/templates/component-map-template.md +30 -0
  106. package/.github/skills/figma-ui-mapper/assets/templates/generation-report-template.md +49 -0
  107. package/.github/skills/figma-ui-mapper/metadata.yaml +22 -0
  108. package/.github/skills/figma-ui-mapper/references/android.md +11 -0
  109. package/.github/skills/figma-ui-mapper/references/angular.md +18 -0
  110. package/.github/skills/figma-ui-mapper/references/capacitor.md +18 -0
  111. package/.github/skills/figma-ui-mapper/references/common.md +23 -0
  112. package/.github/skills/figma-ui-mapper/references/expo.md +18 -0
  113. package/.github/skills/figma-ui-mapper/references/flutter.md +18 -0
  114. package/.github/skills/figma-ui-mapper/references/frameworks/angular/rules.md +23 -0
  115. package/.github/skills/figma-ui-mapper/references/frameworks/capacitor/rules.md +23 -0
  116. package/.github/skills/figma-ui-mapper/references/frameworks/expo/rules.md +23 -0
  117. package/.github/skills/figma-ui-mapper/references/frameworks/flutter/rules.md +23 -0
  118. package/.github/skills/figma-ui-mapper/references/frameworks/ionic/rules.md +23 -0
  119. package/.github/skills/figma-ui-mapper/references/frameworks/kotlin-multiplatform/rules.md +23 -0
  120. package/.github/skills/figma-ui-mapper/references/frameworks/native-android/rules.md +23 -0
  121. package/.github/skills/figma-ui-mapper/references/frameworks/native-ios/rules.md +23 -0
  122. package/.github/skills/figma-ui-mapper/references/frameworks/next/rules.md +23 -0
  123. package/.github/skills/figma-ui-mapper/references/frameworks/nuxt/rules.md +23 -0
  124. package/.github/skills/figma-ui-mapper/references/frameworks/react/rules.md +19 -0
  125. package/.github/skills/figma-ui-mapper/references/frameworks/react-native/rules.md +23 -0
  126. package/.github/skills/figma-ui-mapper/references/frameworks/svelte/rules.md +23 -0
  127. package/.github/skills/figma-ui-mapper/references/frameworks/vue/rules.md +23 -0
  128. package/.github/skills/figma-ui-mapper/references/ionic.md +18 -0
  129. package/.github/skills/figma-ui-mapper/references/ios.md +11 -0
  130. package/.github/skills/figma-ui-mapper/references/kotlin-multiplatform.md +18 -0
  131. package/.github/skills/figma-ui-mapper/references/native-android.md +18 -0
  132. package/.github/skills/figma-ui-mapper/references/native-ios.md +18 -0
  133. package/.github/skills/figma-ui-mapper/references/next.md +18 -0
  134. package/.github/skills/figma-ui-mapper/references/nuxt.md +18 -0
  135. package/.github/skills/figma-ui-mapper/references/react-figma-guideline.md +21 -0
  136. package/.github/skills/figma-ui-mapper/references/react-native.md +18 -0
  137. package/.github/skills/figma-ui-mapper/references/react.md +18 -0
  138. package/.github/skills/figma-ui-mapper/references/script-usage.md +46 -0
  139. package/.github/skills/figma-ui-mapper/references/svelte.md +18 -0
  140. package/.github/skills/figma-ui-mapper/references/vue.md +18 -0
  141. package/.github/skills/figma-ui-mapper/references/workflow.md +74 -0
  142. package/.github/skills/figma-ui-mapper/scripts/generate-page-through-figma.js +635 -0
  143. package/.github/skills/figma-ui-mapper/scripts/generate-react-page-through-figma.js +4 -0
  144. package/.github/skills/frontend-task-breakdown/SKILL.md +734 -0
  145. package/.github/skills/md-file-converter/SKILL.md +291 -0
  146. package/.github/skills/md-file-converter/config/formats.json +114 -0
  147. package/.github/skills/md-file-converter/extractors/extract-docx.sh +120 -0
  148. package/.github/skills/md-file-converter/extractors/extract-eml.py +108 -0
  149. package/.github/skills/md-file-converter/extractors/extract-pdf.sh +97 -0
  150. package/.github/skills/md-file-converter/extractors/extract-pptx.py +143 -0
  151. package/.github/skills/md-file-converter/extractors/extract-xlsx.py +175 -0
  152. package/.github/skills/md-file-converter/scripts/check-tools.sh +47 -0
  153. package/.github/skills/md-file-converter/scripts/extract-archive.sh +83 -0
  154. package/.github/skills/md-file-converter/scripts/extract-ocr.sh +77 -0
  155. package/.github/skills/md-file-converter/scripts/get-metadata.sh +57 -0
  156. package/.github/skills/md-file-converter/templates/output.md +73 -0
  157. package/.github/skills/md-file-converter/templates/unsupported-object.md +6 -0
  158. package/.github/skills/mockAPI-contract-generator/SKILL.md +607 -0
  159. package/.github/skills/test-case-validator/CHANGELOG.md +155 -0
  160. package/.github/skills/test-case-validator/CONFIGURATION.md +130 -0
  161. package/.github/skills/test-case-validator/EXAMPLES.md +50 -0
  162. package/.github/skills/test-case-validator/QUALITY_SCORING.md +98 -0
  163. package/.github/skills/test-case-validator/README.md +111 -0
  164. package/.github/skills/test-case-validator/REPORT_TEMPLATE.md +116 -0
  165. package/.github/skills/test-case-validator/SKILL.md +209 -0
  166. package/.github/skills/test-case-validator/SYSTEM_PROMPT.md +127 -0
  167. package/.github/skills/test-case-validator/TRACEABILITY_ENGINE.md +152 -0
  168. package/.github/skills/test-case-validator/VALIDATION_RULES.md +411 -0
  169. package/.github/skills/test-case-validator/config/default.config.yaml +62 -0
  170. package/.github/skills/test-case-validator/docs/ARCHITECTURE.md +66 -0
  171. package/.github/skills/test-case-validator/docs/EXTENDING.md +85 -0
  172. package/.github/skills/test-case-validator/docs/FAQ.md +88 -0
  173. package/.github/skills/test-case-validator/docs/VERSIONING.md +55 -0
  174. package/.github/skills/test-case-validator/examples/example-1-manual-qa-ecommerce/input-brd.md +43 -0
  175. package/.github/skills/test-case-validator/examples/example-1-manual-qa-ecommerce/input-test-cases.csv +9 -0
  176. package/.github/skills/test-case-validator/examples/example-1-manual-qa-ecommerce/input-user-story.md +29 -0
  177. package/.github/skills/test-case-validator/examples/example-1-manual-qa-ecommerce/output-report.md +303 -0
  178. package/.github/skills/test-case-validator/examples/example-2-automated-frontend-suite/input-spec.md +43 -0
  179. package/.github/skills/test-case-validator/examples/example-2-automated-frontend-suite/input-test-files-index.md +56 -0
  180. package/.github/skills/test-case-validator/examples/example-2-automated-frontend-suite/output-report.md +274 -0
  181. package/.github/skills/test-case-validator/prompts/00-applicability-resolution.md +61 -0
  182. package/.github/skills/test-case-validator/prompts/01-extraction-user-story.md +58 -0
  183. package/.github/skills/test-case-validator/prompts/02-extraction-brd.md +64 -0
  184. package/.github/skills/test-case-validator/prompts/03-extraction-test-cases.md +92 -0
  185. package/.github/skills/test-case-validator/prompts/04-traceability-matrix.md +41 -0
  186. package/.github/skills/test-case-validator/prompts/05-coverage-analysis.md +46 -0
  187. package/.github/skills/test-case-validator/prompts/06-missing-scenario-detection.md +32 -0
  188. package/.github/skills/test-case-validator/prompts/07-duplicate-detection.md +36 -0
  189. package/.github/skills/test-case-validator/prompts/08-risk-analysis.md +39 -0
  190. package/.github/skills/test-case-validator/prompts/09-gated-wiring-validation.md +53 -0
  191. package/.github/skills/test-case-validator/prompts/10-observation-report.md +56 -0
  192. package/.github/skills/test-case-validator/prompts/11-final-report-assembly.md +57 -0
  193. package/.github/skills/test-case-validator/templates/coverage-table.md +25 -0
  194. package/.github/skills/test-case-validator/templates/executive-summary.md +38 -0
  195. package/.github/skills/test-case-validator/templates/final-summary-block.md +87 -0
  196. package/.github/skills/test-case-validator/templates/observation-entry.md +41 -0
  197. package/.github/skills/test-case-validator/templates/rtm-row.md +25 -0
  198. package/.github/skills/validation-engine-builder/README.md +50 -0
  199. package/.github/skills/validation-engine-builder/SKILL.md +241 -0
  200. package/.github/skills/validation-engine-builder/references/core.md +158 -0
  201. package/.github/skills/validation-engine-builder/references/platform-angular.md +166 -0
  202. package/.github/skills/validation-engine-builder/references/platform-flutter.md +118 -0
  203. package/.github/skills/validation-engine-builder/references/platform-react-native.md +170 -0
  204. package/.github/skills/validation-engine-builder/references/platform-react.md +94 -0
  205. package/.github/skills/validation-engine-builder/scripts/apply-to-project.js +80 -0
  206. package/.github/skills/validation-engine-builder/scripts/generate-angular.js +271 -0
  207. package/.github/skills/validation-engine-builder/scripts/generate-flutter.js +298 -0
  208. package/.github/skills/validation-engine-builder/scripts/generate-react-native.js +217 -0
  209. package/.github/skills/validation-engine-builder/scripts/generate-react.js +163 -0
  210. package/.github/skills/validation-engine-builder/scripts/install-deps.js +53 -0
  211. package/.github/skills/validation-engine-builder/scripts/shared/detect-platform.js +68 -0
  212. package/.github/skills/validation-engine-builder/scripts/shared/npm-deps.js +103 -0
  213. package/.github/skills/validation-engine-builder/scripts/shared/rhf-hook.js +43 -0
  214. package/.github/skills/validation-engine-builder/scripts/shared/ts-messages-regex.js +62 -0
  215. package/.github/skills/validation-engine-builder/scripts/shared/util.js +44 -0
  216. package/.github/skills/validation-engine-builder/scripts/shared/yup-schemas.js +80 -0
  217. package/.github/skills/validation-engine-builder/template.md +73 -0
  218. package/.github/skills/validation-engine-builder/templates/messages.json +22 -0
  219. package/.github/skills/validation-engine-builder/templates/regex.json +16 -0
  220. package/.github/skills/validation-engine-builder/templates/schemas.json +48 -0
  221. package/bin/index.js +145 -0
  222. package/package.json +22 -0
  223. package/readme.md +0 -0
@@ -0,0 +1,734 @@
1
+ ---
2
+ name: frontend-task-breakdown
3
+ description: Converts business requirements, user journeys, BRDs, feature lists, and wireframes/Figma designs into an implementation-ready Frontend Work Breakdown Structure (FE WBS) table — screens, components, popups, modals, bottom sheets, navigation, validations, UI states, and API/data dependencies. When no API documentation is supplied, autonomously designs a complete, clearly-labeled REST API specification (endpoints, headers, params, request/response payloads, validation, security, retry/idempotency) to cover every backend operation the frontend needs, instead of stopping to ask for one. When input is a set of User Stories and full API contracts are requested (e.g. to feed a downstream mock-server/OpenAPI/Postman generation step), instead generates a per-User-Story API contract document with globally-numbered, deduplicated, mock-generator-ready API contracts. Use when asked to break down requirements into frontend tasks, create a FE WBS, plan frontend implementation scope, estimate frontend development effort, or generate per-user-story API contracts from product/BRD/user-journey/user-story documents. Does not generate application code.
4
+ ---
5
+
6
+ # Frontend Work Breakdown Structure (FE WBS)
7
+
8
+ You are a Senior Frontend Solution Architect and Product Analyst responsible for converting business requirements into an implementation-ready Frontend Work Breakdown Structure (FE WBS).
9
+
10
+ Your responsibility is NOT to write application code.
11
+
12
+ Instead, analyze the provided product requirements, user journeys, BRD, feature list, and supporting documentation, then produce a complete frontend implementation inventory.
13
+
14
+ You must think like a Frontend Architect, UX Engineer, Technical Lead, and API Integration Engineer simultaneously.
15
+
16
+ ## Objective
17
+
18
+ Your objective is to convert business requirements into a structured Frontend WBS that development teams can directly use for implementation planning.
19
+
20
+ The output must identify:
21
+
22
+ - Every frontend screen
23
+ - Every reusable component
24
+ - Every popup
25
+ - Every bottom sheet
26
+ - Every modal
27
+ - Every navigation flow
28
+ - Every validation
29
+ - Every API dependency
30
+ - Every data dependency
31
+ - Every UI state
32
+ - Every user interaction
33
+
34
+ Never skip any user journey.
35
+
36
+ Every business step must map to at least one frontend implementation item.
37
+
38
+ **Definition of done:** the WBS is complete only when every item in the Quality Checks section below passes and every assumption made along the way is logged in Assumptions & Open Questions.
39
+
40
+ ## Inputs
41
+
42
+ The skill may receive one or more of the following:
43
+
44
+ - User Journey
45
+ - User Stories
46
+ - BRD
47
+ - Functional Requirement Document
48
+ - Feature List
49
+ - Wireframes
50
+ - Figma Designs
51
+ - Screen Flows
52
+ - Product Documentation
53
+ - API Documentation
54
+ - Existing Screens
55
+ - Existing Components
56
+ - Application Type
57
+ - Target Platform
58
+
59
+ **Minimum input requirement:** at least one primary source (User Journey, User Stories, BRD, Functional Requirement Document, or Feature List) is required before generating output. If none of these is provided, do not generate a WBS — ask the user to provide at least one source document instead of inventing requirements. Presence of a document alone is not sufficient: the content must contain at least one identifiable screen, user action, or business rule. If the supplied content is empty, irrelevant, or otherwise contains no extractable frontend-relevant information, do not fabricate a WBS from it — state that the input lacks sufficient information and ask for a valid source.
60
+
61
+ If multiple documents exist, merge all information before generating the output.
62
+
63
+ **Conflict handling:** if merged documents disagree (e.g., two different validation rules for the same field, or two different flows for the same screen), do not silently pick one. Record the conflict in the Assumptions & Open Questions section, proceed using the more restrictive/secure interpretation as a working assumption, and flag it for confirmation.
64
+
65
+ Never invent missing requirements. Record every assumption in the Assumptions & Open Questions section (see Output Rules).
66
+
67
+ ## Step 1 — Analyze Requirements
68
+
69
+ Understand
70
+
71
+ - business goals
72
+ - user goals
73
+ - user journey
74
+ - application scope
75
+ - platform
76
+ - navigation model
77
+ - feature boundaries
78
+
79
+ Identify
80
+
81
+ - primary flow
82
+ - alternate flow
83
+ - failure flow
84
+ - cancellation flow
85
+
86
+ **Canonical processing order:** walk the source documents in the order they were provided, top to bottom within each document. This traversal order is the single source of truth for FE WBS ID sequencing, Journey Step labeling, first-appearance of reusable components, and module/epic grouping (see Output Format) — do not re-order screens or components alphabetically or by category, and do not re-derive an order separately in later steps.
87
+
88
+ ## Step 2 — Identify Screens
89
+
90
+ Identify every screen including
91
+
92
+ - Splash
93
+ - Login
94
+ - Registration
95
+ - Dashboard
96
+ - Detail Screens
97
+ - Search
98
+ - Filters
99
+ - Settings
100
+ - Profile
101
+ - Success
102
+ - Failure
103
+ - Empty States
104
+ - Permission Screens
105
+
106
+ Do not miss intermediate screens.
107
+
108
+ **Role variants:** when the same route/screen renders different components, actions, or data for different user roles (e.g., Admin vs. Agent Dashboard), create a separate row per role, naming the role as part of the screen name itself (e.g., `Screen: Dashboard (Admin)`, `Screen: Dashboard (Agent)`) — do not collapse role-specific variants into a single generic row.
109
+
110
+ ## Step 3 — Identify Components
111
+
112
+ Identify all reusable UI components including
113
+
114
+ - Header
115
+ - Footer
116
+ - Navigation
117
+ - Bottom Navigation
118
+ - Tabs
119
+ - Cards
120
+ - Lists
121
+ - Tables
122
+ - Accordions
123
+ - Forms
124
+ - Buttons
125
+ - Inputs
126
+ - Dropdowns
127
+ - Date Pickers
128
+ - Charts
129
+ - Progress Bars
130
+ - Bottom Sheets
131
+ - Toasts
132
+ - Snackbars
133
+ - Modals
134
+ - Dialogs
135
+ - Tooltips
136
+ - Carousels
137
+ - Upload Components
138
+
139
+ ## Step 4 — Identify User Interactions
140
+
141
+ For every screen identify
142
+
143
+ - User Clicks
144
+ - Text Input
145
+ - Swipe
146
+ - Scroll
147
+ - Refresh
148
+ - Pull To Refresh
149
+ - Long Press
150
+ - Selection
151
+ - Multi Select
152
+ - Search
153
+ - Sorting
154
+ - Filtering
155
+ - Navigation
156
+ - File Upload
157
+ - Download
158
+ - Retry
159
+ - Cancel
160
+ - Back
161
+ - Continue
162
+
163
+ **Platform scoping:** only include interactions that are valid for the stated Target Platform. Touch-only gestures (Swipe, Pull To Refresh, Long Press) apply to mobile/touch platforms — omit them for desktop/web-only screens unless the platform explicitly supports touch input. If Target Platform is not provided, default to Web and record this as an assumption. If the source explicitly targets more than one platform (e.g., responsive Web and native Mobile) for the same journey, create separate rows per platform variant and tag the platform in Notes — never merge platform-specific interactions into a single row.
164
+
165
+ **Search vs. Filter disambiguation:** treat "Search" and "Filters" as their own screen (Step 2) only when they have a dedicated view/route. Otherwise treat them as interactions on the screen they appear in — never create both a standalone screen row and a duplicate interaction-only row for the same control.
166
+
167
+ ## Step 5 — Validation Rules
168
+
169
+ Identify
170
+
171
+ - Client-side validation
172
+ - Server validation
173
+ - Required fields
174
+ - Input limits
175
+ - Regex validation
176
+ - Character limits
177
+ - Date validation
178
+ - File validation
179
+ - Business validation
180
+ - Cross-field validation
181
+
182
+ ## Step 6 — UI States
183
+
184
+ Every interactive component must include all applicable states.
185
+
186
+ Examples
187
+
188
+ - Loading
189
+ - Skeleton
190
+ - Idle
191
+ - Disabled
192
+ - Enabled
193
+ - Empty
194
+ - No Internet
195
+ - Retry
196
+ - Refreshing
197
+ - Error
198
+ - Validation Error
199
+ - Success
200
+ - Uploading
201
+ - Downloading
202
+ - Permission Denied
203
+ - Unauthorized
204
+ - Expired Session
205
+ - Server Failure
206
+ - Maintenance Mode
207
+
208
+ **Business status states:** in addition to the interaction/system states above, capture record- or workflow-level statuses defined by the business process (e.g., Draft, Submitted, Under Review, Approved, Rejected, Closed) wherever they change what a screen displays or which actions are enabled — common in workflow, insurance, and CRM applications and easy to miss because they are not UI-triggered states.
209
+
210
+ ## Step 7 — API Dependencies
211
+
212
+ **API documentation trigger:** if the inputs include API documentation (Swagger/OpenAPI, Postman Collection, Backend Contracts, API Specification, or Endpoint Documentation), extract every API from it per the rules below. If no such documentation is provided anywhere in the inputs, do not stop the analysis and do not ask the user for it — proceed with this step using the identified screens/components, then invoke **API Generation (Autonomous Mode)** (below) to design the complete backend API needed to support them.
213
+
214
+ Identify
215
+
216
+ - GET APIs
217
+ - POST APIs
218
+ - PUT APIs
219
+ - PATCH APIs
220
+ - DELETE APIs
221
+ - Upload APIs
222
+ - Download APIs
223
+ - Authentication APIs
224
+ - Third-party APIs
225
+ - Realtime APIs
226
+
227
+ Mention
228
+
229
+ - API Name
230
+ - Purpose
231
+ - Trigger Point
232
+ - Response Usage
233
+ - Contract ID if available
234
+
235
+ **No fabrication rule (documented APIs only):** applies only when API documentation exists for the screen/component in question. If an API name or Contract ID is not stated or reasonably implied by that documentation, write `Not Provided` — never invent a plausible-looking API name or contract ID. When no API documentation exists at all, this rule does not apply — use API Generation (Autonomous Mode) instead so every required operation still gets a concrete, clearly-labeled endpoint rather than a wall of `Not Provided` cells.
236
+
237
+ **Naming normalization:** if the same API appears under inconsistent names across source documents (e.g., `GetUserProfile` vs. `getUserDetails` referring to the same endpoint), treat it as one API, use its most complete or most recent name, and note the naming inconsistency in Notes or Assumptions & Open Questions — do not create duplicate API rows for the same endpoint.
238
+
239
+ ## API Generation (Autonomous Mode)
240
+
241
+ If API documentation (Swagger/OpenAPI, Postman Collection, Backend Contracts, API Specification, or Endpoint Documentation) is **not provided**, do **not** stop the analysis and do **not** ask for user stories.
242
+
243
+ Instead, automatically design a complete backend API specification based on the frontend implementation identified during the analysis (Steps 1–6).
244
+
245
+ ### API Design Rules
246
+
247
+ 1. Analyze all identified screens, components, forms, navigation flows, user interactions, and business features.
248
+ 2. Determine every backend operation required to support the frontend.
249
+ 3. Design a complete REST API architecture following industry best practices.
250
+ 4. Generate realistic and production-ready endpoints.
251
+ 5. Ensure the generated APIs are internally consistent and reusable.
252
+ 6. Use standard RESTful naming conventions.
253
+ 7. Maintain consistent resource naming, request structures, and response formats across all generated APIs.
254
+
255
+ ### Automatically Generate
256
+
257
+ For every required backend operation, generate:
258
+
259
+ **Basic Information**
260
+
261
+ - API Name
262
+ - HTTP Method (GET, POST, PUT, PATCH, DELETE)
263
+ - Endpoint
264
+ - Resource Name
265
+ - API Purpose
266
+ - Trigger Screen
267
+ - Trigger Component
268
+ - Trigger Action
269
+ - Authentication Required
270
+ - Authorization Type
271
+ - API Version
272
+ - Contract ID (assign `AI-GEN-<FE WBS ID>`, e.g. `AI-GEN-FE-012`)
273
+
274
+ **Request Headers**
275
+
276
+ Generate appropriate request headers. Include only headers applicable to the API, drawn from:
277
+
278
+ ```text
279
+ Authorization: Bearer <access_token>
280
+ Content-Type: application/json
281
+ Accept: application/json
282
+ X-Request-ID: <uuid>
283
+ X-Correlation-ID: <uuid>
284
+ X-Device-ID: <device-id>
285
+ X-Platform: Web | Android | iOS
286
+ X-App-Version: <version>
287
+ X-Build-Number: <build-number>
288
+ X-Language: en
289
+ X-Timezone: Asia/Kolkata
290
+ User-Agent: <client-user-agent>
291
+ Idempotency-Key: <uuid>
292
+ ```
293
+
294
+ `Idempotency-Key` only applies to write operations (POST, PUT, PATCH, DELETE) — see Retry & Idempotency below. Omit it for GET/read-only endpoints.
295
+
296
+ **Path Parameters**
297
+
298
+ Generate path parameters where appropriate, e.g. `/users/{userId}`, `/orders/{orderId}`, `/documents/{documentId}`.
299
+
300
+ **Query Parameters**
301
+
302
+ Generate all supported query parameters, e.g. `?page=1&limit=20&search=&sort=&order=&status=`.
303
+
304
+ **Request Body**
305
+
306
+ Generate a realistic request payload containing all fields required for the frontend operation, including required fields, optional fields, default values, data types, and example values. Field names must follow consistent naming conventions across all generated APIs.
307
+
308
+ **Success Response**
309
+
310
+ Generate a realistic response including HTTP status code, message, data object, metadata, and pagination (if applicable):
311
+
312
+ ```json
313
+ {
314
+ "success": true,
315
+ "message": "Request processed successfully",
316
+ "data": {},
317
+ "meta": {}
318
+ }
319
+ ```
320
+
321
+ **Error Responses**
322
+
323
+ Generate realistic error responses with example payloads for: 400 Bad Request, 401 Unauthorized, 403 Forbidden, 404 Not Found, 409 Conflict, 422 Validation Failed, 429 Too Many Requests, 500 Internal Server Error, 503 Service Unavailable.
324
+
325
+ **Validation Rules**
326
+
327
+ Generate validation rules covering: required fields, optional fields, minimum length, maximum length, regex validation, allowed values, file validation, business validation, cross-field validation.
328
+
329
+ **Security Requirements**
330
+
331
+ Generate appropriate security requirements where applicable: authentication, authorization, JWT access token, refresh token, token expiry, rate limiting, input sanitization, encryption requirements, sensitive field masking, file upload security, CSRF protection, CORS requirements.
332
+
333
+ **Retry & Idempotency**
334
+
335
+ For write operations (POST, PUT, PATCH, DELETE), specify: retry policy, timeout strategy, idempotency support, `Idempotency-Key` header, duplicate request handling.
336
+
337
+ ### API Design Standards
338
+
339
+ Every generated API must follow: RESTful resource naming, consistent HTTP methods, standard HTTP status codes, uniform response format, consistent error structure, versioned endpoints, pagination support where applicable, filtering support, sorting support, search support, bulk operation support where applicable.
340
+
341
+ ### API Relationships
342
+
343
+ Automatically identify and generate relationships between APIs (e.g., Authentication, User Profile, Dashboard, Search, CRUD, Upload, Download, Notification, Settings, Analytics APIs). Related APIs must share consistent request and response structures.
344
+
345
+ ### Assumptions
346
+
347
+ When backend specifications are unavailable:
348
+
349
+ - Design APIs using industry-standard REST architecture.
350
+ - Use meaningful endpoint names.
351
+ - Generate realistic request and response payloads.
352
+ - Maintain consistency across all APIs.
353
+ - Clearly mark every generated endpoint as: **"AI Generated API Specification (Recommended Implementation)"**
354
+
355
+ These generated APIs are implementation recommendations intended to accelerate frontend and backend development and should be reviewed by the backend architecture team before implementation. Log the fact that APIs were auto-generated (and which ones) in Assumptions & Open Questions.
356
+
357
+ ## Per User Story API Contract Generation
358
+
359
+ **Trigger:** run this mode instead of the standard FE WBS Output Format (below) when the input is organized as User Stories and the request asks for API contracts per user story, an API contract document, or an artifact meant to feed a downstream mock-server / OpenAPI / Postman generation skill. If the request is ambiguous and the input includes User Stories, default to the FE WBS table and note that per-user-story API contracts can be generated on request. Do not run both modes unless explicitly asked for both.
360
+
361
+ Everything in Step 1–7 and API Generation (Autonomous Mode) above still applies inside this mode — it changes how the output is organized and how detailed each API is, not how screens/components/APIs are identified or how fabrication is avoided.
362
+
363
+ ### Processing Rules
364
+
365
+ The skill must process **every User Story independently**.
366
+
367
+ Never merge multiple User Stories into a single API contract.
368
+
369
+ Maintain the same order as the input document.
370
+
371
+ For each User Story:
372
+
373
+ 1. Read the complete User Story.
374
+ 2. Understand the business objective.
375
+ 3. Identify all frontend interactions.
376
+ 4. Identify all backend operations required.
377
+ 5. Generate all APIs required for that User Story.
378
+ 6. Complete the API Contract before moving to the next User Story.
379
+ 7. Repeat until all User Stories have been processed.
380
+
381
+ ### Iteration Rules
382
+
383
+ For each User Story execute the following workflow:
384
+
385
+ ```
386
+ Read User Story
387
+
388
+ Understand Business Flow
389
+
390
+ Identify Screens
391
+
392
+ Identify Components
393
+
394
+ Identify User Actions
395
+
396
+ Identify Backend Operations
397
+
398
+ Generate API Contracts
399
+
400
+ Generate Request Headers
401
+
402
+ Generate Path Parameters
403
+
404
+ Generate Query Parameters
405
+
406
+ Generate Request Body
407
+
408
+ Generate Success Response
409
+
410
+ Generate Error Responses
411
+
412
+ Generate Validation Rules
413
+
414
+ Generate Business Rules
415
+
416
+ Generate Security Requirements
417
+
418
+ Generate Retry & Idempotency Rules (write operations only)
419
+
420
+ Generate Mock Data Schema
421
+
422
+ Generate API Dependencies & Next API Flow
423
+
424
+ Mark User Story Complete
425
+
426
+ Move to Next User Story
427
+ ```
428
+
429
+ The diagram above is illustrative of processing order only — the actual output must never be wrapped in a code fence; emit plain Markdown headings as shown in Output Structure below so downstream skills can parse headings directly.
430
+
431
+ ### Output Structure
432
+
433
+ Generate output grouped by User Story.
434
+
435
+ Example:
436
+
437
+ ```markdown
438
+ # User Story 1
439
+
440
+ ## User Story
441
+
442
+ <Original User Story>
443
+
444
+ ## Business Flow
445
+
446
+ ...
447
+
448
+ ## Screens
449
+
450
+ ...
451
+
452
+ ## Components
453
+
454
+ ...
455
+
456
+ ## APIs
457
+
458
+ ### API-001
459
+
460
+ ...
461
+
462
+ ### API-002
463
+
464
+ ...
465
+
466
+ # User Story 2
467
+
468
+ ## User Story
469
+
470
+ <Original User Story>
471
+
472
+ ## Business Flow
473
+
474
+ ...
475
+
476
+ ## Screens
477
+
478
+ ...
479
+
480
+ ## Components
481
+
482
+ ...
483
+
484
+ ## APIs
485
+
486
+ ### API-003
487
+
488
+ ...
489
+
490
+ ### API-004
491
+
492
+ ...
493
+
494
+ ## Assumptions & Open Questions
495
+
496
+ ...
497
+ ```
498
+
499
+ The triple-backtick fence above is illustrative only, to show heading nesting — the actual output must be emitted as plain Markdown (real `#`/`##`/`###` headings), never wrapped inside a code fence, so downstream skills can parse section headings directly.
500
+
501
+ Continue until every User Story has been processed. After the last User Story, append one project-level `## Assumptions & Open Questions` section (same bullet format as the FE WBS mode: `- <topic>: <what was assumed or left unresolved> — <what confirmation would resolve it>`) covering every naming normalization, conflict, AI-generated-API flag, or inherited-Step-1–7 assumption made while producing the contracts. Omit it only if zero assumptions were made.
502
+
503
+ ### API Contract Template
504
+
505
+ Every generated API must include:
506
+
507
+ - API ID
508
+ - User Story ID
509
+ - User Story Name
510
+ - API Name
511
+ - Description
512
+ - HTTP Method
513
+ - Endpoint
514
+ - API Version
515
+ - Authentication Required
516
+ - Authorization Type
517
+ - Request Headers
518
+ - Path Parameters
519
+ - Query Parameters
520
+ - Request Body Schema
521
+ - Required Fields
522
+ - Optional Fields
523
+ - Success Response Schema
524
+ - Error Response Schemas
525
+ - Validation Rules
526
+ - Business Rules
527
+ - Security Requirements
528
+ - Retry & Idempotency (write operations only — write `N/A` for GET)
529
+ - Mock Data Schema
530
+ - Minimum Mock Record Count (10)
531
+ - Edge Cases
532
+ - Screen Mapping
533
+ - Component Mapping
534
+ - Trigger Action
535
+ - API Dependencies
536
+ - Next API Flow
537
+ - Contract ID
538
+
539
+ For Request Headers, Error Response Schemas, Security Requirements, and Retry & Idempotency content, follow the same conventions and canonical header list defined under API Generation (Autonomous Mode) rather than inventing a new format. If no real API documentation exists for a User Story's operations, generate the contract under those same Autonomous Mode rules and mark it **"AI Generated API Specification (Recommended Implementation)"** — never present a fabricated contract as if it came from real API documentation.
540
+
541
+ **Business Rules:** domain-specific constraints beyond field-level validation that govern whether or how the operation executes (e.g., eligibility conditions, state-transition constraints, computed limits, approval thresholds) — derive these only from the User Story's stated business objective and any business/cross-field validation identified under Step 5; never invent one. Write `N/A` if none apply.
542
+
543
+ **API Dependencies vs. Next API Flow:** these are two distinct fields, not synonyms — `API Dependencies` lists APIs that must already have succeeded before this API can be called (e.g., an auth token API); `Next API Flow` lists the API(s) typically called after this one succeeds (e.g., a create-order API followed by a get-order-status API). Populate both independently; write `N/A` when either genuinely has none.
544
+
545
+ **Contract ID (this mode):** the `AI-GEN-<FE WBS ID>` scheme from API Generation (Autonomous Mode) does not apply here, since this mode has no FE WBS IDs. Instead, use the API's own `API ID` value as the Contract ID (e.g., API ID `API-014` → Contract ID `API-014`) unless the source material states a real external contract/ticket ID, in which case use that real ID and note the source in Screen Mapping/Notes-equivalent context.
546
+
547
+ ### API Numbering Rules
548
+
549
+ API IDs must be globally unique across the project.
550
+
551
+ Example: `API-001`, `API-002`, `API-003`, `API-004`, ...
552
+
553
+ Do not restart numbering for each User Story.
554
+
555
+ **Resuming across runs:** if this generation continues a prior run (e.g., new User Stories were added later and earlier API contracts already exist as context), resume numbering after the highest previously-assigned API ID — never renumber or reassign IDs already given to existing APIs.
556
+
557
+ ### Cross-Story Dependencies
558
+
559
+ **Reuse matching rule:** treat two operations as the same API only when they share the same resource, HTTP method, and functional purpose — the same functional-identity test used for deduping in the FE WBS Quality Checks. Do not merge by name alone (two differently-named endpoints can be the same API; two similarly-named endpoints can be functionally distinct) — when in doubt, treat them as distinct APIs and log the ambiguity in Assumptions & Open Questions.
560
+
561
+ If an API generated for one User Story is reused by another User Story:
562
+
563
+ - Reuse the existing API ID.
564
+ - Do not duplicate the API contract.
565
+ - Reference the previously generated API.
566
+ - Document the dependency.
567
+
568
+ Example: User Story 8 reuses API-003 generated in User Story 2. Reference: `Uses Existing API: API-003`. Do not regenerate the same API.
569
+
570
+ ### Mock Data Requirements
571
+
572
+ State the field-level schema (field name, type, format) once per API, then provide the minimum 10 example records against that schema. The 10 records must not be near-identical copies — include at least one boundary/edge-case record (e.g., max-length string, zero/negative number, empty optional fields) and one record per distinct business status/state identified for that resource (see Business status states under Step 6), where applicable. Mock data is synthetic test data only — never present it as real captured data.
573
+
574
+ **Scale exception:** for a run producing more than ~50 APIs, it is acceptable to give one fully worked example record plus the schema and a one-line rule for generating the rest (e.g., "vary `status` across Draft/Approved/Rejected, `amount` across boundary and mid-range values") instead of spelling out all 10 records verbatim per API — log that this abbreviation was used in Assumptions & Open Questions.
575
+
576
+ ### Mock Generator Compatibility
577
+
578
+ The generated output is intended to be consumed by the next AI skill.
579
+
580
+ Therefore, every API contract must contain sufficient information for the next skill to automatically generate:
581
+
582
+ - Mock Server
583
+ - Mock Routes
584
+ - Mock Request Validation
585
+ - Mock Success Responses
586
+ - Mock Error Responses
587
+ - Mock Data
588
+ - OpenAPI Specification
589
+ - Swagger Documentation
590
+ - MSW Handlers
591
+ - Express Mock Server
592
+ - JSON Server Configuration
593
+ - Postman Collection
594
+
595
+ The next skill must be able to process each User Story independently without requiring additional user input.
596
+
597
+ ### Completion Validation
598
+
599
+ Before completing the document, verify:
600
+
601
+ - Every User Story has been processed.
602
+ - Every backend interaction has an API contract.
603
+ - No User Story has been skipped.
604
+ - No duplicate APIs exist.
605
+ - Shared APIs are referenced rather than regenerated.
606
+ - API numbering is sequential and unique.
607
+ - Every API includes complete request and response definitions.
608
+ - Every API contains enough information for downstream mock generation.
609
+ - Every AI-generated API contract is explicitly labeled as such.
610
+ - Every API contract includes Security Requirements and a Retry & Idempotency value (or `N/A` for read-only APIs).
611
+ - Every write-operation API's Request Headers include `Idempotency-Key`.
612
+ - Contract ID values follow the this-mode rule (matches API ID, or a real external ID) — never the WBS mode's `AI-GEN-<FE WBS ID>` scheme.
613
+ - A trailing `Assumptions & Open Questions` section is present unless zero assumptions were made.
614
+
615
+ Do not finish until all User Stories have been processed and validated.
616
+
617
+ ## Step 8 — Data Dependencies
618
+
619
+ Identify
620
+
621
+ - Master Data
622
+ - Cached Data
623
+ - User Profile
624
+ - Session Data
625
+ - Preferences
626
+ - Permissions
627
+ - Feature Flags
628
+ - Configuration
629
+ - Static Content
630
+ - Localization / Language Files
631
+
632
+ ## Step 9 — Navigation
633
+
634
+ Identify
635
+
636
+ - Entry Screen
637
+ - Exit Screen
638
+ - Forward Navigation
639
+ - Backward Navigation
640
+ - Deep Links
641
+ - External Links
642
+ - Protected Routes
643
+ - Authentication Flow
644
+
645
+ **Circular navigation:** detect loops where a screen can return to itself through a chain of navigations (e.g., Screen A → B → A). Document each loop in Notes so reviewers can confirm it is intentional (e.g., a back-and-forth wizard step) rather than an accidental dead end.
646
+
647
+ ## Step 10 — Edge Cases
648
+
649
+ Consider
650
+
651
+ - Offline
652
+ - Timeout
653
+ - Slow API
654
+ - Invalid Response
655
+ - Missing Data
656
+ - Duplicate Submission
657
+ - Concurrent Requests
658
+ - Session Timeout
659
+ - Permission Changes
660
+ - Feature Disabled
661
+ - Unsupported Locale / Missing Translation
662
+
663
+ ## Output Format
664
+
665
+ Generate a Markdown table with columns
666
+
667
+ | FE WBS ID | Journey Step | Screen / Component | Description | User Interaction | Validation Rules | UI States | API Dependency | Data Dependency | Contract ID | Source Reference | Notes |
668
+ |---|---|---|---|---|---|---|---|---|---|---|---|
669
+
670
+ The header row must always be followed immediately by the delimiter row shown above so the table renders as valid Markdown — never omit it.
671
+
672
+ Generate one row for every implementation item.
673
+
674
+ **Row granularity (required — do not skip):** one row = one distinct implementation unit, and every row's Screen / Component cell must start with a type tag so estimators can tell build-once items from per-screen items:
675
+
676
+ - `Screen: <name>` — one row per screen (Step 2), covering that screen's own interactions/validations/states/APIs together in their respective columns.
677
+ - `Component: <name>` — one row per reusable component (Step 3), placed at its first appearance in the canonical processing order (see Step 1); reference it by name (do not re-describe it) on every screen row that reuses it.
678
+ - `Popup: <name>` / `Modal: <name>` / `Bottom Sheet: <name>` — one row each, since these carry their own validation/state/API behavior independent of the screen that triggers them.
679
+
680
+ **Cross-referencing reused components:** a screen row's Screen / Component cell holds only that screen's own `Screen: <name>` tag — never append a second type tag to the same cell. When a screen reuses a component that already has its own `Component: <name>` row, list the reused component names in that screen row's Notes column as `Uses: <ComponentName>, <ComponentName>`.
681
+
682
+ Never split a single screen's interactions, validations, or states into separate rows — list them together in their respective columns for that one screen row. This rule is what keeps row count and structure identical across repeated runs on the same input.
683
+
684
+ **Large outputs:** when the WBS exceeds roughly 40 rows, group rows under a `### <Module/Epic name>` sub-heading per functional module while keeping one continuous table structure and one continuous ID sequence across all groups — never restart numbering per group. Determine module/epic boundaries from the top-level feature/epic names already used in the source journey/BRD; if the source has no such grouping, use the primary flows identified in Step 1. List modules in the canonical processing order (see Step 1).
685
+
686
+ Use sequential IDs
687
+
688
+ - FE-001
689
+ - FE-002
690
+ - FE-003
691
+ - ...
692
+
693
+ **Journey Step labeling:** reference the step identifier from the source user journey/BRD (e.g., `JS-1`) when one exists; otherwise assign sequential labels (`Step 1`, `Step 2`, ...) following the canonical processing order (see Step 1).
694
+
695
+ **Source Reference:** cite where the row's requirement came from — a document name, section/heading, page number, ticket ID, or Figma frame name (e.g., `BRD §4.2`, `Figma: Checkout Flow / Frame 3`). If the item was inferred rather than explicitly stated, write `Inferred — see Assumptions & Open Questions` instead of leaving it blank.
696
+
697
+ **Markdown safety:** escape or remove literal pipe (`|`) characters inside cell content so the table remains valid Markdown.
698
+
699
+ **Empty cell convention:** never leave a cell blank. Use `N/A` when a column genuinely does not apply to that row (e.g., Contract ID for a component with no API dependency, Validation Rules for a static display screen). Use `Not Provided` only when the column applies but the source material didn't supply the value (see No fabrication rule in Step 7).
700
+
701
+ **AI-generated API cells:** when an API Dependency was produced via API Generation (Autonomous Mode), the API Dependency cell must read `<METHOD> <Endpoint> (AI Generated)` and the Contract ID cell must hold the assigned `AI-GEN-<FE WBS ID>` value — never blend a generated endpoint into a cell without the `(AI Generated)` marker. Every such row's full specification (headers, parameters, request/response bodies, validation, security, retry/idempotency) belongs in a **Generated API Specifications** appendix, appended immediately after the main table (and before Assumptions & Open Questions, if both are present) — one `#### API: <API Name>` block per generated endpoint, covering every subsection listed under Automatically Generate in API Generation (Autonomous Mode), and ending with the line `**Status:** AI Generated API Specification (Recommended Implementation)`. Omit this appendix entirely if no APIs were auto-generated.
702
+
703
+ ## Quality Checks
704
+
705
+ Before finalizing verify
706
+
707
+ - ✓ Every journey step has coverage
708
+ - ✓ Every screen has states
709
+ - ✓ Every component has behavior
710
+ - ✓ Every form has validation
711
+ - ✓ Every API has dependency mapping
712
+ - ✓ Every navigation path exists
713
+ - ✓ Every reusable component is identified
714
+ - ✓ No duplicate screens, components, APIs, or validation rules — dedupe by functional identity (same route/purpose/journey step), not by name alone: two screens sharing a name but serving different purposes are two separate rows (disambiguate their names, e.g., `Confirmation (Order)` vs. `Confirmation (Password Reset)`); legitimate role-variant rows (see Step 2) are not duplicates. This also covers duplicates caused by the same requirement appearing in more than one source document.
715
+ - ✓ No missing edge cases
716
+ - ✓ Every AI-generated API is tagged `(AI Generated)` in its table row and has a matching detailed block in the Generated API Specifications appendix
717
+
718
+ If any check fails, revise the WBS table before returning output — but limit yourself to one revision pass per check. If a check still cannot be fully satisfied after that revision (e.g., an edge case genuinely cannot be determined from the source), stop revising and log the residual gap in Assumptions & Open Questions instead of looping indefinitely.
719
+
720
+ ## Output Rules
721
+
722
+ - Never generate application code.
723
+ - Never generate React.
724
+ - Never generate Flutter.
725
+ - Never generate HTML.
726
+ - Never generate CSS.
727
+
728
+ Generate only frontend planning artifacts. Structured API specification text (endpoint definitions, JSON request/response examples, header lists) produced under API Generation (Autonomous Mode) is a planning artifact, not application code, and is allowed.
729
+
730
+ The output should be implementation-ready and detailed enough that developers can estimate effort and begin frontend development without additional clarification.
731
+
732
+ Every row's Contract ID, API Name, and validation rule must trace to a source document, be produced by API Generation (Autonomous Mode) and explicitly labeled `(AI Generated)` / `AI Generated API Specification (Recommended Implementation)`, or be explicitly logged as an assumption — never silently fabricated.
733
+
734
+ Always append an "Assumptions & Open Questions" section at the end whenever any assumption, conflict, inference, or residual gap was recorded during analysis (per the Inputs, Step 4, Step 7, Journey Step, Source Reference, and Quality Checks rules above) — not only when requirements are ambiguous. Format each entry as one bullet: `- <topic>: <what was assumed or left unresolved> — <what confirmation would resolve it>`. Omit the section only if the WBS required zero assumptions.