Compare commits

..

No commits in common. "6977f1d6e4a484103bd62f962e28660274348fcc" and "36e382cf1620b17a37a409db9b9ef01d06188fba" have entirely different histories.

14 changed files with 6824 additions and 7118 deletions

View File

@ -36,7 +36,6 @@ export interface Product {
dosageLogic?: string; dosageLogic?: string;
suitableFor?: string; suitableFor?: string;
imageUrl?: string; imageUrl?: string;
images?: string[];
metaTitle?: string; metaTitle?: string;
metaDescription?: string; metaDescription?: string;
keywords?: string; keywords?: string;

View File

@ -2,7 +2,7 @@
"compilerOptions": { "compilerOptions": {
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
"target": "es2023", "target": "es2023",
"lib": ["ES2023", "DOM", "DOM.Iterable"], "lib": ["ES2023", "DOM"],
"module": "esnext", "module": "esnext",
"types": ["vite/client"], "types": ["vite/client"],
"skipLibCheck": true, "skipLibCheck": true,

View File

@ -18,7 +18,7 @@
"16": "lib/services/api.ts", "16": "lib/services/api.ts",
"17": "CreateVideoDto", "17": "CreateVideoDto",
"18": "src/services/api.ts", "18": "src/services/api.ts",
"19": "eslint-plugin-prettier", "19": "eslint",
"20": "BE-001", "20": "BE-001",
"21": "Roles", "21": "Roles",
"22": "FE-001", "22": "FE-001",
@ -311,5 +311,5 @@
"309": "tsconfig-paths", "309": "tsconfig-paths",
"310": "@types/bcryptjs", "310": "@types/bcryptjs",
"311": "typescript-eslint", "311": "typescript-eslint",
"312": "tailwindcss" "312": "globals"
} }

File diff suppressed because one or more lines are too long

View File

@ -1,9 +1,9 @@
{ {
"0": "AdminController", "0": "AdminService",
"1": "productService.ts", "1": "ProductService",
"2": "CmsController", "2": "CmsController",
"3": "app.module.ts", "3": "app.module.ts",
"4": "CreateReviewDto", "4": "reviews.controller.ts",
"5": "tickets.controller.ts", "5": "tickets.controller.ts",
"6": "UserDashboard.tsx", "6": "UserDashboard.tsx",
"7": "MediaSelector.tsx", "7": "MediaSelector.tsx",
@ -18,7 +18,7 @@
"16": "lib/services/api.ts", "16": "lib/services/api.ts",
"17": "CreateVideoDto", "17": "CreateVideoDto",
"18": "src/services/api.ts", "18": "src/services/api.ts",
"19": "eslint", "19": "devDependencies",
"20": "BE-001", "20": "BE-001",
"21": "Roles", "21": "Roles",
"22": "FE-001", "22": "FE-001",
@ -28,21 +28,21 @@
"26": "TEST-001", "26": "TEST-001",
"27": "DEVOPS-001", "27": "DEVOPS-001",
"28": "DOC-001", "28": "DOC-001",
"29": "WholesaleApplyDto", "29": "wholesale.controller.ts",
"30": "main.ts", "30": "main.ts",
"31": "JwtAuthGuard", "31": "admin.module.ts",
"32": "ZibalService", "32": "ZibalService",
"33": "راهنمای تست سیستم (Software Testing)", "33": "راهنمای تست سیستم (Software Testing)",
"34": "CategoriesController", "34": "CategoriesController",
"35": "B2BService", "35": "B2BService",
"36": "What You Must Do When Invoked", "36": "What You Must Do When Invoked",
"37": "userStore.ts", "37": "toPersian",
"38": "UsersService", "38": "UsersService",
"39": "What You Must Do When Invoked", "39": "What You Must Do When Invoked",
"40": "SslController", "40": "SslController",
"41": "PodcastPlayerModal.tsx", "41": "ProductPage.tsx",
"42": "IngredientsService", "42": "IngredientsService",
"43": "AuthService", "43": "admin.service.ts",
"44": "MediaController", "44": "MediaController",
"45": "Pagination.tsx", "45": "Pagination.tsx",
"46": "SmsService", "46": "SmsService",
@ -56,23 +56,23 @@
"54": "compilerOptions", "54": "compilerOptions",
"55": "Media.tsx", "55": "Media.tsx",
"56": "compilerOptions", "56": "compilerOptions",
"57": "admin.module.ts", "57": "PetsController",
"58": "PaginationDto", "58": "PaginationDto",
"59": "dependencies", "59": "dependencies",
"60": "compilerOptions", "60": "compilerOptions",
"61": "HomeClient.tsx", "61": "HomeClient.tsx",
"62": "BlogsController", "62": "BlogsController",
"63": "AuthController", "63": "auth.controller.ts",
"64": "BannersService", "64": "users.service.ts",
"65": "Required Review Group Closures", "65": "Required Review Group Closures",
"66": "Coupons.tsx", "66": "Coupons.tsx",
"67": "Operational Rules & Boundaries", "67": "Operational Rules & Boundaries",
"68": "Operational Rules & Boundaries", "68": "Operational Rules & Boundaries",
"69": "WikiController", "69": "WikiController",
"70": "ApiOperation", "70": "auth.module.ts",
"71": "pets/pets.controller.ts", "71": "PetsController",
"72": "seo.module.ts", "72": "seo.module.ts",
"73": "admin.service.ts", "73": "BlogsService",
"74": "🏢 AI Software Agency — Master Orchestration Protocol v3", "74": "🏢 AI Software Agency — Master Orchestration Protocol v3",
"75": "Operational Rules & Boundaries", "75": "Operational Rules & Boundaries",
"76": "Operational Rules & Boundaries", "76": "Operational Rules & Boundaries",
@ -89,7 +89,7 @@
"87": "20260526145407_init/migration.sql", "87": "20260526145407_init/migration.sql",
"88": "Phase 3.1 — Human Review Preparation and Master Backlog Critique", "88": "Phase 3.1 — Human Review Preparation and Master Backlog Critique",
"89": "dependencies", "89": "dependencies",
"90": "ProductPage.tsx", "90": "SafeImage.tsx",
"91": "compilerOptions", "91": "compilerOptions",
"92": "scripts", "92": "scripts",
"93": "Deep Audit Summary Report", "93": "Deep Audit Summary Report",
@ -101,16 +101,16 @@
"99": "Comprehensive Change Log", "99": "Comprehensive Change Log",
"100": "Operational Rules & Boundaries", "100": "Operational Rules & Boundaries",
"101": "CreateOrderDto", "101": "CreateOrderDto",
"102": ".update", "102": "SmsLogQueryDto",
"103": ".handleZibalCallback", "103": "ZibalCallbackQueryDto",
"104": "auth.service.ts", "104": "ValidateCouponDto",
"105": "1. Summary of Integrity Repairs Performed", "105": "1. Summary of Integrity Repairs Performed",
"106": "eslint-config-prettier", "106": "eslint-config-prettier",
"107": "Operational Rules & Boundaries", "107": "Operational Rules & Boundaries",
"108": "Operational Rules & Boundaries", "108": "Operational Rules & Boundaries",
"109": "Operational Rules & Boundaries", "109": "Operational Rules & Boundaries",
"110": "AppService", "110": "AppService",
"111": "auth.controller.ts", "111": "AdminModule",
"112": "@types/react-dom", "112": "@types/react-dom",
"113": "Vazirmatn Changelog", "113": "Vazirmatn Changelog",
"114": "Vazirmatn Font فونت وزیرمتن", "114": "Vazirmatn Font فونت وزیرمتن",
@ -118,7 +118,7 @@
"116": "compilerOptions", "116": "compilerOptions",
"117": "compilerOptions", "117": "compilerOptions",
"118": "backend/README.md", "118": "backend/README.md",
"119": "devDependencies", "119": "eslint-plugin-prettier",
"120": "Repository Map", "120": "Repository Map",
"121": "validate_integrity.js", "121": "validate_integrity.js",
"122": "admin-panel/package.json", "122": "admin-panel/package.json",
@ -128,7 +128,6 @@
"126": "Role & Core Objective", "126": "Role & Core Objective",
"127": "orchestrate.py", "127": "orchestrate.py",
"128": "backend/package.json", "128": "backend/package.json",
"129": "PetsService",
"130": "graphify reference: extra exports and benchmark", "130": "graphify reference: extra exports and benchmark",
"131": "Phase 2 Final Quality Gate Summary Report", "131": "Phase 2 Final Quality Gate Summary Report",
"132": "Task Modifications Log", "132": "Task Modifications Log",
@ -140,7 +139,6 @@
"138": "InitiatePaymentDto", "138": "InitiatePaymentDto",
"139": "System Discovery", "139": "System Discovery",
"140": "Product Requirement Document (PRD)", "140": "Product Requirement Document (PRD)",
"141": "WikiController",
"142": "globals", "142": "globals",
"143": "@nestjs/cli", "143": "@nestjs/cli",
"144": "Baseline Command Plan & Reconciled Command History", "144": "Baseline Command Plan & Reconciled Command History",
@ -173,7 +171,7 @@
"171": "🎨 Frontend & Admin Panel Technical Review (06_dev_frontend)", "171": "🎨 Frontend & Admin Panel Technical Review (06_dev_frontend)",
"172": "🚀 SEO & Content Strategy Review (12_seo_content)", "172": "🚀 SEO & Content Strategy Review (12_seo_content)",
"173": "@types/node", "173": "@types/node",
"174": "Body", "174": "typescript",
"175": "seed-ui-texts.ts", "175": "seed-ui-texts.ts",
"176": "seed-wiki.ts", "176": "seed-wiki.ts",
"177": "update-blog.dto.ts", "177": "update-blog.dto.ts",
@ -211,10 +209,9 @@
"209": "sync_honest_manifest.js", "209": "sync_honest_manifest.js",
"210": "sync_manifest.js", "210": "sync_manifest.js",
"211": "@types/multer", "211": "@types/multer",
"212": "ProductDto", "212": "@types/passport-jwt",
"213": "PetsController", "213": "tailwindcss",
"214": "RedisService", "214": "AppModule",
"215": "WikiService",
"216": "FormField.tsx", "216": "FormField.tsx",
"217": "Input.tsx", "217": "Input.tsx",
"218": "Textarea.tsx", "218": "Textarea.tsx",
@ -238,11 +235,9 @@
"236": "vitest", "236": "vitest",
"237": "axios", "237": "axios",
"238": "tailwindcss", "238": "tailwindcss",
"239": "RegisterDto",
"240": "ts-loader", "240": "ts-loader",
"241": "AdminService",
"242": "@types/bcrypt", "242": "@types/bcrypt",
"243": "MetricsController", "243": "@types/supertest",
"244": "blog.entity.ts", "244": "blog.entity.ts",
"245": "home.entity.ts", "245": "home.entity.ts",
"246": "wiki.entity.ts", "246": "wiki.entity.ts",
@ -287,29 +282,5 @@
"285": "Sahel Font Variable Sample", "285": "Sahel Font Variable Sample",
"286": "Shabnam Font Sample", "286": "Shabnam Font Sample",
"287": "Production Docker Compose", "287": "Production Docker Compose",
"288": "Staging Docker Compose", "288": "Staging Docker Compose"
"289": "CreateHealthLogDto",
"290": "CreateReminderDto",
"291": "NetworkBanner.tsx",
"292": "bcryptjs",
"293": "helmet",
"294": "js-yaml",
"295": "@nestjs/core",
"296": "@nestjs/jwt",
"297": "@nestjs/swagger",
"298": "@nestjs/throttler",
"299": "passport-jwt",
"300": "@prisma/client",
"301": "swagger-ui-express",
"302": "@eslint/eslintrc",
"303": "@eslint/js",
"304": "jest",
"305": "@nestjs/schematics",
"306": "@nestjs/testing",
"307": "source-map-support",
"308": "ts-jest",
"309": "tsconfig-paths",
"310": "@types/bcryptjs",
"311": "typescript-eslint",
"312": "globals"
} }

View File

@ -1,25 +1,25 @@
# Graph Report - canina (2026-08-18) # Graph Report - canina (2026-08-18)
## Corpus Check ## Corpus Check
- 511 files · ~734,432 words - 510 files · ~733,001 words
- Verdict: corpus is large enough that graph structure adds value. - Verdict: corpus is large enough that graph structure adds value.
## Summary ## Summary
- 3634 nodes · 6166 edges · 313 communities (196 shown, 117 thin omitted) - 3627 nodes · 6157 edges · 284 communities (186 shown, 98 thin omitted)
- Extraction: 96% EXTRACTED · 4% INFERRED · 0% AMBIGUOUS · INFERRED: 228 edges (avg confidence: 0.79) - Extraction: 96% EXTRACTED · 4% INFERRED · 0% AMBIGUOUS · INFERRED: 225 edges (avg confidence: 0.79)
- Token cost: 0 input · 0 output - Token cost: 0 input · 0 output
## Graph Freshness ## Graph Freshness
- Built from commit: `95d79518` - Built from commit: `f0f50c75`
- Run `git rev-parse HEAD` and compare to check if the graph is stale. - Run `git rev-parse HEAD` and compare to check if the graph is stale.
- Run `graphify update .` after code changes (no API cost). - Run `graphify update .` after code changes (no API cost).
## Community Hubs (Navigation) ## Community Hubs (Navigation)
- AdminController - AdminService
- productService.ts - ProductService
- CmsController - CmsController
- app.module.ts - app.module.ts
- CreateReviewDto - reviews.controller.ts
- tickets.controller.ts - tickets.controller.ts
- UserDashboard.tsx - UserDashboard.tsx
- MediaSelector.tsx - MediaSelector.tsx
@ -34,7 +34,7 @@
- lib/services/api.ts - lib/services/api.ts
- CreateVideoDto - CreateVideoDto
- src/services/api.ts - src/services/api.ts
- eslint - devDependencies
- BE-001 - BE-001
- Roles - Roles
- FE-001 - FE-001
@ -44,21 +44,21 @@
- TEST-001 - TEST-001
- DEVOPS-001 - DEVOPS-001
- DOC-001 - DOC-001
- WholesaleApplyDto - wholesale.controller.ts
- main.ts - main.ts
- JwtAuthGuard - admin.module.ts
- ZibalService - ZibalService
- راهنمای تست سیستم (Software Testing) - راهنمای تست سیستم (Software Testing)
- CategoriesController - CategoriesController
- B2BService - B2BService
- What You Must Do When Invoked - What You Must Do When Invoked
- userStore.ts - toPersian
- UsersService - UsersService
- What You Must Do When Invoked - What You Must Do When Invoked
- SslController - SslController
- PodcastPlayerModal.tsx - ProductPage.tsx
- IngredientsService - IngredientsService
- AuthService - admin.service.ts
- MediaController - MediaController
- Pagination.tsx - Pagination.tsx
- SmsService - SmsService
@ -72,23 +72,23 @@
- compilerOptions - compilerOptions
- Media.tsx - Media.tsx
- compilerOptions - compilerOptions
- admin.module.ts - PetsController
- PaginationDto - PaginationDto
- dependencies - dependencies
- compilerOptions - compilerOptions
- HomeClient.tsx - HomeClient.tsx
- BlogsController - BlogsController
- AuthController - auth.controller.ts
- BannersService - users.service.ts
- Required Review Group Closures - Required Review Group Closures
- Coupons.tsx - Coupons.tsx
- Operational Rules & Boundaries - Operational Rules & Boundaries
- Operational Rules & Boundaries - Operational Rules & Boundaries
- WikiController - WikiController
- ApiOperation - auth.module.ts
- pets/pets.controller.ts - PetsController
- seo.module.ts - seo.module.ts
- admin.service.ts - BlogsService
- 🏢 AI Software Agency — Master Orchestration Protocol v3 - 🏢 AI Software Agency — Master Orchestration Protocol v3
- Operational Rules & Boundaries - Operational Rules & Boundaries
- Operational Rules & Boundaries - Operational Rules & Boundaries
@ -105,7 +105,7 @@
- 20260526145407_init/migration.sql - 20260526145407_init/migration.sql
- Phase 3.1 — Human Review Preparation and Master Backlog Critique - Phase 3.1 — Human Review Preparation and Master Backlog Critique
- dependencies - dependencies
- ProductPage.tsx - SafeImage.tsx
- compilerOptions - compilerOptions
- scripts - scripts
- Deep Audit Summary Report - Deep Audit Summary Report
@ -117,16 +117,16 @@
- Comprehensive Change Log - Comprehensive Change Log
- Operational Rules & Boundaries - Operational Rules & Boundaries
- CreateOrderDto - CreateOrderDto
- .update - SmsLogQueryDto
- .handleZibalCallback - ZibalCallbackQueryDto
- auth.service.ts - ValidateCouponDto
- 1. Summary of Integrity Repairs Performed - 1. Summary of Integrity Repairs Performed
- eslint-config-prettier - eslint-config-prettier
- Operational Rules & Boundaries - Operational Rules & Boundaries
- Operational Rules & Boundaries - Operational Rules & Boundaries
- Operational Rules & Boundaries - Operational Rules & Boundaries
- AppService - AppService
- auth.controller.ts - AdminModule
- @types/react-dom - @types/react-dom
- Vazirmatn Changelog - Vazirmatn Changelog
- Vazirmatn Font فونت وزیرمتن - Vazirmatn Font فونت وزیرمتن
@ -134,7 +134,7 @@
- compilerOptions - compilerOptions
- compilerOptions - compilerOptions
- backend/README.md - backend/README.md
- devDependencies - eslint-plugin-prettier
- Repository Map - Repository Map
- validate_integrity.js - validate_integrity.js
- admin-panel/package.json - admin-panel/package.json
@ -144,7 +144,6 @@
- Role & Core Objective - Role & Core Objective
- orchestrate.py - orchestrate.py
- backend/package.json - backend/package.json
- PetsService
- graphify reference: extra exports and benchmark - graphify reference: extra exports and benchmark
- Phase 2 Final Quality Gate Summary Report - Phase 2 Final Quality Gate Summary Report
- Task Modifications Log - Task Modifications Log
@ -156,7 +155,6 @@
- InitiatePaymentDto - InitiatePaymentDto
- System Discovery - System Discovery
- Product Requirement Document (PRD) - Product Requirement Document (PRD)
- WikiController
- globals - globals
- @nestjs/cli - @nestjs/cli
- Baseline Command Plan & Reconciled Command History - Baseline Command Plan & Reconciled Command History
@ -189,7 +187,7 @@
- 🎨 Frontend & Admin Panel Technical Review (06_dev_frontend) - 🎨 Frontend & Admin Panel Technical Review (06_dev_frontend)
- 🚀 SEO & Content Strategy Review (12_seo_content) - 🚀 SEO & Content Strategy Review (12_seo_content)
- @types/node - @types/node
- Body - typescript
- seed-ui-texts.ts - seed-ui-texts.ts
- seed-wiki.ts - seed-wiki.ts
- update-blog.dto.ts - update-blog.dto.ts
@ -227,10 +225,9 @@
- sync_honest_manifest.js - sync_honest_manifest.js
- sync_manifest.js - sync_manifest.js
- @types/multer - @types/multer
- ProductDto - @types/passport-jwt
- PetsController - tailwindcss
- RedisService - AppModule
- WikiService
- FormField.tsx - FormField.tsx
- Input.tsx - Input.tsx
- Textarea.tsx - Textarea.tsx
@ -252,11 +249,9 @@
- @types/react - @types/react
- typescript - typescript
- vitest - vitest
- RegisterDto
- ts-loader - ts-loader
- AdminService
- @types/bcrypt - @types/bcrypt
- MetricsController - @types/supertest
- blog.entity.ts - blog.entity.ts
- home.entity.ts - home.entity.ts
- wiki.entity.ts - wiki.entity.ts
@ -289,30 +284,6 @@
- Shabnam Font Sample - Shabnam Font Sample
- Production Docker Compose - Production Docker Compose
- Staging Docker Compose - Staging Docker Compose
- CreateHealthLogDto
- CreateReminderDto
- NetworkBanner.tsx
- bcryptjs
- helmet
- js-yaml
- @nestjs/core
- @nestjs/jwt
- @nestjs/swagger
- @nestjs/throttler
- passport-jwt
- @prisma/client
- swagger-ui-express
- @eslint/eslintrc
- @eslint/js
- jest
- @nestjs/schematics
- @nestjs/testing
- source-map-support
- ts-jest
- tsconfig-paths
- @types/bcryptjs
- typescript-eslint
- globals
## God Nodes (most connected - your core abstractions) ## God Nodes (most connected - your core abstractions)
1. `PrismaService` - 81 edges 1. `PrismaService` - 81 edges
@ -339,43 +310,43 @@
backend/src/orders/orders.controller.ts → frontend/admin-panel/src/types/admin.ts backend/src/orders/orders.controller.ts → frontend/admin-panel/src/types/admin.ts
## Import Cycles ## Import Cycles
- 3-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/store/cartStore.ts -> frontend/application/lib/services/api.ts`
- 3-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/services/authService.ts -> frontend/application/lib/services/api.ts` - 3-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/services/authService.ts -> frontend/application/lib/services/api.ts`
- 3-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/store/cartStore.ts -> frontend/application/lib/services/api.ts`
- 4-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/store/cartStore.ts -> frontend/application/lib/services/orderService.ts -> frontend/application/lib/services/api.ts` - 4-file cycle: `frontend/application/lib/services/api.ts -> frontend/application/lib/store/userStore.ts -> frontend/application/lib/store/cartStore.ts -> frontend/application/lib/services/orderService.ts -> frontend/application/lib/services/api.ts`
## Hyperedges (group relationships) ## Hyperedges (group relationships)
- **Rastikerdar Font Ecosystem** — frontend_application_public_fonts_shabnam_font_v5_0_1_readme, frontend_application_public_fonts_vazirmatn_v33_003_readme, vazir_font [EXTRACTED 0.95] - **Rastikerdar Font Ecosystem** — frontend_application_public_fonts_shabnam_font_v5_0_1_readme, frontend_application_public_fonts_vazirmatn_v33_003_readme, vazir_font [EXTRACTED 0.95]
- **Canina Deployment Stack** — scripts_compose_prod, scripts_compose_stage [EXTRACTED 1.00] - **Canina Deployment Stack** — scripts_compose_prod, scripts_compose_stage [EXTRACTED 1.00]
## Communities (313 total, 117 thin omitted) ## Communities (284 total, 98 thin omitted)
### Community 0 - "AdminController" ### Community 0 - "AdminService"
Cohesion: 0.13 Cohesion: 0.05
Nodes (8): AdminController, ApiBearerAuth, ApiTags, Controller, Delete, Param, Put, UseGuards Nodes (38): AdminController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+30 more)
### Community 1 - "productService.ts" ### Community 1 - "ProductService"
Cohesion: 0.06 Cohesion: 0.06
Nodes (36): Blog(), getBlogs(), metadata, CatalogClient(), metadata, metadata, metadata, BlogPage() (+28 more) Nodes (33): Blog(), getBlogs(), metadata, CatalogClient(), metadata, metadata, BlogPage(), BlogPost (+25 more)
### Community 2 - "CmsController" ### Community 2 - "CmsController"
Cohesion: 0.09 Cohesion: 0.09
Nodes (24): CmsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+16 more) Nodes (24): CmsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+16 more)
### Community 3 - "app.module.ts" ### Community 3 - "app.module.ts"
Cohesion: 0.07 Cohesion: 0.08
Nodes (36): B2BModule, Module, BannersModule, Module, CmsModule, Module, SmsModule, Global (+28 more) Nodes (30): B2BModule, Module, BannersModule, Module, CmsModule, Module, SmsModule, Global (+22 more)
### Community 4 - "CreateReviewDto" ### Community 4 - "reviews.controller.ts"
Cohesion: 0.07 Cohesion: 0.07
Nodes (29): CreateReviewDto, ApiProperty, IsInt, IsNotEmpty, IsOptional, IsString, Min, ApiProperty (+21 more) Nodes (31): CreateReviewDto, ApiProperty, IsInt, IsNotEmpty, IsOptional, IsString, Min, ApiProperty (+23 more)
### Community 5 - "tickets.controller.ts" ### Community 5 - "tickets.controller.ts"
Cohesion: 0.09 Cohesion: 0.09
Nodes (29): AdminUpdateTicketDto, CreateTicketDto, ReplyTicketDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString (+21 more) Nodes (29): AdminUpdateTicketDto, CreateTicketDto, ReplyTicketDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString (+21 more)
### Community 6 - "UserDashboard.tsx" ### Community 6 - "UserDashboard.tsx"
Cohesion: 0.09 Cohesion: 0.11
Nodes (28): VerifyContent(), AddressModal(), AddressModalProps, BackButton(), BackButtonProps, DeleteConfirmModal(), DeleteConfirmModalProps, HeaderButton() (+20 more) Nodes (22): AddressModal(), AddressModalProps, BackButton(), BackButtonProps, CheckoutPage(), DeleteConfirmModal(), DeleteConfirmModalProps, HeaderButton() (+14 more)
### Community 7 - "MediaSelector.tsx" ### Community 7 - "MediaSelector.tsx"
Cohesion: 0.08 Cohesion: 0.08
@ -386,24 +357,24 @@ Cohesion: 0.17
Nodes (9): ReportsController, ApiBearerAuth, ApiOperation, ApiTags, Controller, Get, UseGuards, ReportsService (+1 more) Nodes (9): ReportsController, ApiBearerAuth, ApiOperation, ApiTags, Controller, Get, UseGuards, ReportsService (+1 more)
### Community 9 - "PetProfile.tsx" ### Community 9 - "PetProfile.tsx"
Cohesion: 0.14 Cohesion: 0.08
Nodes (12): FeaturedProducts(), OrderRowSkeleton(), PetProfileSkeleton(), ProductCardSkeleton(), Skeleton(), SkeletonProps, mockProducts, HealthLog (+4 more) Nodes (25): metadata, FeaturedProducts(), ProductCard(), OrderSuccess(), PrescriptionUploadModal(), PrescriptionUploadModalProps, SearchResultsPage(), OrderRowSkeleton() (+17 more)
### Community 10 - "DoctorsService" ### Community 10 - "DoctorsService"
Cohesion: 0.13 Cohesion: 0.12
Nodes (15): DoctorsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+7 more) Nodes (16): DoctorsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+8 more)
### Community 11 - "useSettingsStore" ### Community 11 - "useSettingsStore"
Cohesion: 0.14 Cohesion: 0.12
Nodes (14): metadata, BrandLogo(), BrandLogoProps, EnamadBadge(), Footer(), Hero(), StatCounter(), MaintenancePage() (+6 more) Nodes (18): ClientLayout(), metadata, BrandLogo(), BrandLogoProps, EnamadBadge(), Footer(), Header(), MENU_ICONS (+10 more)
### Community 12 - "adminRoutes.tsx" ### Community 12 - "adminRoutes.tsx"
Cohesion: 0.10 Cohesion: 0.10
Nodes (14): App(), ContactInfoItem, ContactSubmission, CategoryDist, DashboardData, Ticket, TicketMessage, WholesaleRequest (+6 more) Nodes (14): App(), ContactInfoItem, ContactSubmission, CategoryDist, DashboardData, Ticket, TicketMessage, WholesaleRequest (+6 more)
### Community 13 - "PrismaService" ### Community 13 - "PrismaService"
Cohesion: 0.09 Cohesion: 0.10
Nodes (14): MeliPayamakPattern, MeliPayamakResponse, SendPatternSmsOptions, SmsConfig, SmsLogQuery, CreateContactSubmissionDto, UpdateContactInfoItemDto, DoctorQuery (+6 more) Nodes (13): WikiQuery, MeliPayamakPattern, MeliPayamakResponse, SendPatternSmsOptions, SmsConfig, SmsLogQuery, CreateContactSubmissionDto, UpdateContactInfoItemDto (+5 more)
### Community 14 - "BlogsController" ### Community 14 - "BlogsController"
Cohesion: 0.13 Cohesion: 0.13
@ -415,23 +386,27 @@ Nodes (19): GetProductsDto, ApiPropertyOptional, IsEnum, IsOptional, IsString, P
### Community 16 - "lib/services/api.ts" ### Community 16 - "lib/services/api.ts"
Cohesion: 0.06 Cohesion: 0.06
Nodes (18): metadata, ContactFormClient(), ContactInfoItem, Testimonial, TestimonialsSection(), api, ApiErrorPayload, BASE_DOMAIN (+10 more) Nodes (18): metadata, ContactFormClient(), ContactInfoItem, OrderDetailsModal(), OrderDetailsModalProps, Testimonial, api, ApiErrorPayload (+10 more)
### Community 17 - "CreateVideoDto" ### Community 17 - "CreateVideoDto"
Cohesion: 0.09 Cohesion: 0.07
Nodes (24): CreateVideoDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, UpdateVideoDto (+16 more) Nodes (31): CreateVideoDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, UpdateVideoDto (+23 more)
### Community 18 - "src/services/api.ts" ### Community 18 - "src/services/api.ts"
Cohesion: 0.12 Cohesion: 0.10
Nodes (21): ProtectedRoute(), SEARCHABLE_PAGES, Topbar(), TopbarProps, Login(), B2BManager, SmartAdvisorManager, ApiErrorPayload (+13 more) Nodes (23): ProtectedRoute(), SEARCHABLE_PAGES, Topbar(), TopbarProps, Login(), B2BManager, SmartAdvisorManager, SystemSettingsPage (+15 more)
### Community 19 - "devDependencies"
Cohesion: 0.09
Nodes (23): devDependencies, eslint, @eslint/eslintrc, @eslint/js, jest, @nestjs/schematics, @nestjs/testing, source-map-support (+15 more)
### Community 20 - "BE-001" ### Community 20 - "BE-001"
Cohesion: 0.06 Cohesion: 0.06
Nodes (32): Acceptance Criteria, Affected Application, Affected Files, Alternative Direction, BE-001, Category, Completion Statement, Confidence (+24 more) Nodes (32): Acceptance Criteria, Affected Application, Affected Files, Alternative Direction, BE-001, Category, Completion Statement, Confidence (+24 more)
### Community 21 - "Roles" ### Community 21 - "Roles"
Cohesion: 0.08 Cohesion: 0.06
Nodes (25): Roles(), SmsLogQueryDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString, Type (+17 more) Nodes (33): BannersController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+25 more)
### Community 22 - "FE-001" ### Community 22 - "FE-001"
Cohesion: 0.06 Cohesion: 0.06
@ -461,17 +436,17 @@ Nodes (31): Acceptance Criteria, Affected Application, Affected Files, Alternati
Cohesion: 0.06 Cohesion: 0.06
Nodes (31): Acceptance Criteria, Affected Application, Affected Files, Alternative Direction, Category, Completion Statement, Confidence, Dependencies (+23 more) Nodes (31): Acceptance Criteria, Affected Application, Affected Files, Alternative Direction, Category, Completion Statement, Confidence, Dependencies (+23 more)
### Community 29 - "WholesaleApplyDto" ### Community 29 - "wholesale.controller.ts"
Cohesion: 0.10 Cohesion: 0.10
Nodes (20): ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, WholesaleApplyDto, ApiBearerAuth, ApiOperation (+12 more) Nodes (22): ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, WholesaleApplyDto, ApiBearerAuth, ApiOperation (+14 more)
### Community 30 - "main.ts" ### Community 30 - "main.ts"
Cohesion: 0.14 Cohesion: 0.14
Nodes (9): CustomHttpExceptionFilter, Catch, PrismaExceptionFilter, Catch, DecimalInterceptor, Injectable, ApiErrorResponse, ErrorDetailField (+1 more) Nodes (9): CustomHttpExceptionFilter, Catch, PrismaExceptionFilter, Catch, DecimalInterceptor, Injectable, ApiErrorResponse, ErrorDetailField (+1 more)
### Community 31 - "JwtAuthGuard" ### Community 31 - "admin.module.ts"
Cohesion: 0.14 Cohesion: 0.12
Nodes (8): JwtAuthGuard, Injectable, B2BWholesaleOrderItem, ROLES_KEY, RequestWithUser, RolesGuard, Injectable, UserReqPayload Nodes (12): BlogQuery, CategoryQuery, PetQuery, SslCertInfo, JwtAuthGuard, Injectable, ROLES_KEY, RequestWithUser (+4 more)
### Community 32 - "ZibalService" ### Community 32 - "ZibalService"
Cohesion: 0.14 Cohesion: 0.14
@ -482,24 +457,24 @@ Cohesion: 0.07
Nodes (25): اجرای بک‌اند, اجرای فرانت‌اند, اجرای پروژه در سرور با PM2, برای راه‌اندازی بک‌اند:, برای راه‌اندازی فرانت‌اند Next.js:, بیلد کردن پروژه (Building), ذخیره پروسه‌ها تا پس از ری‌استارت سرور قطع نشوند:, راه‌اندازی و انتشار سیستم (Setup & Deployment) (+17 more) Nodes (25): اجرای بک‌اند, اجرای فرانت‌اند, اجرای پروژه در سرور با PM2, برای راه‌اندازی بک‌اند:, برای راه‌اندازی فرانت‌اند Next.js:, بیلد کردن پروژه (Building), ذخیره پروسه‌ها تا پس از ری‌استارت سرور قطع نشوند:, راه‌اندازی و انتشار سیستم (Setup & Deployment) (+17 more)
### Community 34 - "CategoriesController" ### Community 34 - "CategoriesController"
Cohesion: 0.09 Cohesion: 0.10
Nodes (17): CategoriesController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+9 more) Nodes (16): CategoriesController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+8 more)
### Community 35 - "B2BService" ### Community 35 - "B2BService"
Cohesion: 0.14 Cohesion: 0.13
Nodes (14): B2BController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+6 more) Nodes (15): B2BController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Param (+7 more)
### Community 36 - "What You Must Do When Invoked" ### Community 36 - "What You Must Do When Invoked"
Cohesion: 0.07 Cohesion: 0.07
Nodes (26): For /graphify add and --watch, For /graphify query, For the commit hook and native CLAUDE.md integration, For --update and --cluster-only, /graphify, Honesty Rules, Interpreter guard for subcommands, Part A - Structural extraction for code files (+18 more) Nodes (26): For /graphify add and --watch, For /graphify query, For the commit hook and native CLAUDE.md integration, For --update and --cluster-only, /graphify, Honesty Rules, Interpreter guard for subcommands, Part A - Structural extraction for code files (+18 more)
### Community 37 - "userStore.ts" ### Community 37 - "toPersian"
Cohesion: 0.09 Cohesion: 0.13
Nodes (32): ClientLayout(), ArchiveProductCard(), AuthModal(), AuthModalProps, extractOtpFromText(), B2BPortal(), CartDrawer(), CheckoutPage() (+24 more) Nodes (23): VerifyContent(), ArchiveProductCard(), AuthModal(), AuthModalProps, extractOtpFromText(), B2BPortal(), CartDrawer(), LoginModal() (+15 more)
### Community 38 - "UsersService" ### Community 38 - "UsersService"
Cohesion: 0.06 Cohesion: 0.12
Nodes (42): DEFAULT_JWT_REFRESH_SECRET, DEFAULT_JWT_SECRET, getJwtSecret(), AuthModule, Module, JwtPayload, JwtStrategy, Injectable (+34 more) Nodes (18): ApiBadRequestResponse, ApiBearerAuth, ApiCreatedResponse, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+10 more)
### Community 39 - "What You Must Do When Invoked" ### Community 39 - "What You Must Do When Invoked"
Cohesion: 0.07 Cohesion: 0.07
@ -509,17 +484,17 @@ Nodes (26): For /graphify add and --watch, For /graphify query, For the commit h
Cohesion: 0.13 Cohesion: 0.13
Nodes (14): SslController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Post (+6 more) Nodes (14): SslController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Get, Post (+6 more)
### Community 41 - "PodcastPlayerModal.tsx" ### Community 41 - "ProductPage.tsx"
Cohesion: 0.40 Cohesion: 0.12
Nodes (3): PLAYBACK_RATES, PodcastPlayerModal(), PodcastPlayerModalProps Nodes (14): PLAYBACK_RATES, PodcastPlayerModal(), PodcastPlayerModalProps, CalculatorState, ICON_MAP, ProductPage(), useCalculatorStore, ProductReviews() (+6 more)
### Community 42 - "IngredientsService" ### Community 42 - "IngredientsService"
Cohesion: 0.13 Cohesion: 0.13
Nodes (14): IngredientsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more) Nodes (14): IngredientsController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+6 more)
### Community 43 - "AuthService" ### Community 43 - "admin.service.ts"
Cohesion: 0.18 Cohesion: 0.09
Nodes (3): AuthService, Injectable, normalizeMobile() Nodes (14): CouponTargetInput, PaginationQuery, AdminLoginInput, AuthService, LoginInput, RegisterInput, Injectable, normalizeMobile() (+6 more)
### Community 44 - "MediaController" ### Community 44 - "MediaController"
Cohesion: 0.11 Cohesion: 0.11
@ -530,7 +505,7 @@ Cohesion: 0.13
Nodes (11): Pagination(), PaginationProps, Pet, GatewayHealth, Stats, Transaction, ProductItem, WikiTerm (+3 more) Nodes (11): Pagination(), PaginationProps, Pet, GatewayHealth, Stats, Transaction, ProductItem, WikiTerm (+3 more)
### Community 47 - "OrdersController" ### Community 47 - "OrdersController"
Cohesion: 0.13 Cohesion: 0.14
Nodes (16): OrdersController, ApiBadRequestResponse, ApiBearerAuth, ApiCreatedResponse, ApiNotFoundResponse, ApiOkResponse, ApiOperation, ApiTags (+8 more) Nodes (16): OrdersController, ApiBadRequestResponse, ApiBearerAuth, ApiCreatedResponse, ApiNotFoundResponse, ApiOkResponse, ApiOperation, ApiTags (+8 more)
### Community 48 - "PrescriptionsService" ### Community 48 - "PrescriptionsService"
@ -554,8 +529,8 @@ Cohesion: 0.13
Nodes (11): ContactController, Body, Controller, Get, Param, Post, Put, Query (+3 more) Nodes (11): ContactController, Body, Controller, Get, Param, Post, Put, Query (+3 more)
### Community 53 - "PaymentController" ### Community 53 - "PaymentController"
Cohesion: 0.25 Cohesion: 0.20
Nodes (13): PaymentController, ApiBadRequestResponse, ApiBearerAuth, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+5 more) Nodes (17): PaymentController, ApiBadRequestResponse, ApiBearerAuth, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+9 more)
### Community 54 - "compilerOptions" ### Community 54 - "compilerOptions"
Cohesion: 0.06 Cohesion: 0.06
@ -569,45 +544,45 @@ Nodes (20): Badge(), BadgeProps, BadgeVariant, variantStyles, ImagePreviewModal(
Cohesion: 0.09 Cohesion: 0.09
Nodes (22): compilerOptions, allowImportingTsExtensions, erasableSyntaxOnly, jsx, lib, module, moduleDetection, moduleResolution (+14 more) Nodes (22): compilerOptions, allowImportingTsExtensions, erasableSyntaxOnly, jsx, lib, module, moduleDetection, moduleResolution (+14 more)
### Community 57 - "admin.module.ts" ### Community 57 - "PetsController"
Cohesion: 0.06 Cohesion: 0.11
Nodes (23): AdminModule, Module, BlogQuery, BlogsService, Injectable, PetsController, ApiBearerAuth, ApiOperation (+15 more) Nodes (13): PetsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Controller, Delete, Get (+5 more)
### Community 58 - "PaginationDto" ### Community 58 - "PaginationDto"
Cohesion: 0.07 Cohesion: 0.09
Nodes (24): PaginationDto, SortOrder, ApiPropertyOptional, IsEnum, IsInt, IsOptional, IsString, Min (+16 more) Nodes (22): PaginationDto, SortOrder, ApiPropertyOptional, IsEnum, IsInt, IsOptional, IsString, Min (+14 more)
### Community 59 - "dependencies" ### Community 59 - "dependencies"
Cohesion: 0.10 Cohesion: 0.05
Nodes (21): dependencies, bcrypt, class-transformer, class-validator, ioredis, @nestjs/common, @nestjs/passport, @nestjs/platform-express (+13 more) Nodes (41): dependencies, bcrypt, bcryptjs, class-transformer, class-validator, helmet, ioredis, js-yaml (+33 more)
### Community 60 - "compilerOptions" ### Community 60 - "compilerOptions"
Cohesion: 0.10 Cohesion: 0.10
Nodes (20): compilerOptions, allowImportingTsExtensions, erasableSyntaxOnly, lib, module, moduleDetection, moduleResolution, noEmit (+12 more) Nodes (20): compilerOptions, allowImportingTsExtensions, erasableSyntaxOnly, lib, module, moduleDetection, moduleResolution, noEmit (+12 more)
### Community 61 - "HomeClient.tsx" ### Community 61 - "HomeClient.tsx"
Cohesion: 0.12 Cohesion: 0.11
Nodes (20): HomeClient(), HomeClientProps, getHomeData(), Home(), metadata, metadata, ArchivePage(), CATEGORY_MAP (+12 more) Nodes (21): HomeClient(), HomeClientProps, getHomeData(), Home(), metadata, metadata, ArchivePage(), CATEGORY_MAP (+13 more)
### Community 62 - "BlogsController" ### Community 62 - "BlogsController"
Cohesion: 0.13 Cohesion: 0.13
Nodes (15): BlogsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+7 more) Nodes (15): BlogsController, ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete (+7 more)
### Community 63 - "AuthController" ### Community 63 - "auth.controller.ts"
Cohesion: 0.27 Cohesion: 0.06
Nodes (12): AuthController, ApiBadRequestResponse, ApiBearerAuth, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+4 more) Nodes (42): AuthController, ApiBadRequestResponse, ApiBearerAuth, ApiOkResponse, ApiOperation, ApiTags, Body, Controller (+34 more)
### Community 64 - "BannersService" ### Community 64 - "users.service.ts"
Cohesion: 0.13 Cohesion: 0.13
Nodes (15): BannersController, ApiBearerAuth, ApiOperation, ApiTags, Body, Controller, Delete, Get (+7 more) Nodes (14): AddressDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, ApiPropertyOptional (+6 more)
### Community 65 - "Required Review Group Closures" ### Community 65 - "Required Review Group Closures"
Cohesion: 0.10 Cohesion: 0.10
Nodes (19): 10. Orders Backend, 11. Settings & Administrative Backend, 12. Prisma Schema, Migrations & Seed, 13. Redis & Temporary Auth State, 14. Unit & E2E Tests, 15. Docker, NGINX, Prometheus & Deployment Config, 16. Documentation & OpenAPI Artifacts, 1. Storefront Shell & Routing (+11 more) Nodes (19): 10. Orders Backend, 11. Settings & Administrative Backend, 12. Prisma Schema, Migrations & Seed, 13. Redis & Temporary Auth State, 14. Unit & E2E Tests, 15. Docker, NGINX, Prometheus & Deployment Config, 16. Documentation & OpenAPI Artifacts, 1. Storefront Shell & Routing (+11 more)
### Community 66 - "Coupons.tsx" ### Community 66 - "Coupons.tsx"
Cohesion: 0.10 Cohesion: 0.12
Nodes (15): formatPriceWithCommas(), PriceInput(), PriceInputProps, toEnglishDigits(), Coupon, CouponFormData, CouponModalProps, CouponTarget (+7 more) Nodes (14): formatPriceWithCommas(), PriceInput(), PriceInputProps, toEnglishDigits(), Coupon, CouponFormData, CouponModalProps, CouponTarget (+6 more)
### Community 67 - "Operational Rules & Boundaries" ### Community 67 - "Operational Rules & Boundaries"
Cohesion: 0.11 Cohesion: 0.11
@ -618,25 +593,21 @@ Cohesion: 0.11
Nodes (18): 1. Framework-Aware Analysis, 2. DOM & Semantic Structure Analysis, 3. Accessibility Compliance, 4. Responsive Layout Verification, 5. Fallback Inspection Mode, 6. Defect Routing Protocol, 7. Forbidden Actions, Expected JSON Output Schema (+10 more) Nodes (18): 1. Framework-Aware Analysis, 2. DOM & Semantic Structure Analysis, 3. Accessibility Compliance, 4. Responsive Layout Verification, 5. Fallback Inspection Mode, 6. Defect Routing Protocol, 7. Forbidden Actions, Expected JSON Output Schema (+10 more)
### Community 69 - "WikiController" ### Community 69 - "WikiController"
Cohesion: 0.13 Cohesion: 0.09
Nodes (14): ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete, Get (+6 more) Nodes (16): ApiBearerAuth, ApiOperation, ApiQuery, ApiTags, Body, Controller, Delete, Get (+8 more)
### Community 70 - "ApiOperation" ### Community 70 - "auth.module.ts"
Cohesion: 0.15 Cohesion: 0.17
Nodes (8): ApiOperation, ApiQuery, Get, Query, AdminQueryDto, ApiPropertyOptional, IsOptional, IsString Nodes (10): DEFAULT_JWT_REFRESH_SECRET, DEFAULT_JWT_SECRET, getJwtSecret(), AuthModule, Module, JwtPayload, JwtStrategy, Injectable (+2 more)
### Community 71 - "pets/pets.controller.ts" ### Community 71 - "PetsController"
Cohesion: 0.16 Cohesion: 0.05
Nodes (13): CreatePetDto, ApiProperty, ApiPropertyOptional, IsArray, IsNotEmpty, IsNumber, IsOptional, IsString (+5 more) Nodes (47): CreateHealthLogDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString, CreatePetDto, ApiProperty (+39 more)
### Community 72 - "seo.module.ts" ### Community 72 - "seo.module.ts"
Cohesion: 0.16 Cohesion: 0.16
Nodes (10): SeoController, ApiOperation, ApiTags, Controller, Get, Param, SeoModule, Module (+2 more) Nodes (10): SeoController, ApiOperation, ApiTags, Controller, Get, Param, SeoModule, Module (+2 more)
### Community 73 - "admin.service.ts"
Cohesion: 0.16
Nodes (13): CouponTargetInput, PaginationQuery, CreateUserDto, ApiProperty, ApiPropertyOptional, IsEmail, IsNotEmpty, IsNumber (+5 more)
### Community 74 - "🏢 AI Software Agency — Master Orchestration Protocol v3" ### Community 74 - "🏢 AI Software Agency — Master Orchestration Protocol v3"
Cohesion: 0.11 Cohesion: 0.11
Nodes (17): Activation, Agent Directory Reference, 🏢 AI Software Agency — Master Orchestration Protocol v3, Phase 1: Specialist Review (All agents read, none write code yet), Phase 2: Master Synthesis (02_product_manager in SYNTHESIS mode), Phase 3: Execution (Same as always), PIPELINE A — New Project (GREENFIELD), PIPELINE B — Review & Improve Existing Project (REVIEW_AND_PLAN) ★ (+9 more) Nodes (17): Activation, Agent Directory Reference, 🏢 AI Software Agency — Master Orchestration Protocol v3, Phase 1: Specialist Review (All agents read, none write code yet), Phase 2: Master Synthesis (02_product_manager in SYNTHESIS mode), Phase 3: Execution (Same as always), PIPELINE A — New Project (GREENFIELD), PIPELINE B — Review & Improve Existing Project (REVIEW_AND_PLAN) ★ (+9 more)
@ -679,7 +650,7 @@ Nodes (13): Skeleton(), getPaymentMethodLabel(), Order, ORDER_STATUS_MAP, OrderI
### Community 84 - "devDependencies" ### Community 84 - "devDependencies"
Cohesion: 0.11 Cohesion: 0.11
Nodes (19): autoprefixer, devDependencies, autoprefixer, eslint, @eslint/js, postcss, tailwindcss, @types/node (+11 more) Nodes (19): autoprefixer, devDependencies, autoprefixer, eslint, @eslint/js, globals, postcss, @types/node (+11 more)
### Community 85 - "seed-products.ts" ### Community 85 - "seed-products.ts"
Cohesion: 0.17 Cohesion: 0.17
@ -701,9 +672,9 @@ Nodes (14): 10. Dependency & Wave Adjustments, 11. Acceptance Criteria Refinemen
Cohesion: 0.10 Cohesion: 0.10
Nodes (21): dependencies, axios, lucide-react, react, react-dom, react-hot-toast, react-router-dom, recharts (+13 more) Nodes (21): dependencies, axios, lucide-react, react, react-dom, react-hot-toast, react-router-dom, recharts (+13 more)
### Community 90 - "ProductPage.tsx" ### Community 90 - "SafeImage.tsx"
Cohesion: 0.07 Cohesion: 0.14
Nodes (25): ProductDetailModalProps, PLAYBACK_RATES, PodcastInlinePlayer(), PodcastInlinePlayerProps, CalculatorState, ICON_MAP, ProductPage(), useCalculatorStore (+17 more) Nodes (13): ProductDetailModalProps, SafeImage(), SafeImageProps, DisplayVideoItem, FALLBACK_VIDEOS, TestimonialItem, VetGallery(), PLAYBACK_RATES (+5 more)
### Community 91 - "compilerOptions" ### Community 91 - "compilerOptions"
Cohesion: 0.06 Cohesion: 0.06
@ -733,6 +704,10 @@ Nodes (8): exclude, extends, dist, node_modules, prisma, **/*spec.ts, test, ./ts
Cohesion: 0.15 Cohesion: 0.15
Nodes (13): jest, collectCoverageFrom, coverageDirectory, moduleFileExtensions, rootDir, testEnvironment, testRegex, transform (+5 more) Nodes (13): jest, collectCoverageFrom, coverageDirectory, moduleFileExtensions, rootDir, testEnvironment, testRegex, transform (+5 more)
### Community 98 - "OrdersService"
Cohesion: 0.20
Nodes (4): OrdersModule, Module, OrdersService, Injectable
### Community 99 - "Comprehensive Change Log" ### Community 99 - "Comprehensive Change Log"
Cohesion: 0.15 Cohesion: 0.15
Nodes (12): 10. `TASK-VERIFY-001`, 1. `TASK-SEC-001`, 2. `TASK-SEC-002`, 3. `TASK-SEC-003`, 4. `TASK-FIN-001`, 5. `TASK-BUILD-001`, 6. `TASK-AUTH-001`, 7. `TASK-FE-001` (+4 more) Nodes (12): 10. `TASK-VERIFY-001`, 1. `TASK-SEC-001`, 2. `TASK-SEC-002`, 3. `TASK-SEC-003`, 4. `TASK-FIN-001`, 5. `TASK-BUILD-001`, 6. `TASK-AUTH-001`, 7. `TASK-FE-001` (+4 more)
@ -745,17 +720,17 @@ Nodes (11): 1. Detect Test Runner from Tech Stack, 2. Execution Output Capture (
Cohesion: 0.22 Cohesion: 0.22
Nodes (11): CreateOrderDto, OrderItemDto, ApiProperty, ApiPropertyOptional, IsArray, IsNotEmpty, IsNumber, IsOptional (+3 more) Nodes (11): CreateOrderDto, OrderItemDto, ApiProperty, ApiPropertyOptional, IsArray, IsNotEmpty, IsNumber, IsOptional (+3 more)
### Community 102 - ".update" ### Community 102 - "SmsLogQueryDto"
Cohesion: 0.24 Cohesion: 0.25
Nodes (11): ApiNotFoundResponse, ApiOkResponse, ApiOperation, Body, Delete, Get, Param, Patch (+3 more) Nodes (7): SmsLogQueryDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString, Type
### Community 103 - ".handleZibalCallback" ### Community 103 - "ZibalCallbackQueryDto"
Cohesion: 0.24 Cohesion: 0.40
Nodes (8): ApiPropertyOptional, IsOptional, IsString, ZibalCallbackQueryDto, Query, Res, Headers, Ip Nodes (4): ApiPropertyOptional, IsOptional, IsString, ZibalCallbackQueryDto
### Community 104 - "auth.service.ts" ### Community 104 - "ValidateCouponDto"
Cohesion: 0.13 Cohesion: 0.50
Nodes (14): AdminLoginInput, LoginInput, RegisterInput, SendOtpDto, ApiProperty, IsNotEmpty, IsString, Matches (+6 more) Nodes (4): IsNotEmpty, IsNumber, IsString, ValidateCouponDto
### Community 105 - "1. Summary of Integrity Repairs Performed" ### Community 105 - "1. Summary of Integrity Repairs Performed"
Cohesion: 0.17 Cohesion: 0.17
@ -777,10 +752,6 @@ Nodes (10): 1. Pre-Deployment Checklist, 2. Build Verification, 3. Deployment St
Cohesion: 0.29 Cohesion: 0.29
Nodes (5): AppController, Controller, Get, AppService, Injectable Nodes (5): AppController, Controller, Get, AppService, Injectable
### Community 111 - "auth.controller.ts"
Cohesion: 0.16
Nodes (11): AdminLoginDto, ApiProperty, IsEmail, IsNotEmpty, IsString, MinLength, LoginDto, ApiProperty (+3 more)
### Community 113 - "Vazirmatn Changelog" ### Community 113 - "Vazirmatn Changelog"
Cohesion: 0.18 Cohesion: 0.18
Nodes (10): 32.0.0, 32.1, 32.101, 32.102, 33.000, 33.001, 33.002, 33.003 (+2 more) Nodes (10): 32.0.0, 32.1, 32.101, 32.102, 33.000, 33.001, 33.002, 33.003 (+2 more)
@ -805,10 +776,6 @@ Nodes (9): compilerOptions, esModuleInterop, module, moduleResolution, skipLibCh
Cohesion: 0.20 Cohesion: 0.20
Nodes (9): Compile and run the project, Deployment, Description, License, Project setup, Resources, Run tests, Stay in touch (+1 more) Nodes (9): Compile and run the project, Deployment, Description, License, Project setup, Resources, Run tests, Stay in touch (+1 more)
### Community 119 - "devDependencies"
Cohesion: 0.22
Nodes (9): devDependencies, eslint-plugin-prettier, @types/passport-jwt, @types/supertest, typescript, typescript, eslint-plugin-prettier, @types/passport-jwt (+1 more)
### Community 120 - "Repository Map" ### Community 120 - "Repository Map"
Cohesion: 0.20 Cohesion: 0.20
Nodes (9): 1. Active Customer Storefront: React 19 + Vite Application, 2. Active Backend Service: NestJS Application, 3. Excluded Placeholder / Non-Auditable Directories, Active Applications & Non-Auditable Scopes, Documentation Governance, Important Configuration & Infrastructure Files, Mandatory Global Audit Exclusions, Repository Map (+1 more) Nodes (9): 1. Active Customer Storefront: React 19 + Vite Application, 2. Active Backend Service: NestJS Application, 3. Excluded Placeholder / Non-Auditable Directories, Active Applications & Non-Auditable Scopes, Documentation Governance, Important Configuration & Infrastructure Files, Mandatory Global Audit Exclusions, Repository Map (+1 more)
@ -874,7 +841,7 @@ Cohesion: 0.25
Nodes (6): app_module_1, core_1, fs, path, swagger_1, yaml Nodes (6): app_module_1, core_1, fs, path, swagger_1, yaml
### Community 137 - "AdminTransactionFilterDto" ### Community 137 - "AdminTransactionFilterDto"
Cohesion: 0.25 Cohesion: 0.22
Nodes (7): AdminTransactionFilterDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString, Type Nodes (7): AdminTransactionFilterDto, ApiPropertyOptional, IsIn, IsNumber, IsOptional, IsString, Type
### Community 138 - "InitiatePaymentDto" ### Community 138 - "InitiatePaymentDto"
@ -889,17 +856,13 @@ Nodes (7): Active Core Applications, Current Architecture, Evidence-Based Status
Cohesion: 0.29 Cohesion: 0.29
Nodes (6): 1. Executive Vision, 2. Target Audience, 3. Functional Requirements, 4. Non-Functional Requirements (Performance, Security), 5. Epic / Feature Breakdown, Product Requirement Document (PRD) Nodes (6): 1. Executive Vision, 2. Target Audience, 3. Functional Requirements, 4. Non-Functional Requirements (Performance, Security), 5. Epic / Feature Breakdown, Product Requirement Document (PRD)
### Community 141 - "WikiController"
Cohesion: 0.21
Nodes (9): ApiNotFoundResponse, ApiOkResponse, ApiOperation, ApiTags, Controller, Get, Param, Query (+1 more)
### Community 144 - "Baseline Command Plan & Reconciled Command History" ### Community 144 - "Baseline Command Plan & Reconciled Command History"
Cohesion: 0.29 Cohesion: 0.29
Nodes (6): Attempted Command Execution Log, Backend `backend/package.json` Scripts, Baseline Command Plan & Reconciled Command History, Package Scripts Safety Analysis, Permitted Safe Checks for Phase 2, Root `package.json` Scripts Nodes (6): Attempted Command Execution Log, Backend `backend/package.json` Scripts, Baseline Command Plan & Reconciled Command History, Package Scripts Safety Analysis, Permitted Safe Checks for Phase 2, Root `package.json` Scripts
### Community 145 - "Spinner.tsx" ### Community 145 - "Spinner.tsx"
Cohesion: 0.10 Cohesion: 0.10
Nodes (16): Spinner(), ProductReview, Reviews(), toPersianDigits(), PatternItem, SmsConfigState, SmsLogItem, SmsLogStats (+8 more) Nodes (15): Spinner(), ProductReview, Reviews(), toPersianDigits(), PatternItem, SmsConfigState, SmsLogItem, SmsLogStats (+7 more)
### Community 147 - "with-vpn.sh" ### Community 147 - "with-vpn.sh"
Cohesion: 0.62 Cohesion: 0.62
@ -993,10 +956,6 @@ Nodes (3): Architectural Overview, Critical Review Findings & Required Enhanceme
Cohesion: 0.50 Cohesion: 0.50
Nodes (3): Overview & Content Foundation, SEO & Content Requirements, 🚀 SEO & Content Strategy Review (12_seo_content) Nodes (3): Overview & Content Foundation, SEO & Content Requirements, 🚀 SEO & Content Strategy Review (12_seo_content)
### Community 174 - "Body"
Cohesion: 0.24
Nodes (3): Body, Post, CouponInput
### Community 180 - "graphify reference: add a URL and watch a folder" ### Community 180 - "graphify reference: add a URL and watch a folder"
Cohesion: 0.50 Cohesion: 0.50
Nodes (3): For /graphify add, For --watch, graphify reference: add a URL and watch a folder Nodes (3): For /graphify add, For --watch, graphify reference: add a URL and watch a folder
@ -1037,61 +996,33 @@ Nodes (3): COMPOSE_DOCKER_CLI_BUILD, DOCKER_BUILDKIT, deploy.sh script
Cohesion: 0.67 Cohesion: 0.67
Nodes (3): ADR-AUTH-001: Admin Panel Authentication Architecture & Token Management, Master Task Backlog (Phase 3.3), Phase 3 Master Execution Plan Nodes (3): ADR-AUTH-001: Admin Panel Authentication Architecture & Token Management, Master Task Backlog (Phase 3.3), Phase 3 Master Execution Plan
### Community 212 - "ProductDto" ### Community 214 - "AppModule"
Cohesion: 0.22 Cohesion: 0.12
Nodes (7): ProductDto, ApiPropertyOptional, IsArray, IsBoolean, IsNumber, IsOptional, IsString Nodes (7): ApiExcludeController, AppModule, Module, MetricsController, Controller, Get, Res
### Community 213 - "PetsController"
Cohesion: 0.18
Nodes (9): PetsController, ApiBadRequestResponse, ApiBearerAuth, ApiCreatedResponse, ApiTags, Controller, UploadedFile, UseGuards (+1 more)
### Community 214 - "RedisService"
Cohesion: 0.14
Nodes (4): AppModule, Module, RedisService, Injectable
### Community 215 - "WikiService"
Cohesion: 0.22
Nodes (3): Injectable, WikiQuery, WikiService
### Community 223 - "Shabnam Font README" ### Community 223 - "Shabnam Font README"
Cohesion: 0.67 Cohesion: 0.67
Nodes (3): Shabnam Font README, Shabnam Font Sample, Vazir Font Nodes (3): Shabnam Font README, Shabnam Font Sample, Vazir Font
### Community 239 - "RegisterDto"
Cohesion: 0.22
Nodes (8): RegisterDto, ApiProperty, ApiPropertyOptional, IsEmail, IsNotEmpty, IsOptional, IsString, MinLength
### Community 243 - "MetricsController"
Cohesion: 0.29
Nodes (5): ApiExcludeController, MetricsController, Controller, Get, Res
### Community 289 - "CreateHealthLogDto"
Cohesion: 0.29
Nodes (6): CreateHealthLogDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString
### Community 290 - "CreateReminderDto"
Cohesion: 0.29
Nodes (6): CreateReminderDto, ApiProperty, ApiPropertyOptional, IsNotEmpty, IsOptional, IsString
## Knowledge Gaps ## Knowledge Gaps
- **1239 isolated node(s):** `$schema`, `collection`, `sourceRoot`, `deleteOutDir`, `name` (+1234 more) - **1237 isolated node(s):** `$schema`, `collection`, `sourceRoot`, `deleteOutDir`, `name` (+1232 more)
These have ≤1 connection - possible missing edges or undocumented components. These have ≤1 connection - possible missing edges or undocumented components.
- **117 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes. - **98 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
## Suggested Questions ## Suggested Questions
_Questions this graph is uniquely positioned to answer:_ _Questions this graph is uniquely positioned to answer:_
- **Why does `Roles()` connect `Roles` to `BannersService`, `CmsController`, `B2BService`, `CreateReviewDto`, `tickets.controller.ts`, `SslController`, `IngredientsService`, `ProductsService`, `PrescriptionsService`, `SmartAdvisorService`, `TestimonialsService`, `ContactService`, `PaymentController`, `WholesaleApplyDto`, `JwtAuthGuard`?** - **Why does `Roles()` connect `Roles` to `CmsController`, `B2BService`, `reviews.controller.ts`, `tickets.controller.ts`, `SslController`, `IngredientsService`, `ProductsService`, `PrescriptionsService`, `SmartAdvisorService`, `TestimonialsService`, `ContactService`, `PaymentController`, `wholesale.controller.ts`, `admin.module.ts`?**
_High betweenness centrality (0.048) - this node is a cross-community bridge._ _High betweenness centrality (0.048) - this node is a cross-community bridge._
- **Why does `ApiResponse` connect `src/services/api.ts` to `UsersService`, `WikiController`, `BlogsController`, `HomeController`, `OrdersController`, `ProductsService`, `PetsController`, `AuthController`?** - **Why does `ApiResponse` connect `src/services/api.ts` to `UsersService`, `PetsController`, `BlogsController`, `HomeController`, `OrdersController`, `ProductsService`, `PaginationDto`, `auth.controller.ts`?**
_High betweenness centrality (0.037) - this node is a cross-community bridge._ _High betweenness centrality (0.038) - this node is a cross-community bridge._
- **Why does `PrismaService` connect `PrismaService` to `PetsService`, `CmsController`, `app.module.ts`, `CreateReviewDto`, `tickets.controller.ts`, `ReportsController`, `DoctorsService`, `BlogsController`, `ProductsService`, `CreateVideoDto`, `Roles`, `WholesaleApplyDto`, `JwtAuthGuard`, `ZibalService`, `CategoriesController`, `B2BService`, `UsersService`, `IngredientsService`, `AuthService`, `MediaController`, `SmsService`, `PrescriptionsService`, `SmartAdvisorService`, `TestimonialsService`, `ContactService`, `admin.module.ts`, `PaginationDto`, `BannersService`, `pets/pets.controller.ts`, `seo.module.ts`, `admin.service.ts`, `HomeController`, `zibal.service.ts`, `RedisService`, `WikiService`, `OrdersService`, `auth.service.ts`, `AdminService`, `MetricsController`?** - **Why does `PrismaService` connect `PrismaService` to `CmsController`, `app.module.ts`, `reviews.controller.ts`, `tickets.controller.ts`, `ReportsController`, `DoctorsService`, `BlogsController`, `ProductsService`, `CreateVideoDto`, `Roles`, `wholesale.controller.ts`, `admin.module.ts`, `ZibalService`, `CategoriesController`, `B2BService`, `UsersService`, `IngredientsService`, `admin.service.ts`, `MediaController`, `SmsService`, `PrescriptionsService`, `SmartAdvisorService`, `TestimonialsService`, `ContactService`, `PetsController`, `PaginationDto`, `users.service.ts`, `WikiController`, `PetsController`, `seo.module.ts`, `BlogsService`, `HomeController`, `zibal.service.ts`, `AppModule`, `OrdersService`?**
_High betweenness centrality (0.024) - this node is a cross-community bridge._ _High betweenness centrality (0.024) - this node is a cross-community bridge._
- **What connects `$schema`, `collection`, `sourceRoot` to the rest of the system?** - **What connects `$schema`, `collection`, `sourceRoot` to the rest of the system?**
_1239 weakly-connected nodes found - possible documentation gaps or missing edges._ _1237 weakly-connected nodes found - possible documentation gaps or missing edges._
- **Should `AdminController` be split into smaller, more focused modules?** - **Should `AdminService` be split into smaller, more focused modules?**
_Cohesion score 0.13043478260869565 - nodes in this community are weakly interconnected._ _Cohesion score 0.050331731869137496 - nodes in this community are weakly interconnected._
- **Should `productService.ts` be split into smaller, more focused modules?** - **Should `ProductService` be split into smaller, more focused modules?**
_Cohesion score 0.05888376856118792 - nodes in this community are weakly interconnected._ _Cohesion score 0.06390977443609022 - nodes in this community are weakly interconnected._
- **Should `CmsController` be split into smaller, more focused modules?** - **Should `CmsController` be split into smaller, more focused modules?**
_Cohesion score 0.0899854862119013 - nodes in this community are weakly interconnected._ _Cohesion score 0.0899854862119013 - nodes in this community are weakly interconnected._

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
# Graph Report - canina (2026-08-18) # Graph Report - canina (2026-08-18)
## Corpus Check ## Corpus Check
- 511 files · ~734,434 words - 511 files · ~734,432 words
- Verdict: corpus is large enough that graph structure adds value. - Verdict: corpus is large enough that graph structure adds value.
## Summary ## Summary
@ -10,7 +10,7 @@
- Token cost: 0 input · 0 output - Token cost: 0 input · 0 output
## Graph Freshness ## Graph Freshness
- Built from commit: `36e382cf` - Built from commit: `95d79518`
- Run `git rev-parse HEAD` and compare to check if the graph is stale. - Run `git rev-parse HEAD` and compare to check if the graph is stale.
- Run `graphify update .` after code changes (no API cost). - Run `graphify update .` after code changes (no API cost).
@ -34,7 +34,7 @@
- lib/services/api.ts - lib/services/api.ts
- CreateVideoDto - CreateVideoDto
- src/services/api.ts - src/services/api.ts
- eslint-plugin-prettier - eslint
- BE-001 - BE-001
- Roles - Roles
- FE-001 - FE-001
@ -312,7 +312,7 @@
- tsconfig-paths - tsconfig-paths
- @types/bcryptjs - @types/bcryptjs
- typescript-eslint - typescript-eslint
- tailwindcss - globals
## God Nodes (most connected - your core abstractions) ## God Nodes (most connected - your core abstractions)
1. `PrismaService` - 81 edges 1. `PrismaService` - 81 edges
@ -422,8 +422,8 @@ Cohesion: 0.09
Nodes (24): CreateVideoDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, UpdateVideoDto (+16 more) Nodes (24): CreateVideoDto, ApiProperty, ApiPropertyOptional, IsBoolean, IsNotEmpty, IsOptional, IsString, UpdateVideoDto (+16 more)
### Community 18 - "src/services/api.ts" ### Community 18 - "src/services/api.ts"
Cohesion: 0.10 Cohesion: 0.12
Nodes (23): ProtectedRoute(), SEARCHABLE_PAGES, Topbar(), TopbarProps, Login(), B2BManager, SmartAdvisorManager, SystemSettingsPage (+15 more) Nodes (21): ProtectedRoute(), SEARCHABLE_PAGES, Topbar(), TopbarProps, Login(), B2BManager, SmartAdvisorManager, ApiErrorPayload (+13 more)
### Community 20 - "BE-001" ### Community 20 - "BE-001"
Cohesion: 0.06 Cohesion: 0.06
@ -606,8 +606,8 @@ Cohesion: 0.10
Nodes (19): 10. Orders Backend, 11. Settings & Administrative Backend, 12. Prisma Schema, Migrations & Seed, 13. Redis & Temporary Auth State, 14. Unit & E2E Tests, 15. Docker, NGINX, Prometheus & Deployment Config, 16. Documentation & OpenAPI Artifacts, 1. Storefront Shell & Routing (+11 more) Nodes (19): 10. Orders Backend, 11. Settings & Administrative Backend, 12. Prisma Schema, Migrations & Seed, 13. Redis & Temporary Auth State, 14. Unit & E2E Tests, 15. Docker, NGINX, Prometheus & Deployment Config, 16. Documentation & OpenAPI Artifacts, 1. Storefront Shell & Routing (+11 more)
### Community 66 - "Coupons.tsx" ### Community 66 - "Coupons.tsx"
Cohesion: 0.12 Cohesion: 0.10
Nodes (14): formatPriceWithCommas(), PriceInput(), PriceInputProps, toEnglishDigits(), Coupon, CouponFormData, CouponModalProps, CouponTarget (+6 more) Nodes (15): formatPriceWithCommas(), PriceInput(), PriceInputProps, toEnglishDigits(), Coupon, CouponFormData, CouponModalProps, CouponTarget (+7 more)
### Community 67 - "Operational Rules & Boundaries" ### Community 67 - "Operational Rules & Boundaries"
Cohesion: 0.11 Cohesion: 0.11
@ -679,7 +679,7 @@ Nodes (13): Skeleton(), getPaymentMethodLabel(), Order, ORDER_STATUS_MAP, OrderI
### Community 84 - "devDependencies" ### Community 84 - "devDependencies"
Cohesion: 0.11 Cohesion: 0.11
Nodes (19): autoprefixer, devDependencies, autoprefixer, eslint, @eslint/js, globals, postcss, @types/node (+11 more) Nodes (19): autoprefixer, devDependencies, autoprefixer, eslint, @eslint/js, postcss, tailwindcss, @types/node (+11 more)
### Community 85 - "seed-products.ts" ### Community 85 - "seed-products.ts"
Cohesion: 0.17 Cohesion: 0.17
@ -807,7 +807,7 @@ Nodes (9): Compile and run the project, Deployment, Description, License, Projec
### Community 119 - "devDependencies" ### Community 119 - "devDependencies"
Cohesion: 0.22 Cohesion: 0.22
Nodes (9): devDependencies, eslint, @types/passport-jwt, @types/supertest, typescript, eslint, typescript, @types/passport-jwt (+1 more) Nodes (9): devDependencies, eslint-plugin-prettier, @types/passport-jwt, @types/supertest, typescript, typescript, eslint-plugin-prettier, @types/passport-jwt (+1 more)
### Community 120 - "Repository Map" ### Community 120 - "Repository Map"
Cohesion: 0.20 Cohesion: 0.20
@ -899,7 +899,7 @@ Nodes (6): Attempted Command Execution Log, Backend `backend/package.json` Scrip
### Community 145 - "Spinner.tsx" ### Community 145 - "Spinner.tsx"
Cohesion: 0.10 Cohesion: 0.10
Nodes (15): Spinner(), ProductReview, Reviews(), toPersianDigits(), PatternItem, SmsConfigState, SmsLogItem, SmsLogStats (+7 more) Nodes (16): Spinner(), ProductReview, Reviews(), toPersianDigits(), PatternItem, SmsConfigState, SmsLogItem, SmsLogStats (+8 more)
### Community 147 - "with-vpn.sh" ### Community 147 - "with-vpn.sh"
Cohesion: 0.62 Cohesion: 0.62

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1019,6 +1019,19 @@
"community_name": "Spinner.tsx", "community_name": "Spinner.tsx",
"norm_label": "seosettings" "norm_label": "seosettings"
}, },
{
"label": "SystemSettings",
"file_type": "code",
"source_file": "frontend/admin-panel/src/types/admin.ts",
"source_location": "L179",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
"id": "frontend_admin_panel_src_types_admin_systemsettings",
"community": 145,
"community_name": "Spinner.tsx",
"norm_label": "systemsettings"
},
{ {
"label": "GetProductsDto", "label": "GetProductsDto",
"file_type": "code", "file_type": "code",
@ -1539,19 +1552,6 @@
"community_name": "src/services/api.ts", "community_name": "src/services/api.ts",
"norm_label": "smartadvisorrule" "norm_label": "smartadvisorrule"
}, },
{
"label": "SystemSettings",
"file_type": "code",
"source_file": "frontend/admin-panel/src/types/admin.ts",
"source_location": "L179",
"_callable": true,
"_callable_class": true,
"_origin": "ast",
"id": "frontend_admin_panel_src_types_admin_systemsettings",
"community": 18,
"community_name": "src/services/api.ts",
"norm_label": "systemsettings"
},
{ {
"label": "VerifyOtpPayload", "label": "VerifyOtpPayload",
"file_type": "code", "file_type": "code",
@ -6264,18 +6264,6 @@
"community_name": "Spinner.tsx", "community_name": "Spinner.tsx",
"norm_label": "seosettingspage()" "norm_label": "seosettingspage()"
}, },
{
"label": "Settings()",
"file_type": "code",
"source_file": "frontend/admin-panel/src/pages/Settings.tsx",
"source_location": "L9",
"_callable": true,
"_origin": "ast",
"id": "frontend_admin_panel_src_pages_settings_settings",
"community": 145,
"community_name": "Spinner.tsx",
"norm_label": "settings()"
},
{ {
"label": "SmsSettingsPage()", "label": "SmsSettingsPage()",
"file_type": "code", "file_type": "code",
@ -6300,6 +6288,18 @@
"community_name": "Spinner.tsx", "community_name": "Spinner.tsx",
"norm_label": "sslsettingspage()" "norm_label": "sslsettingspage()"
}, },
{
"label": "SystemSettingsPage()",
"file_type": "code",
"source_file": "frontend/admin-panel/src/pages/SystemSettingsPage.tsx",
"source_location": "L8",
"_callable": true,
"_origin": "ast",
"id": "frontend_admin_panel_src_pages_systemsettingspage_systemsettingspage",
"community": 145,
"community_name": "Spinner.tsx",
"norm_label": "systemsettingspage()"
},
{ {
"label": "ErrorBoundary()", "label": "ErrorBoundary()",
"file_type": "code", "file_type": "code",
@ -7176,18 +7176,6 @@
"community_name": "src/services/api.ts", "community_name": "src/services/api.ts",
"norm_label": "smartadvisormanager()" "norm_label": "smartadvisormanager()"
}, },
{
"label": "SystemSettingsPage()",
"file_type": "code",
"source_file": "frontend/admin-panel/src/pages/SystemSettingsPage.tsx",
"source_location": "L8",
"_callable": true,
"_origin": "ast",
"id": "frontend_admin_panel_src_pages_systemsettingspage_systemsettingspage",
"community": 18,
"community_name": "src/services/api.ts",
"norm_label": "systemsettingspage()"
},
{ {
"label": "processQueue()", "label": "processQueue()",
"file_type": "code", "file_type": "code",
@ -12760,7 +12748,7 @@
"label": "Products()", "label": "Products()",
"file_type": "code", "file_type": "code",
"source_file": "frontend/admin-panel/src/pages/Products.tsx", "source_file": "frontend/admin-panel/src/pages/Products.tsx",
"source_location": "L62", "source_location": "L61",
"_callable": true, "_callable": true,
"_origin": "ast", "_origin": "ast",
"id": "frontend_admin_panel_src_pages_products_products", "id": "frontend_admin_panel_src_pages_products_products",
@ -12768,6 +12756,18 @@
"community_name": "Coupons.tsx", "community_name": "Coupons.tsx",
"norm_label": "products()" "norm_label": "products()"
}, },
{
"label": "Settings()",
"file_type": "code",
"source_file": "frontend/admin-panel/src/pages/Settings.tsx",
"source_location": "L9",
"_callable": true,
"_origin": "ast",
"id": "frontend_admin_panel_src_pages_settings_settings",
"community": 66,
"community_name": "Coupons.tsx",
"norm_label": "settings()"
},
{ {
"label": ".constructor()", "label": ".constructor()",
"file_type": "code", "file_type": "code",
@ -16608,15 +16608,15 @@
"norm_label": "devdependencies" "norm_label": "devdependencies"
}, },
{ {
"label": "eslint", "label": "eslint-plugin-prettier",
"file_type": "code", "file_type": "code",
"source_file": "backend/package.json", "source_file": "backend/package.json",
"source_location": "L60", "source_location": "L62",
"_origin": "ast", "_origin": "ast",
"id": "backend_package_devdependencies_eslint", "id": "backend_package_devdependencies_eslint_plugin_prettier",
"community": 119, "community": 119,
"community_name": "devDependencies", "community_name": "devDependencies",
"norm_label": "eslint" "norm_label": "eslint-plugin-prettier"
}, },
{ {
"label": "@types/passport-jwt", "label": "@types/passport-jwt",
@ -16651,17 +16651,6 @@
"community_name": "devDependencies", "community_name": "devDependencies",
"norm_label": "typescript" "norm_label": "typescript"
}, },
{
"label": "eslint",
"file_type": "concept",
"source_file": "backend/package.json",
"source_location": "L60",
"_origin": "ast",
"id": "backend_package_json_eslint",
"community": 119,
"community_name": "devDependencies",
"norm_label": "eslint"
},
{ {
"label": "typescript", "label": "typescript",
"file_type": "concept", "file_type": "concept",
@ -16673,6 +16662,17 @@
"community_name": "devDependencies", "community_name": "devDependencies",
"norm_label": "typescript" "norm_label": "typescript"
}, },
{
"label": "eslint-plugin-prettier",
"file_type": "concept",
"source_file": "backend/package.json",
"source_location": "L62",
"_origin": "ast",
"id": "eslint_plugin_prettier",
"community": 119,
"community_name": "devDependencies",
"norm_label": "eslint-plugin-prettier"
},
{ {
"label": "@types/passport-jwt", "label": "@types/passport-jwt",
"file_type": "concept", "file_type": "concept",
@ -19170,17 +19170,6 @@
"community_name": "Spinner.tsx", "community_name": "Spinner.tsx",
"norm_label": "seosettingspage.tsx" "norm_label": "seosettingspage.tsx"
}, },
{
"label": "Settings.tsx",
"file_type": "code",
"source_file": "frontend/admin-panel/src/pages/Settings.tsx",
"source_location": "L1",
"_origin": "ast",
"id": "frontend_admin_panel_src_pages_settings",
"community": 145,
"community_name": "Spinner.tsx",
"norm_label": "settings.tsx"
},
{ {
"label": "SmsSettingsPage.tsx", "label": "SmsSettingsPage.tsx",
"file_type": "code", "file_type": "code",
@ -19203,6 +19192,17 @@
"community_name": "Spinner.tsx", "community_name": "Spinner.tsx",
"norm_label": "sslsettingspage.tsx" "norm_label": "sslsettingspage.tsx"
}, },
{
"label": "SystemSettingsPage.tsx",
"file_type": "code",
"source_file": "frontend/admin-panel/src/pages/SystemSettingsPage.tsx",
"source_location": "L1",
"_origin": "ast",
"id": "frontend_admin_panel_src_pages_systemsettingspage",
"community": 145,
"community_name": "Spinner.tsx",
"norm_label": "systemsettingspage.tsx"
},
{ {
"label": "Reviews", "label": "Reviews",
"file_type": "code", "file_type": "code",
@ -19225,17 +19225,6 @@
"community_name": "Spinner.tsx", "community_name": "Spinner.tsx",
"norm_label": "seosettingspage" "norm_label": "seosettingspage"
}, },
{
"label": "Settings",
"file_type": "code",
"source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx",
"source_location": "L15",
"_origin": "ast",
"id": "frontend_admin_panel_src_routes_adminroutes_settings",
"community": 145,
"community_name": "Spinner.tsx",
"norm_label": "settings"
},
{ {
"label": "SmsSettingsPage", "label": "SmsSettingsPage",
"file_type": "code", "file_type": "code",
@ -19258,6 +19247,17 @@
"community_name": "Spinner.tsx", "community_name": "Spinner.tsx",
"norm_label": "sslsettingspage" "norm_label": "sslsettingspage"
}, },
{
"label": "SystemSettingsPage",
"file_type": "code",
"source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx",
"source_location": "L35",
"_origin": "ast",
"id": "frontend_admin_panel_src_routes_adminroutes_systemsettingspage",
"community": 145,
"community_name": "Spinner.tsx",
"norm_label": "systemsettingspage"
},
{ {
"label": "error.tsx", "label": "error.tsx",
"file_type": "code", "file_type": "code",
@ -21376,17 +21376,6 @@
"community_name": "src/services/api.ts", "community_name": "src/services/api.ts",
"norm_label": "smartadvisormanager.tsx" "norm_label": "smartadvisormanager.tsx"
}, },
{
"label": "SystemSettingsPage.tsx",
"file_type": "code",
"source_file": "frontend/admin-panel/src/pages/SystemSettingsPage.tsx",
"source_location": "L1",
"_origin": "ast",
"id": "frontend_admin_panel_src_pages_systemsettingspage",
"community": 18,
"community_name": "src/services/api.ts",
"norm_label": "systemsettingspage.tsx"
},
{ {
"label": "B2BManager", "label": "B2BManager",
"file_type": "code", "file_type": "code",
@ -21409,17 +21398,6 @@
"community_name": "src/services/api.ts", "community_name": "src/services/api.ts",
"norm_label": "smartadvisormanager" "norm_label": "smartadvisormanager"
}, },
{
"label": "SystemSettingsPage",
"file_type": "code",
"source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx",
"source_location": "L35",
"_origin": "ast",
"id": "frontend_admin_panel_src_routes_adminroutes_systemsettingspage",
"community": 18,
"community_name": "src/services/api.ts",
"norm_label": "systemsettingspage"
},
{ {
"label": "src/services/api.ts", "label": "src/services/api.ts",
"file_type": "code", "file_type": "code",
@ -21817,26 +21795,26 @@
"norm_label": "@types/express" "norm_label": "@types/express"
}, },
{ {
"label": "eslint-plugin-prettier", "label": "eslint",
"file_type": "code", "file_type": "code",
"source_file": "backend/package.json", "source_file": "backend/package.json",
"source_location": "L62", "source_location": "L60",
"_origin": "ast", "_origin": "ast",
"id": "backend_package_devdependencies_eslint_plugin_prettier", "id": "backend_package_devdependencies_eslint",
"community": 19, "community": 19,
"community_name": "eslint-plugin-prettier", "community_name": "eslint",
"norm_label": "eslint-plugin-prettier" "norm_label": "eslint"
}, },
{ {
"label": "eslint-plugin-prettier", "label": "eslint",
"file_type": "concept", "file_type": "concept",
"source_file": "backend/package.json", "source_file": "backend/package.json",
"source_location": "L62", "source_location": "L60",
"_origin": "ast", "_origin": "ast",
"id": "eslint_plugin_prettier", "id": "backend_package_json_eslint",
"community": 19, "community": 19,
"community_name": "eslint-plugin-prettier", "community_name": "eslint",
"norm_label": "eslint-plugin-prettier" "norm_label": "eslint"
}, },
{ {
"label": "deploy.sh", "label": "deploy.sh",
@ -28735,26 +28713,26 @@
"norm_label": "typescript-eslint" "norm_label": "typescript-eslint"
}, },
{ {
"label": "tailwindcss", "label": "globals",
"file_type": "code", "file_type": "code",
"source_file": "frontend/admin-panel/package.json", "source_file": "frontend/admin-panel/package.json",
"source_location": "L37", "source_location": "L35",
"_origin": "ast", "_origin": "ast",
"id": "frontend_admin_panel_package_devdependencies_tailwindcss", "id": "frontend_admin_panel_package_devdependencies_globals",
"community": 312, "community": 312,
"community_name": "tailwindcss", "community_name": "globals",
"norm_label": "tailwindcss" "norm_label": "globals"
}, },
{ {
"label": "tailwindcss", "label": "globals",
"file_type": "concept", "file_type": "concept",
"source_file": "frontend/admin-panel/package.json", "source_file": "frontend/admin-panel/package.json",
"source_location": "L37", "source_location": "L35",
"_origin": "ast", "_origin": "ast",
"id": "frontend_admin_panel_package_json_tailwindcss", "id": "frontend_admin_panel_package_json_globals",
"community": 312, "community": 312,
"community_name": "tailwindcss", "community_name": "globals",
"norm_label": "tailwindcss" "norm_label": "globals"
}, },
{ {
"label": "Injectable", "label": "Injectable",
@ -35664,6 +35642,17 @@
"community_name": "Coupons.tsx", "community_name": "Coupons.tsx",
"norm_label": "products.tsx" "norm_label": "products.tsx"
}, },
{
"label": "Settings.tsx",
"file_type": "code",
"source_file": "frontend/admin-panel/src/pages/Settings.tsx",
"source_location": "L1",
"_origin": "ast",
"id": "frontend_admin_panel_src_pages_settings",
"community": 66,
"community_name": "Coupons.tsx",
"norm_label": "settings.tsx"
},
{ {
"label": "Coupons", "label": "Coupons",
"file_type": "code", "file_type": "code",
@ -35697,6 +35686,17 @@
"community_name": "Coupons.tsx", "community_name": "Coupons.tsx",
"norm_label": "products" "norm_label": "products"
}, },
{
"label": "Settings",
"file_type": "code",
"source_file": "frontend/admin-panel/src/routes/adminRoutes.tsx",
"source_location": "L15",
"_origin": "ast",
"id": "frontend_admin_panel_src_routes_adminroutes_settings",
"community": 66,
"community_name": "Coupons.tsx",
"norm_label": "settings"
},
{ {
"label": "06_dev_frontend.md", "label": "06_dev_frontend.md",
"file_type": "document", "file_type": "document",
@ -38458,17 +38458,6 @@
"community_name": "devDependencies", "community_name": "devDependencies",
"norm_label": "@eslint/js" "norm_label": "@eslint/js"
}, },
{
"label": "globals",
"file_type": "code",
"source_file": "frontend/admin-panel/package.json",
"source_location": "L35",
"_origin": "ast",
"id": "frontend_admin_panel_package_devdependencies_globals",
"community": 84,
"community_name": "devDependencies",
"norm_label": "globals"
},
{ {
"label": "postcss", "label": "postcss",
"file_type": "code", "file_type": "code",
@ -38480,6 +38469,17 @@
"community_name": "devDependencies", "community_name": "devDependencies",
"norm_label": "postcss" "norm_label": "postcss"
}, },
{
"label": "tailwindcss",
"file_type": "code",
"source_file": "frontend/admin-panel/package.json",
"source_location": "L37",
"_origin": "ast",
"id": "frontend_admin_panel_package_devdependencies_tailwindcss",
"community": 84,
"community_name": "devDependencies",
"norm_label": "tailwindcss"
},
{ {
"label": "@types/node", "label": "@types/node",
"file_type": "code", "file_type": "code",
@ -38558,15 +38558,15 @@
"norm_label": "@eslint/js" "norm_label": "@eslint/js"
}, },
{ {
"label": "globals", "label": "tailwindcss",
"file_type": "concept", "file_type": "concept",
"source_file": "frontend/admin-panel/package.json", "source_file": "frontend/admin-panel/package.json",
"source_location": "L35", "source_location": "L37",
"_origin": "ast", "_origin": "ast",
"id": "frontend_admin_panel_package_json_globals", "id": "frontend_admin_panel_package_json_tailwindcss",
"community": 84, "community": 84,
"community_name": "devDependencies", "community_name": "devDependencies",
"norm_label": "globals" "norm_label": "tailwindcss"
}, },
{ {
"label": "@types/node", "label": "@types/node",
@ -98359,7 +98359,7 @@
"relation": "contains", "relation": "contains",
"confidence": "EXTRACTED", "confidence": "EXTRACTED",
"source_file": "frontend/admin-panel/src/pages/Products.tsx", "source_file": "frontend/admin-panel/src/pages/Products.tsx",
"source_location": "L62", "source_location": "L61",
"weight": 1.0, "weight": 1.0,
"_origin": "ast", "_origin": "ast",
"source": "frontend_admin_panel_src_pages_products", "source": "frontend_admin_panel_src_pages_products",
@ -113076,5 +113076,5 @@
"source_file": "scripts/compose.prod.yml" "source_file": "scripts/compose.prod.yml"
} }
], ],
"built_at_commit": "36e382cf1620b17a37a409db9b9ef01d06188fba" "built_at_commit": "95d79518e7d1479b88b7e39ebc79b0c0443200fc"
} }

File diff suppressed because it is too large Load Diff