@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.
- package/LICENSE.txt +202 -0
- package/README.md +490 -319
- package/bin/dev.cmd +2 -2
- package/bin/dev.js +5 -5
- package/bin/run.cmd +2 -2
- package/bin/run.js +4 -4
- package/bin/slingr +1 -0
- package/dist/commands/build.d.ts +20 -0
- package/dist/commands/build.d.ts.map +1 -0
- package/dist/commands/build.js +206 -0
- package/dist/commands/build.js.map +1 -0
- package/dist/commands/create-app.d.ts +0 -1
- package/dist/commands/create-app.d.ts.map +1 -1
- package/dist/commands/create-app.js +38 -57
- package/dist/commands/create-app.js.map +1 -1
- package/dist/commands/debug.d.ts +28 -0
- package/dist/commands/debug.d.ts.map +1 -0
- package/dist/commands/debug.js +474 -0
- package/dist/commands/debug.js.map +1 -0
- package/dist/commands/ds.d.ts +14 -1
- package/dist/commands/ds.d.ts.map +1 -1
- package/dist/commands/ds.js +450 -121
- package/dist/commands/ds.js.map +1 -1
- package/dist/commands/gql.d.ts +1 -1
- package/dist/commands/gql.d.ts.map +1 -1
- package/dist/commands/gql.js +190 -184
- package/dist/commands/gql.js.map +1 -1
- package/dist/commands/infra/down.d.ts.map +1 -1
- package/dist/commands/infra/down.js +8 -7
- package/dist/commands/infra/down.js.map +1 -1
- package/dist/commands/infra/up.d.ts.map +1 -1
- package/dist/commands/infra/up.js +8 -7
- package/dist/commands/infra/up.js.map +1 -1
- package/dist/commands/infra/update.d.ts +1 -0
- package/dist/commands/infra/update.d.ts.map +1 -1
- package/dist/commands/infra/update.js +33 -69
- package/dist/commands/infra/update.js.map +1 -1
- package/dist/commands/run.d.ts +29 -2
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +628 -130
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/setup.d.ts +1 -1
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +34 -71
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/sync-metadata.d.ts +15 -0
- package/dist/commands/sync-metadata.d.ts.map +1 -0
- package/dist/commands/sync-metadata.js +225 -0
- package/dist/commands/sync-metadata.js.map +1 -0
- package/dist/commands/users.d.ts +30 -0
- package/dist/commands/users.d.ts.map +1 -0
- package/dist/commands/users.js +472 -0
- package/dist/commands/users.js.map +1 -0
- package/dist/commands/views.d.ts +11 -0
- package/dist/commands/views.d.ts.map +1 -0
- package/dist/commands/views.js +73 -0
- package/dist/commands/views.js.map +1 -0
- package/dist/projectStructure.d.ts +2 -2
- package/dist/projectStructure.d.ts.map +1 -1
- package/dist/projectStructure.js +281 -69
- package/dist/projectStructure.js.map +1 -1
- package/dist/scripts/generate-metadata.d.ts +13 -0
- package/dist/scripts/generate-metadata.d.ts.map +1 -0
- package/dist/scripts/generate-metadata.js +412 -0
- package/dist/scripts/generate-metadata.js.map +1 -0
- package/dist/scripts/generate-metadata.ts +498 -0
- package/dist/scripts/generate-schema.d.ts +1 -1
- package/dist/scripts/generate-schema.js +168 -74
- package/dist/scripts/generate-schema.js.map +1 -1
- package/dist/scripts/generate-schema.ts +258 -143
- package/dist/templates/.env.template +23 -0
- package/dist/templates/.firebaserc.template +5 -0
- package/dist/templates/.github/copilot-instructions.md.template +652 -17
- package/dist/templates/backend/Dockerfile.template +30 -0
- package/dist/templates/config/datasource.ts.template +12 -9
- package/dist/templates/config/jest.config.ts +30 -30
- package/dist/templates/config/jest.setup.ts +1 -1
- package/dist/templates/config/tsconfig.json.template +50 -29
- package/dist/templates/dataSources/mysql.ts.template +16 -13
- package/dist/templates/dataSources/postgres.ts.template +15 -13
- package/dist/templates/dataset-generator-script.ts.template +139 -139
- package/dist/templates/datasets/mysql-default/.slingr-schema.json.template +5 -0
- package/dist/templates/datasets/mysql-default/Address.jsonl.template +3 -3
- package/dist/templates/datasets/mysql-default/App.jsonl.template +4 -4
- package/dist/templates/datasets/mysql-default/Company.jsonl.template +3 -3
- package/dist/templates/datasets/mysql-default/Person.jsonl.template +2 -2
- package/dist/templates/datasets/mysql-default/User.jsonl.template +1 -0
- package/dist/templates/datasets/mysql-default/instructions.md.template +1 -0
- package/dist/templates/datasets/postgres-default/.slingr-schema.json.template +5 -0
- package/dist/templates/datasets/postgres-default/Address.jsonl.template +3 -3
- package/dist/templates/datasets/postgres-default/App.jsonl.template +4 -4
- package/dist/templates/datasets/postgres-default/Company.jsonl.template +3 -3
- package/dist/templates/datasets/postgres-default/Person.jsonl.template +2 -2
- package/dist/templates/datasets/postgres-default/User.jsonl.template +1 -0
- package/dist/templates/datasets/postgres-default/instructions.md.template +1 -0
- package/dist/templates/docker-compose.prod-test.yml.template +32 -0
- package/dist/templates/docker-compose.yml.template +24 -0
- package/dist/templates/docs/app-description.md.template +33 -33
- package/dist/templates/firebase.json.template +68 -0
- package/dist/templates/frontend/.umirc.ts.template +23 -0
- package/dist/templates/frontend/package.json.template +45 -0
- package/dist/templates/frontend/public/config.json +6 -0
- package/dist/templates/frontend/public/logo.svg +6 -0
- package/dist/templates/frontend/src/app.tsx.template +44 -0
- package/dist/templates/frontend/src/global.less.template +117 -0
- package/dist/templates/frontend/src/layouts/MainLayout.tsx.template +75 -0
- package/dist/templates/frontend/src/types/graphql-augmentation.d.ts.template +44 -0
- package/dist/templates/frontend/src/views/customViews/user/UserCreateView.tsx.template +18 -0
- package/dist/templates/frontend/src/views/customViews/user/UserEditView.tsx.template +29 -0
- package/dist/templates/frontend/src/views/customViews/user/UserReadView.tsx.template +24 -0
- package/dist/templates/frontend/src/views/customViews/user/UserTableView.tsx.template +38 -0
- package/dist/templates/frontend/src/views/customViews/welcome.tsx.template +34 -0
- package/dist/templates/frontend/tsconfig.json.template +50 -0
- package/dist/templates/gql/codegen.yml.template +25 -25
- package/dist/templates/gql/index.ts.template +17 -24
- package/dist/templates/gql/operations.graphql.template +30 -30
- package/dist/templates/ops/README.md.template +1045 -0
- package/dist/templates/ops/cloudbuild.yaml.template +161 -0
- package/dist/templates/ops/scripts/_utils.js.template +217 -0
- package/dist/templates/ops/scripts/deploy.js.template +145 -0
- package/dist/templates/ops/scripts/setup-gcp.js.template +330 -0
- package/dist/templates/ops/scripts/setup-secrets.js.template +76 -0
- package/dist/templates/ops/scripts/test-prod-local.js.template +49 -0
- package/dist/templates/package.json.template +50 -38
- package/dist/templates/pnpm-workspace.yaml.template +3 -0
- package/dist/templates/prompt-analysis.md.template +110 -110
- package/dist/templates/prompt-script-generation.md.template +258 -258
- package/dist/templates/src/Address.ts.template +28 -31
- package/dist/templates/src/App.ts.template +17 -61
- package/dist/templates/src/Company.ts.template +41 -47
- package/dist/templates/src/Models.test.ts.template +654 -654
- package/dist/templates/src/Person.test.ts.template +289 -289
- package/dist/templates/src/Person.ts.template +90 -105
- package/dist/templates/src/actions/index.ts.template +11 -11
- package/dist/templates/src/auth/permissions.ts.template +34 -0
- package/dist/templates/src/data/App.ts.template +48 -0
- package/dist/templates/src/data/User.ts.template +35 -0
- package/dist/templates/src/types/gql.d.ts.template +17 -17
- package/dist/templates/vscode/extensions.json +4 -3
- package/dist/templates/vscode/settings.json +17 -11
- package/dist/templates/workspace-package.json.template +21 -0
- package/dist/utils/buildCache.d.ts +12 -0
- package/dist/utils/buildCache.d.ts.map +1 -0
- package/dist/utils/buildCache.js +102 -0
- package/dist/utils/buildCache.js.map +1 -0
- package/dist/utils/checkFramework.d.ts +27 -0
- package/dist/utils/checkFramework.d.ts.map +1 -0
- package/dist/utils/checkFramework.js +104 -0
- package/dist/utils/checkFramework.js.map +1 -0
- package/dist/utils/datasourceParser.d.ts +11 -0
- package/dist/utils/datasourceParser.d.ts.map +1 -1
- package/dist/utils/datasourceParser.js +154 -56
- package/dist/utils/datasourceParser.js.map +1 -1
- package/dist/utils/dockerManager.d.ts +25 -0
- package/dist/utils/dockerManager.d.ts.map +1 -0
- package/dist/utils/dockerManager.js +281 -0
- package/dist/utils/dockerManager.js.map +1 -0
- package/dist/utils/infraFileParser.d.ts +26 -0
- package/dist/utils/infraFileParser.d.ts.map +1 -0
- package/dist/utils/infraFileParser.js +75 -0
- package/dist/utils/infraFileParser.js.map +1 -0
- package/dist/utils/jsonlLoader.d.ts +91 -12
- package/dist/utils/jsonlLoader.d.ts.map +1 -1
- package/dist/utils/jsonlLoader.js +674 -63
- package/dist/utils/jsonlLoader.js.map +1 -1
- package/dist/utils/model-analyzer.d.ts.map +1 -1
- package/dist/utils/model-analyzer.js +67 -13
- package/dist/utils/model-analyzer.js.map +1 -1
- package/dist/utils/userManagement.d.ts +57 -0
- package/dist/utils/userManagement.d.ts.map +1 -0
- package/dist/utils/userManagement.js +288 -0
- package/dist/utils/userManagement.js.map +1 -0
- package/dist/utils/viewsGenerator.d.ts +15 -0
- package/dist/utils/viewsGenerator.d.ts.map +1 -0
- package/dist/utils/viewsGenerator.js +311 -0
- package/dist/utils/viewsGenerator.js.map +1 -0
- package/oclif.manifest.json +445 -20
- package/package.json +29 -27
- package/src/templates/.env.template +23 -0
- package/src/templates/.firebaserc.template +5 -0
- package/src/templates/.github/copilot-instructions.md.template +652 -17
- package/src/templates/backend/Dockerfile.template +30 -0
- package/src/templates/config/datasource.ts.template +12 -9
- package/src/templates/config/jest.config.ts +30 -30
- package/src/templates/config/jest.setup.ts +1 -1
- package/src/templates/config/tsconfig.json.template +50 -29
- package/src/templates/dataSources/mysql.ts.template +16 -13
- package/src/templates/dataSources/postgres.ts.template +15 -13
- package/src/templates/dataset-generator-script.ts.template +139 -139
- package/src/templates/datasets/mysql-default/.slingr-schema.json.template +5 -0
- package/src/templates/datasets/mysql-default/Address.jsonl.template +3 -3
- package/src/templates/datasets/mysql-default/App.jsonl.template +4 -4
- package/src/templates/datasets/mysql-default/Company.jsonl.template +3 -3
- package/src/templates/datasets/mysql-default/Person.jsonl.template +2 -2
- package/src/templates/datasets/mysql-default/User.jsonl.template +1 -0
- package/src/templates/datasets/mysql-default/instructions.md.template +1 -0
- package/src/templates/datasets/postgres-default/.slingr-schema.json.template +5 -0
- package/src/templates/datasets/postgres-default/Address.jsonl.template +3 -3
- package/src/templates/datasets/postgres-default/App.jsonl.template +4 -4
- package/src/templates/datasets/postgres-default/Company.jsonl.template +3 -3
- package/src/templates/datasets/postgres-default/Person.jsonl.template +2 -2
- package/src/templates/datasets/postgres-default/User.jsonl.template +1 -0
- package/src/templates/datasets/postgres-default/instructions.md.template +1 -0
- package/src/templates/docker-compose.prod-test.yml.template +32 -0
- package/src/templates/docker-compose.yml.template +24 -0
- package/src/templates/docs/app-description.md.template +33 -33
- package/src/templates/firebase.json.template +68 -0
- package/src/templates/frontend/.umirc.ts.template +23 -0
- package/src/templates/frontend/package.json.template +45 -0
- package/src/templates/frontend/public/config.json +6 -0
- package/src/templates/frontend/public/logo.svg +6 -0
- package/src/templates/frontend/src/app.tsx.template +44 -0
- package/src/templates/frontend/src/global.less.template +117 -0
- package/src/templates/frontend/src/layouts/MainLayout.tsx.template +75 -0
- package/src/templates/frontend/src/types/graphql-augmentation.d.ts.template +44 -0
- package/src/templates/frontend/src/views/customViews/user/UserCreateView.tsx.template +18 -0
- package/src/templates/frontend/src/views/customViews/user/UserEditView.tsx.template +29 -0
- package/src/templates/frontend/src/views/customViews/user/UserReadView.tsx.template +24 -0
- package/src/templates/frontend/src/views/customViews/user/UserTableView.tsx.template +38 -0
- package/src/templates/frontend/src/views/customViews/welcome.tsx.template +34 -0
- package/src/templates/frontend/tsconfig.json.template +50 -0
- package/src/templates/gql/codegen.yml.template +25 -25
- package/src/templates/gql/index.ts.template +17 -24
- package/src/templates/gql/operations.graphql.template +30 -30
- package/src/templates/ops/README.md.template +1045 -0
- package/src/templates/ops/cloudbuild.yaml.template +161 -0
- package/src/templates/ops/scripts/_utils.js.template +217 -0
- package/src/templates/ops/scripts/deploy.js.template +145 -0
- package/src/templates/ops/scripts/setup-gcp.js.template +330 -0
- package/src/templates/ops/scripts/setup-secrets.js.template +76 -0
- package/src/templates/ops/scripts/test-prod-local.js.template +49 -0
- package/src/templates/package.json.template +50 -38
- package/src/templates/pnpm-workspace.yaml.template +3 -0
- package/src/templates/prompt-analysis.md.template +110 -110
- package/src/templates/prompt-script-generation.md.template +258 -258
- package/src/templates/src/Address.ts.template +28 -31
- package/src/templates/src/App.ts.template +17 -61
- package/src/templates/src/Company.ts.template +41 -47
- package/src/templates/src/Models.test.ts.template +654 -654
- package/src/templates/src/Person.test.ts.template +289 -289
- package/src/templates/src/Person.ts.template +90 -105
- package/src/templates/src/actions/index.ts.template +11 -11
- package/src/templates/src/auth/permissions.ts.template +34 -0
- package/src/templates/src/data/App.ts.template +48 -0
- package/src/templates/src/data/User.ts.template +35 -0
- package/src/templates/src/types/gql.d.ts.template +17 -17
- package/src/templates/vscode/extensions.json +4 -3
- package/src/templates/vscode/settings.json +17 -11
- package/src/templates/workspace-package.json.template +21 -0
- package/dist/templates/src/index.ts +0 -66
- 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.
|