@slingr/cli 0.0.2 → 0.0.4

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 (251) hide show
  1. package/LICENSE.txt +202 -0
  2. package/README.md +490 -319
  3. package/bin/dev.cmd +2 -2
  4. package/bin/dev.js +5 -5
  5. package/bin/run.cmd +2 -2
  6. package/bin/run.js +4 -4
  7. package/bin/slingr +1 -0
  8. package/dist/commands/build.d.ts +20 -0
  9. package/dist/commands/build.d.ts.map +1 -0
  10. package/dist/commands/build.js +206 -0
  11. package/dist/commands/build.js.map +1 -0
  12. package/dist/commands/create-app.d.ts +0 -1
  13. package/dist/commands/create-app.d.ts.map +1 -1
  14. package/dist/commands/create-app.js +38 -57
  15. package/dist/commands/create-app.js.map +1 -1
  16. package/dist/commands/debug.d.ts +28 -0
  17. package/dist/commands/debug.d.ts.map +1 -0
  18. package/dist/commands/debug.js +474 -0
  19. package/dist/commands/debug.js.map +1 -0
  20. package/dist/commands/ds.d.ts +14 -1
  21. package/dist/commands/ds.d.ts.map +1 -1
  22. package/dist/commands/ds.js +450 -121
  23. package/dist/commands/ds.js.map +1 -1
  24. package/dist/commands/gql.d.ts +1 -1
  25. package/dist/commands/gql.d.ts.map +1 -1
  26. package/dist/commands/gql.js +190 -184
  27. package/dist/commands/gql.js.map +1 -1
  28. package/dist/commands/infra/down.d.ts.map +1 -1
  29. package/dist/commands/infra/down.js +8 -7
  30. package/dist/commands/infra/down.js.map +1 -1
  31. package/dist/commands/infra/up.d.ts.map +1 -1
  32. package/dist/commands/infra/up.js +8 -7
  33. package/dist/commands/infra/up.js.map +1 -1
  34. package/dist/commands/infra/update.d.ts +1 -0
  35. package/dist/commands/infra/update.d.ts.map +1 -1
  36. package/dist/commands/infra/update.js +33 -69
  37. package/dist/commands/infra/update.js.map +1 -1
  38. package/dist/commands/run.d.ts +29 -2
  39. package/dist/commands/run.d.ts.map +1 -1
  40. package/dist/commands/run.js +628 -130
  41. package/dist/commands/run.js.map +1 -1
  42. package/dist/commands/setup.d.ts +1 -1
  43. package/dist/commands/setup.d.ts.map +1 -1
  44. package/dist/commands/setup.js +34 -71
  45. package/dist/commands/setup.js.map +1 -1
  46. package/dist/commands/sync-metadata.d.ts +15 -0
  47. package/dist/commands/sync-metadata.d.ts.map +1 -0
  48. package/dist/commands/sync-metadata.js +225 -0
  49. package/dist/commands/sync-metadata.js.map +1 -0
  50. package/dist/commands/users.d.ts +30 -0
  51. package/dist/commands/users.d.ts.map +1 -0
  52. package/dist/commands/users.js +472 -0
  53. package/dist/commands/users.js.map +1 -0
  54. package/dist/commands/views.d.ts +11 -0
  55. package/dist/commands/views.d.ts.map +1 -0
  56. package/dist/commands/views.js +73 -0
  57. package/dist/commands/views.js.map +1 -0
  58. package/dist/projectStructure.d.ts +2 -2
  59. package/dist/projectStructure.d.ts.map +1 -1
  60. package/dist/projectStructure.js +281 -69
  61. package/dist/projectStructure.js.map +1 -1
  62. package/dist/scripts/generate-metadata.d.ts +13 -0
  63. package/dist/scripts/generate-metadata.d.ts.map +1 -0
  64. package/dist/scripts/generate-metadata.js +412 -0
  65. package/dist/scripts/generate-metadata.js.map +1 -0
  66. package/dist/scripts/generate-metadata.ts +498 -0
  67. package/dist/scripts/generate-schema.d.ts +1 -1
  68. package/dist/scripts/generate-schema.js +168 -74
  69. package/dist/scripts/generate-schema.js.map +1 -1
  70. package/dist/scripts/generate-schema.ts +258 -143
  71. package/dist/templates/.env.template +23 -0
  72. package/dist/templates/.firebaserc.template +5 -0
  73. package/dist/templates/.github/copilot-instructions.md.template +652 -17
  74. package/dist/templates/backend/Dockerfile.template +30 -0
  75. package/dist/templates/config/datasource.ts.template +12 -9
  76. package/dist/templates/config/jest.config.ts +30 -30
  77. package/dist/templates/config/jest.setup.ts +1 -1
  78. package/dist/templates/config/tsconfig.json.template +50 -29
  79. package/dist/templates/dataSources/mysql.ts.template +16 -13
  80. package/dist/templates/dataSources/postgres.ts.template +15 -13
  81. package/dist/templates/dataset-generator-script.ts.template +139 -139
  82. package/dist/templates/datasets/mysql-default/.slingr-schema.json.template +5 -0
  83. package/dist/templates/datasets/mysql-default/Address.jsonl.template +3 -3
  84. package/dist/templates/datasets/mysql-default/App.jsonl.template +4 -4
  85. package/dist/templates/datasets/mysql-default/Company.jsonl.template +3 -3
  86. package/dist/templates/datasets/mysql-default/Person.jsonl.template +2 -2
  87. package/dist/templates/datasets/mysql-default/User.jsonl.template +1 -0
  88. package/dist/templates/datasets/mysql-default/instructions.md.template +1 -0
  89. package/dist/templates/datasets/postgres-default/.slingr-schema.json.template +5 -0
  90. package/dist/templates/datasets/postgres-default/Address.jsonl.template +3 -3
  91. package/dist/templates/datasets/postgres-default/App.jsonl.template +4 -4
  92. package/dist/templates/datasets/postgres-default/Company.jsonl.template +3 -3
  93. package/dist/templates/datasets/postgres-default/Person.jsonl.template +2 -2
  94. package/dist/templates/datasets/postgres-default/User.jsonl.template +1 -0
  95. package/dist/templates/datasets/postgres-default/instructions.md.template +1 -0
  96. package/dist/templates/docker-compose.prod-test.yml.template +32 -0
  97. package/dist/templates/docker-compose.yml.template +24 -0
  98. package/dist/templates/docs/app-description.md.template +33 -33
  99. package/dist/templates/firebase.json.template +68 -0
  100. package/dist/templates/frontend/.umirc.ts.template +23 -0
  101. package/dist/templates/frontend/package.json.template +45 -0
  102. package/dist/templates/frontend/public/config.json +6 -0
  103. package/dist/templates/frontend/public/logo.svg +6 -0
  104. package/dist/templates/frontend/src/app.tsx.template +44 -0
  105. package/dist/templates/frontend/src/global.less.template +117 -0
  106. package/dist/templates/frontend/src/layouts/MainLayout.tsx.template +75 -0
  107. package/dist/templates/frontend/src/types/graphql-augmentation.d.ts.template +44 -0
  108. package/dist/templates/frontend/src/views/customViews/user/UserCreateView.tsx.template +18 -0
  109. package/dist/templates/frontend/src/views/customViews/user/UserEditView.tsx.template +29 -0
  110. package/dist/templates/frontend/src/views/customViews/user/UserReadView.tsx.template +24 -0
  111. package/dist/templates/frontend/src/views/customViews/user/UserTableView.tsx.template +38 -0
  112. package/dist/templates/frontend/src/views/customViews/welcome.tsx.template +34 -0
  113. package/dist/templates/frontend/tsconfig.json.template +50 -0
  114. package/dist/templates/gql/codegen.yml.template +25 -25
  115. package/dist/templates/gql/index.ts.template +17 -24
  116. package/dist/templates/gql/operations.graphql.template +30 -30
  117. package/dist/templates/ops/README.md.template +1045 -0
  118. package/dist/templates/ops/cloudbuild.yaml.template +161 -0
  119. package/dist/templates/ops/scripts/_utils.js.template +217 -0
  120. package/dist/templates/ops/scripts/deploy.js.template +145 -0
  121. package/dist/templates/ops/scripts/setup-gcp.js.template +330 -0
  122. package/dist/templates/ops/scripts/setup-secrets.js.template +76 -0
  123. package/dist/templates/ops/scripts/test-prod-local.js.template +49 -0
  124. package/dist/templates/package.json.template +50 -38
  125. package/dist/templates/pnpm-workspace.yaml.template +3 -0
  126. package/dist/templates/prompt-analysis.md.template +110 -110
  127. package/dist/templates/prompt-script-generation.md.template +258 -258
  128. package/dist/templates/src/Address.ts.template +28 -31
  129. package/dist/templates/src/App.ts.template +17 -61
  130. package/dist/templates/src/Company.ts.template +41 -47
  131. package/dist/templates/src/Models.test.ts.template +654 -654
  132. package/dist/templates/src/Person.test.ts.template +289 -289
  133. package/dist/templates/src/Person.ts.template +90 -105
  134. package/dist/templates/src/actions/index.ts.template +11 -11
  135. package/dist/templates/src/auth/permissions.ts.template +34 -0
  136. package/dist/templates/src/data/App.ts.template +48 -0
  137. package/dist/templates/src/data/User.ts.template +35 -0
  138. package/dist/templates/src/types/gql.d.ts.template +17 -17
  139. package/dist/templates/vscode/extensions.json +4 -3
  140. package/dist/templates/vscode/settings.json +17 -11
  141. package/dist/templates/workspace-package.json.template +21 -0
  142. package/dist/utils/buildCache.d.ts +12 -0
  143. package/dist/utils/buildCache.d.ts.map +1 -0
  144. package/dist/utils/buildCache.js +102 -0
  145. package/dist/utils/buildCache.js.map +1 -0
  146. package/dist/utils/checkFramework.d.ts +27 -0
  147. package/dist/utils/checkFramework.d.ts.map +1 -0
  148. package/dist/utils/checkFramework.js +104 -0
  149. package/dist/utils/checkFramework.js.map +1 -0
  150. package/dist/utils/datasourceParser.d.ts +11 -0
  151. package/dist/utils/datasourceParser.d.ts.map +1 -1
  152. package/dist/utils/datasourceParser.js +154 -56
  153. package/dist/utils/datasourceParser.js.map +1 -1
  154. package/dist/utils/dockerManager.d.ts +25 -0
  155. package/dist/utils/dockerManager.d.ts.map +1 -0
  156. package/dist/utils/dockerManager.js +281 -0
  157. package/dist/utils/dockerManager.js.map +1 -0
  158. package/dist/utils/infraFileParser.d.ts +26 -0
  159. package/dist/utils/infraFileParser.d.ts.map +1 -0
  160. package/dist/utils/infraFileParser.js +75 -0
  161. package/dist/utils/infraFileParser.js.map +1 -0
  162. package/dist/utils/jsonlLoader.d.ts +91 -12
  163. package/dist/utils/jsonlLoader.d.ts.map +1 -1
  164. package/dist/utils/jsonlLoader.js +674 -63
  165. package/dist/utils/jsonlLoader.js.map +1 -1
  166. package/dist/utils/model-analyzer.d.ts.map +1 -1
  167. package/dist/utils/model-analyzer.js +67 -13
  168. package/dist/utils/model-analyzer.js.map +1 -1
  169. package/dist/utils/userManagement.d.ts +57 -0
  170. package/dist/utils/userManagement.d.ts.map +1 -0
  171. package/dist/utils/userManagement.js +288 -0
  172. package/dist/utils/userManagement.js.map +1 -0
  173. package/dist/utils/viewsGenerator.d.ts +15 -0
  174. package/dist/utils/viewsGenerator.d.ts.map +1 -0
  175. package/dist/utils/viewsGenerator.js +311 -0
  176. package/dist/utils/viewsGenerator.js.map +1 -0
  177. package/oclif.manifest.json +445 -20
  178. package/package.json +29 -27
  179. package/src/templates/.env.template +23 -0
  180. package/src/templates/.firebaserc.template +5 -0
  181. package/src/templates/.github/copilot-instructions.md.template +652 -17
  182. package/src/templates/backend/Dockerfile.template +30 -0
  183. package/src/templates/config/datasource.ts.template +12 -9
  184. package/src/templates/config/jest.config.ts +30 -30
  185. package/src/templates/config/jest.setup.ts +1 -1
  186. package/src/templates/config/tsconfig.json.template +50 -29
  187. package/src/templates/dataSources/mysql.ts.template +16 -13
  188. package/src/templates/dataSources/postgres.ts.template +15 -13
  189. package/src/templates/dataset-generator-script.ts.template +139 -139
  190. package/src/templates/datasets/mysql-default/.slingr-schema.json.template +5 -0
  191. package/src/templates/datasets/mysql-default/Address.jsonl.template +3 -3
  192. package/src/templates/datasets/mysql-default/App.jsonl.template +4 -4
  193. package/src/templates/datasets/mysql-default/Company.jsonl.template +3 -3
  194. package/src/templates/datasets/mysql-default/Person.jsonl.template +2 -2
  195. package/src/templates/datasets/mysql-default/User.jsonl.template +1 -0
  196. package/src/templates/datasets/mysql-default/instructions.md.template +1 -0
  197. package/src/templates/datasets/postgres-default/.slingr-schema.json.template +5 -0
  198. package/src/templates/datasets/postgres-default/Address.jsonl.template +3 -3
  199. package/src/templates/datasets/postgres-default/App.jsonl.template +4 -4
  200. package/src/templates/datasets/postgres-default/Company.jsonl.template +3 -3
  201. package/src/templates/datasets/postgres-default/Person.jsonl.template +2 -2
  202. package/src/templates/datasets/postgres-default/User.jsonl.template +1 -0
  203. package/src/templates/datasets/postgres-default/instructions.md.template +1 -0
  204. package/src/templates/docker-compose.prod-test.yml.template +32 -0
  205. package/src/templates/docker-compose.yml.template +24 -0
  206. package/src/templates/docs/app-description.md.template +33 -33
  207. package/src/templates/firebase.json.template +68 -0
  208. package/src/templates/frontend/.umirc.ts.template +23 -0
  209. package/src/templates/frontend/package.json.template +45 -0
  210. package/src/templates/frontend/public/config.json +6 -0
  211. package/src/templates/frontend/public/logo.svg +6 -0
  212. package/src/templates/frontend/src/app.tsx.template +44 -0
  213. package/src/templates/frontend/src/global.less.template +117 -0
  214. package/src/templates/frontend/src/layouts/MainLayout.tsx.template +75 -0
  215. package/src/templates/frontend/src/types/graphql-augmentation.d.ts.template +44 -0
  216. package/src/templates/frontend/src/views/customViews/user/UserCreateView.tsx.template +18 -0
  217. package/src/templates/frontend/src/views/customViews/user/UserEditView.tsx.template +29 -0
  218. package/src/templates/frontend/src/views/customViews/user/UserReadView.tsx.template +24 -0
  219. package/src/templates/frontend/src/views/customViews/user/UserTableView.tsx.template +38 -0
  220. package/src/templates/frontend/src/views/customViews/welcome.tsx.template +34 -0
  221. package/src/templates/frontend/tsconfig.json.template +50 -0
  222. package/src/templates/gql/codegen.yml.template +25 -25
  223. package/src/templates/gql/index.ts.template +17 -24
  224. package/src/templates/gql/operations.graphql.template +30 -30
  225. package/src/templates/ops/README.md.template +1045 -0
  226. package/src/templates/ops/cloudbuild.yaml.template +161 -0
  227. package/src/templates/ops/scripts/_utils.js.template +217 -0
  228. package/src/templates/ops/scripts/deploy.js.template +145 -0
  229. package/src/templates/ops/scripts/setup-gcp.js.template +330 -0
  230. package/src/templates/ops/scripts/setup-secrets.js.template +76 -0
  231. package/src/templates/ops/scripts/test-prod-local.js.template +49 -0
  232. package/src/templates/package.json.template +50 -38
  233. package/src/templates/pnpm-workspace.yaml.template +3 -0
  234. package/src/templates/prompt-analysis.md.template +110 -110
  235. package/src/templates/prompt-script-generation.md.template +258 -258
  236. package/src/templates/src/Address.ts.template +28 -31
  237. package/src/templates/src/App.ts.template +17 -61
  238. package/src/templates/src/Company.ts.template +41 -47
  239. package/src/templates/src/Models.test.ts.template +654 -654
  240. package/src/templates/src/Person.test.ts.template +289 -289
  241. package/src/templates/src/Person.ts.template +90 -105
  242. package/src/templates/src/actions/index.ts.template +11 -11
  243. package/src/templates/src/auth/permissions.ts.template +34 -0
  244. package/src/templates/src/data/App.ts.template +48 -0
  245. package/src/templates/src/data/User.ts.template +35 -0
  246. package/src/templates/src/types/gql.d.ts.template +17 -17
  247. package/src/templates/vscode/extensions.json +4 -3
  248. package/src/templates/vscode/settings.json +17 -11
  249. package/src/templates/workspace-package.json.template +21 -0
  250. package/dist/templates/src/index.ts +0 -66
  251. package/src/templates/src/index.ts +0 -66
@@ -1,111 +1,111 @@
1
- # Dataset Quality Analysis: Improve "{{DATASOURCE}}-{{DATASET}}" Synthetic Data
2
-
3
- ## ⚠️ IMPORTANT: DO NOT MODIFY MODELS
4
- **Your task is ONLY to improve the dataset generation, NOT to modify the existing model definitions.**
5
- The models in `src/data/*.ts` are correct and must remain unchanged. Focus exclusively on generating better, more realistic data that fits these models.
6
-
7
- ## Project Context
8
- {{PROJECT_DESCRIPTION}}
9
-
10
- ## Current Dataset Information
11
- - **Dataset Name**: `{{DATASOURCE}}-{{DATASET}}`
12
- - **Location**: `src/datasets/{{DATASOURCE}}-{{DATASET}}/`
13
- - **Datasource**: {{DATASOURCE}}
14
- - **Generated**: {{TIMESTAMP}}
15
- - **Models**: {{TOTAL_MODELS}} models with {{TOTAL_RECORDS}} total records
16
-
17
- ### Generated Files
18
- {{DATASET_FILES}}
19
-
20
- ## Data Models (READ-ONLY)
21
- The following models define the structure that your dataset must follow:
22
-
23
- {{MODEL_DESCRIPTIONS}}
24
-
25
- ## Current Generated Data Preview
26
- {{DATA_PREVIEW}}
27
-
28
- ---
29
-
30
- ## Your Task: Analyze and Improve Dataset Quality
31
-
32
- Please analyze the **generated dataset only** (not the models) and help improve the data generation to make it more realistic, coherent, and useful for testing.
33
-
34
- ### 1. **Data Realism Assessment**
35
- Analyze the sample data above and identify:
36
- - Which fields have unrealistic or nonsensical values?
37
- - Are the generated values appropriate for the field names and types?
38
- - Do text fields have meaningful content or just random words?
39
- - Are numeric values (ages, prices, quantities) within realistic ranges?
40
- - Do email addresses, phone numbers, and other formatted fields look authentic?
41
-
42
- ### 2. **Data Coherence & Relationships**
43
- Check for logical consistency:
44
- - Do related fields make sense together? (e.g., age and parentEmail relationship)
45
- - Are there dependencies between fields that should be respected?
46
- - Do composition/reference relationships contain appropriate related data?
47
- - Are there any contradictory values in the same record?
48
-
49
- ### 3. **Business Domain Appropriateness**
50
- Consider the business context:
51
- - Do the generated values reflect realistic business scenarios?
52
- - Are the data patterns useful for testing various use cases?
53
- - Would this data help identify bugs or test edge cases?
54
- - Are there missing scenarios or data patterns that should be represented?
55
-
56
- ### 4. **Field-by-Field Generation Improvements**
57
- For each model and its fields, suggest specific improvements:
58
- - Which Faker.js methods would generate more appropriate data?
59
- - Should certain fields use smart generation based on field names?
60
- - Are there field combinations that need coordinated generation?
61
- - Should some fields use predefined realistic values instead of random data?
62
-
63
- ### 5. **Specific Actionable Recommendations**
64
- Provide concrete suggestions to improve the dataset generation:
65
-
66
- #### Example Format:
67
- ```
68
- Model: Person
69
- Field: firstName
70
- Current Issue: Generic random words like "dolor sit"
71
- Improvement: Use faker.person.firstName() for realistic names
72
- Expected Result: "John", "María", "Wei", etc.
73
-
74
- Field: age + parentEmail
75
- Current Issue: parentEmail appears randomly regardless of age
76
- Improvement: Only generate parentEmail when age < 18
77
- Expected Result: Coherent parent-child relationships
78
- ```
79
-
80
- Please provide similar detailed recommendations for EACH field that needs improvement.
81
-
82
- ### 6. **Sample Improved Records**
83
- Show 2-3 examples of what improved records should look like for each model, with realistic and coherent data that respects all field constraints and relationships.
84
-
85
- ---
86
-
87
- ## Generation Strategy Recommendations
88
-
89
- Based on your analysis, suggest:
90
- 1. **Smart Field Mapping**: Which field names should trigger specific Faker methods?
91
- 2. **Conditional Logic**: What field dependencies need to be handled?
92
- 3. **Realistic Ranges**: What are appropriate min/max values for numeric fields?
93
- 4. **Data Patterns**: What mix of typical vs. edge case values would be most useful?
94
- 5. **Relationship Handling**: How to ensure referential integrity and meaningful relationships?
95
-
96
- ---
97
-
98
- ## Technical Constraints (DO NOT CHANGE)
99
- - Models are defined in `src/data/*.ts` and must NOT be modified
100
- - All generated data must pass the model validations (required, min/max, regex, etc.)
101
- - Output format is JSONL (one JSON object per line)
102
- - Generation uses @faker-js/faker library
103
-
104
- ## Next Steps After Analysis
105
- Once you provide your recommendations, I will:
106
- 1. Update the data generation logic to implement your suggestions
107
- 2. Regenerate the dataset with improved realistic data
108
- 3. Validate that all data passes model constraints
109
- 4. Load the improved dataset for testing
110
-
1
+ # Dataset Quality Analysis: Improve "{{DATASOURCE}}-{{DATASET}}" Synthetic Data
2
+
3
+ ## ⚠️ IMPORTANT: DO NOT MODIFY MODELS
4
+ **Your task is ONLY to improve the dataset generation, NOT to modify the existing model definitions.**
5
+ The models in `src/data/*.ts` are correct and must remain unchanged. Focus exclusively on generating better, more realistic data that fits these models.
6
+
7
+ ## Project Context
8
+ {{PROJECT_DESCRIPTION}}
9
+
10
+ ## Current Dataset Information
11
+ - **Dataset Name**: `{{DATASOURCE}}-{{DATASET}}`
12
+ - **Location**: `src/datasets/{{DATASOURCE}}-{{DATASET}}/`
13
+ - **Datasource**: {{DATASOURCE}}
14
+ - **Generated**: {{TIMESTAMP}}
15
+ - **Models**: {{TOTAL_MODELS}} models with {{TOTAL_RECORDS}} total records
16
+
17
+ ### Generated Files
18
+ {{DATASET_FILES}}
19
+
20
+ ## Data Models (READ-ONLY)
21
+ The following models define the structure that your dataset must follow:
22
+
23
+ {{MODEL_DESCRIPTIONS}}
24
+
25
+ ## Current Generated Data Preview
26
+ {{DATA_PREVIEW}}
27
+
28
+ ---
29
+
30
+ ## Your Task: Analyze and Improve Dataset Quality
31
+
32
+ Please analyze the **generated dataset only** (not the models) and help improve the data generation to make it more realistic, coherent, and useful for testing.
33
+
34
+ ### 1. **Data Realism Assessment**
35
+ Analyze the sample data above and identify:
36
+ - Which fields have unrealistic or nonsensical values?
37
+ - Are the generated values appropriate for the field names and types?
38
+ - Do text fields have meaningful content or just random words?
39
+ - Are numeric values (ages, prices, quantities) within realistic ranges?
40
+ - Do email addresses, phone numbers, and other formatted fields look authentic?
41
+
42
+ ### 2. **Data Coherence & Relationships**
43
+ Check for logical consistency:
44
+ - Do related fields make sense together? (e.g., age and parentEmail relationship)
45
+ - Are there dependencies between fields that should be respected?
46
+ - Do composition/reference relationships contain appropriate related data?
47
+ - Are there any contradictory values in the same record?
48
+
49
+ ### 3. **Business Domain Appropriateness**
50
+ Consider the business context:
51
+ - Do the generated values reflect realistic business scenarios?
52
+ - Are the data patterns useful for testing various use cases?
53
+ - Would this data help identify bugs or test edge cases?
54
+ - Are there missing scenarios or data patterns that should be represented?
55
+
56
+ ### 4. **Field-by-Field Generation Improvements**
57
+ For each model and its fields, suggest specific improvements:
58
+ - Which Faker.js methods would generate more appropriate data?
59
+ - Should certain fields use smart generation based on field names?
60
+ - Are there field combinations that need coordinated generation?
61
+ - Should some fields use predefined realistic values instead of random data?
62
+
63
+ ### 5. **Specific Actionable Recommendations**
64
+ Provide concrete suggestions to improve the dataset generation:
65
+
66
+ #### Example Format:
67
+ ```
68
+ Model: Person
69
+ Field: firstName
70
+ Current Issue: Generic random words like "dolor sit"
71
+ Improvement: Use faker.person.firstName() for realistic names
72
+ Expected Result: "John", "María", "Wei", etc.
73
+
74
+ Field: age + parentEmail
75
+ Current Issue: parentEmail appears randomly regardless of age
76
+ Improvement: Only generate parentEmail when age < 18
77
+ Expected Result: Coherent parent-child relationships
78
+ ```
79
+
80
+ Please provide similar detailed recommendations for EACH field that needs improvement.
81
+
82
+ ### 6. **Sample Improved Records**
83
+ Show 2-3 examples of what improved records should look like for each model, with realistic and coherent data that respects all field constraints and relationships.
84
+
85
+ ---
86
+
87
+ ## Generation Strategy Recommendations
88
+
89
+ Based on your analysis, suggest:
90
+ 1. **Smart Field Mapping**: Which field names should trigger specific Faker methods?
91
+ 2. **Conditional Logic**: What field dependencies need to be handled?
92
+ 3. **Realistic Ranges**: What are appropriate min/max values for numeric fields?
93
+ 4. **Data Patterns**: What mix of typical vs. edge case values would be most useful?
94
+ 5. **Relationship Handling**: How to ensure referential integrity and meaningful relationships?
95
+
96
+ ---
97
+
98
+ ## Technical Constraints (DO NOT CHANGE)
99
+ - Models are defined in `src/data/*.ts` and must NOT be modified
100
+ - All generated data must pass the model validations (required, min/max, regex, etc.)
101
+ - Output format is JSONL (one JSON object per line)
102
+ - Generation uses @faker-js/faker library
103
+
104
+ ## Next Steps After Analysis
105
+ Once you provide your recommendations, I will:
106
+ 1. Update the data generation logic to implement your suggestions
107
+ 2. Regenerate the dataset with improved realistic data
108
+ 3. Validate that all data passes model constraints
109
+ 4. Load the improved dataset for testing
110
+
111
111
  Please focus on making the data as realistic and useful as possible while respecting all existing model constraints and validations.