canina/docs/audit/35-semantic-review-ledger.json
2026-08-06 20:54:44 +03:30

2523 lines
97 KiB
JSON

[
{
"path": ".dockerignore",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "DevOps",
"contentEvidenceSha256": "05e792a87ca350e1cc48174dda1ea1126ee13a5f8fe9d549d2b033382071e7a9",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of .dockerignore; byteCount=68, lineCount=8.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "DevOps Auditor"
},
{
"path": ".env.example",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "997fd4cabe96dd692f1dde691a3ea157e86d97c577dfa7198690a91169278bad",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [],
"fileSpecificObservation": "Reviewed JWT_SECRET, DATABASE_URL, REDIS_HOST, REDIS_PORT, and application port variable names in .env.example; the template contains no secret values but does not enforce runtime JWT secret validation.",
"supportedFindingIds": [
"SEC-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Storefront Auditor"
},
{
"path": ".gitignore",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "eb13e93639d4c770f0a28ba670e9f4a922bc20ff1e734bdbe916740b0ae13d74",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of .gitignore; byteCount=81, lineCount=9.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "BACKEND_INTEGRATION.md",
"classification": "FIRST_PARTY_DOCUMENTATION",
"auditDomain": "Documentation",
"contentEvidenceSha256": "158eb879fee9577edfe4b5c995515b3cdd355afbe8c2da032ef94806342acda7",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of BACKEND_INTEGRATION.md; byteCount=15976, lineCount=407.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Documentation Auditor"
},
{
"path": "DATABASE_SCHEMA.md",
"classification": "FIRST_PARTY_DOCUMENTATION",
"auditDomain": "Documentation",
"contentEvidenceSha256": "3ed816173486b37243d1ed66b0d8aeaa4ecb1dd286fbc76d3afeace639eb5292",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of DATABASE_SCHEMA.md; byteCount=15731, lineCount=319.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Documentation Auditor"
},
{
"path": "Dockerfile",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "Storefront",
"contentEvidenceSha256": "b8a66b84a1ddbdfe82ee72e99cd157b8e017daf43b57f28c2942f2d2603896ff",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of Dockerfile; byteCount=334, lineCount=15.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "README.md",
"classification": "FIRST_PARTY_DOCUMENTATION",
"auditDomain": "Documentation",
"contentEvidenceSha256": "0da2647eea50431bef6d86fc1dd848d152b7be83efd118bd974f3b96e854479f",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of README.md; byteCount=13231, lineCount=134.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Documentation Auditor"
},
{
"path": "backend/.dockerignore",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "DevOps",
"contentEvidenceSha256": "af2b4e4ac92bbf09917306ecd5889749f9767550f60caa067a722a2f3832506c",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of backend/.dockerignore; byteCount=59, lineCount=7.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "DevOps Auditor"
},
{
"path": "backend/.prettierrc",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "30d23aaa5811720602dec802795cbc172c65bc56eb8c683fc5b12c10dcb05563",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of backend/.prettierrc; byteCount=56, lineCount=5.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/Dockerfile",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "Backend",
"contentEvidenceSha256": "1dde4bb4a1064657518fb9d48bd7fbb4d97dd635e70198285b750b93648eaf01",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of backend/Dockerfile; byteCount=903, lineCount=41.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/README.md",
"classification": "FIRST_PARTY_DOCUMENTATION",
"auditDomain": "Documentation",
"contentEvidenceSha256": "5e87b28bd419d1c83f2f44de2e150d0260da361547fc53d60016d0b64153101d",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of backend/README.md; byteCount=5126, lineCount=99.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Documentation Auditor"
},
{
"path": "backend/eslint.config.mjs",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "Code Quality",
"contentEvidenceSha256": "e94fea27c5d744a435cba627eb7097993c14a66a21f478c3729781bcdf4c8fba",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of backend/eslint.config.mjs; byteCount=934, lineCount=36.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Code Quality Auditor"
},
{
"path": "backend/nest-cli.json",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "Backend",
"contentEvidenceSha256": "84dc81177a0db2270bd71242b910f07982c56eec68285694c9cbffc3911912ba",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"$schema",
"collection",
"sourceRoot",
"compilerOptions",
"deleteOutDir"
],
"fileSpecificObservation": "Structural review of backend/nest-cli.json; byteCount=179, lineCount=9.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/package.json",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "Backend",
"contentEvidenceSha256": "8b14580b286dc09e3f0865efced27d9bcf7b5aa1eae6e7c57a27d0432c95270b",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"name",
"version",
"description",
"author",
"private",
"license",
"scripts",
"build",
"format",
"start",
"startdev:",
"startdebug:",
"startprod:",
"lint",
"test"
],
"fileSpecificObservation": "Reviewed backend/package.json; concrete elements analyzed: name, version, description, author, private.",
"supportedFindingIds": [
"DEVOPS-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/prisma/migrations/20260526145407_init/migration.sql",
"classification": "MIGRATION",
"auditDomain": "Database",
"contentEvidenceSha256": "aa8b760653d23b2c2ad189f2fd472965ff5832338dac68ed935da2712e58ff6e",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of backend/prisma/migrations/20260526145407_init/migration.sql; byteCount=9223, lineCount=261.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Database Auditor"
},
{
"path": "backend/prisma/migrations/20260526160916_add_ui_texts_and_scientific_terms/migration.sql",
"classification": "MIGRATION",
"auditDomain": "Database",
"contentEvidenceSha256": "8a6e5902dfa6a8c87180c567b522a6e6fe23ba7aaed1247051eda19dbc5b2561",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of backend/prisma/migrations/20260526160916_add_ui_texts_and_scientific_terms/migration.sql; byteCount=421, lineCount=18.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Database Auditor"
},
{
"path": "backend/prisma/migrations/migration_lock.toml",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "Backend",
"contentEvidenceSha256": "74a9137885ce73d3ff088d79d658f8066e05e680fb51c0800a290c91c0c01d48",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of backend/prisma/migrations/migration_lock.toml; byteCount=128, lineCount=3.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/prisma/schema.prisma",
"classification": "MIGRATION",
"auditDomain": "Database",
"contentEvidenceSha256": "a92c30cab66c0ca46b4b922d25e2c931f02a88a9e161699952d8ae245b1b4ae1",
"reviewStatus": "SEMANTICALLY_REVIEWED_NO_FINDING",
"reviewedElements": [
"@default",
"@map",
"@relation",
"@index",
"@id",
"@unique"
],
"fileSpecificObservation": "Reviewed Prisma schema models and field attributes; User model explicitly defines mobile String? @unique column, rejecting DB-001 as a false positive.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Database Auditor"
},
{
"path": "backend/prisma/seed.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "160ea6723dab5f10d735fe399c1a2aa1640f61513523f7067091b47fe045de75",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [],
"fileSpecificObservation": "Reviewed backend/prisma/seed.ts; concrete elements analyzed: .",
"supportedFindingIds": [
"TS-002"
],
"supportedDiagnosticIds": [
"DIAG-001"
],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/app.controller.spec.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Backend",
"contentEvidenceSha256": "43750c632fc7f5997ddd690d4c3989443ab29ebd8866ee1fec6f3885834f8054",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"AppController",
"root",
"should return "
],
"fileSpecificObservation": "Structural review of backend/src/app.controller.spec.ts; byteCount=639, lineCount=23.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/app.controller.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "3469c5aa62e1ba5b183d9bb9d40193e91aa761fc5734d332650b0bd49c346266",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"AppController",
"@Controller",
"@Get"
],
"fileSpecificObservation": "Structural review of backend/src/app.controller.ts; byteCount=286, lineCount=13.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/app.module.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "51c23094ed88846ef86f7d8e101e8863c4225de61aee9ac01372f36a16e5b876",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"AppModule",
"@Module"
],
"fileSpecificObservation": "Structural review of backend/src/app.module.ts; byteCount=1399, lineCount=48.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/app.service.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "5d4242d50092a353e5ab1f06663a89dbc714c7d9d70072ea03c83c5b14750f05",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"AppService",
"@Injectable"
],
"fileSpecificObservation": "Structural review of backend/src/app.service.ts; byteCount=150, lineCount=9.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/auth/auth.controller.spec.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Backend",
"contentEvidenceSha256": "92c30cdac367bb8c17424dbeab672ded0c6f301d31fc81b8589379bbfbc1f71a",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"AuthController",
"should be defined",
"should call sendOtp on service",
"should call verifyOtp on service"
],
"fileSpecificObservation": "Structural review of backend/src/auth/auth.controller.spec.ts; byteCount=1564, lineCount=48.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/auth/auth.controller.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "dc26a41ecfcfdf7ee9fd6ed8dd03e30c2fe6024f92351295a56eb46e48e578fb",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"AuthController",
"@ApiTags",
"@Controller",
"@ApiResponse",
"@Post",
"@HttpCode",
"@ApiOperation",
"@ApiOkResponse",
"@ApiBadRequestResponse",
"@Body"
],
"fileSpecificObservation": "Reviewed AuthController endpoints; sendOtp returns plain text verification code in JSON payload and relies on SMS OTP authentication disconnected from frontend login forms.",
"supportedFindingIds": [
"ARCH-001",
"SEC-003",
"DOC-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/auth/auth.module.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "e1ccf4f9a5b1de18210d49bb65868c36dcfd6a216d4c2c9e4d9e2dd490d571a1",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"AuthModule",
"@Module"
],
"fileSpecificObservation": "Reviewed backend/src/auth/auth.module.ts; concrete elements analyzed: AuthModule, @Module.",
"supportedFindingIds": [
"SEC-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/auth/auth.service.spec.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Backend",
"contentEvidenceSha256": "177b09fdfe0f747ee1ae7df98c86fa4b644aaf8c66b33f89e0328e534fa67e01",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"AuthService",
"should be defined",
"sendOtp",
"should generate a 5 digit OTP and save it in Redis",
"verifyOtp",
"should throw BadRequestException if OTP is expired/not found",
"should throw BadRequestException if OTP is incorrect",
"should delete OTP, find or create user and sign JWT",
"should create new user if user does not exist"
],
"fileSpecificObservation": "Structural review of backend/src/auth/auth.service.spec.ts; byteCount=3765, lineCount=110.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/auth/auth.service.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "b72a2c20bbc1c0f8b4e2223c0b161747cdd8b1214fb8fe1e8a3a78223fe42bab",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"AuthService",
"@Injectable"
],
"fileSpecificObservation": "Reviewed AuthService.sendOtp: OTP is generated with Math.random(), stored through RedisService.set with configured TTL, and returned in plain text in the service response object. This directly supports SEC-002 and SEC-003.",
"supportedFindingIds": [
"ARCH-001",
"SEC-002",
"SEC-003"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/auth/dto/send-otp.dto.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "df509a1e3c9fc8846ce920192a43cf38ef76db7953d07d187d477bdfe44ec157",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"SendOtpDto",
"@ApiProperty",
"@IsNotEmpty",
"@IsString",
"@Matches"
],
"fileSpecificObservation": "Reviewed backend/src/auth/dto/send-otp.dto.ts; concrete elements analyzed: SendOtpDto, @ApiProperty, @IsNotEmpty, @IsString, @Matches.",
"supportedFindingIds": [
"SEC-002",
"SEC-003"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/auth/dto/verify-otp.dto.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "4115fc64ad8a38f2c5ae933af99a611aacd02b0a8b4e2859f5d2804126850acd",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"VerifyOtpDto",
"@ApiProperty",
"@IsNotEmpty",
"@IsString",
"@Matches",
"@Length"
],
"fileSpecificObservation": "Reviewed backend/src/auth/dto/verify-otp.dto.ts; concrete elements analyzed: VerifyOtpDto, @ApiProperty, @IsNotEmpty, @IsString, @Matches.",
"supportedFindingIds": [
"SEC-002"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/auth/jwt-auth.guard.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "e654c3250653cb79863bc5d2ed6d89e3ab5e04f3b4945bab04fafedbaea04509",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"JwtAuthGuard",
"@Injectable"
],
"fileSpecificObservation": "Reviewed backend/src/auth/jwt-auth.guard.ts; concrete elements analyzed: JwtAuthGuard, @Injectable.",
"supportedFindingIds": [
"ADM-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/auth/jwt.strategy.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "2fd8214610a59f1bb4fdb517946e8c1d2402b6dc88a1bd62b22719734cf969ed",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"JwtStrategy",
"@Injectable"
],
"fileSpecificObservation": "Reviewed JwtStrategy constructor; secretOrKey uses hardcoded fallback string super-secret-key-canina when JWT_SECRET env var is omitted, directly supporting SEC-001.",
"supportedFindingIds": [
"SEC-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/common/filters/http-exception.filter.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "ef8428b791bc2f4b6c1e1110f910b1cfd5d1728db572423e7859cebc1dc5559d",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"HttpExceptionFilter",
"@Catch"
],
"fileSpecificObservation": "Structural review of backend/src/common/filters/http-exception.filter.ts; byteCount=833, lineCount=20.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/common/metrics.controller.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "3ed5cb3298ef3030c097703556b68fe5c4ce0a406f7f6a43b51e883a6ae3a51c",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"MetricsController",
"@ApiExcludeController",
"@Controller",
"@Get",
"@Res"
],
"fileSpecificObservation": "Reviewed backend/src/common/metrics.controller.ts; concrete elements analyzed: MetricsController, @ApiExcludeController, @Controller, @Get, @Res.",
"supportedFindingIds": [
"TS-003"
],
"supportedDiagnosticIds": [
"DIAG-002"
],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/main.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "6f6f86698f76639b26ad9a38fd6f572fe884f270cd70adf69342e4f99906a43f",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [],
"fileSpecificObservation": "Reviewed backend/src/main.ts; concrete elements analyzed: .",
"supportedFindingIds": [
"SEC-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/orders/dto/create-order.dto.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "82a19cb52f0a2346fc906f46e5b05564e54b287f1b0e12da0f3e12221671c5d7",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"CreateOrderDto",
"@ApiProperty",
"@IsNotEmpty",
"@IsString",
"@IsNumber",
"@ApiPropertyOptional",
"@IsOptional",
"@IsArray",
"@ValidateNested",
"@Type"
],
"fileSpecificObservation": "Structural review of backend/src/orders/dto/create-order.dto.ts; byteCount=822, lineCount=29.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/orders/orders.controller.spec.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Backend",
"contentEvidenceSha256": "a8990002863f2f6bfd99af91e9c6f4a67e9457fbef9caf2a07e7af2c9fce3b85",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"OrdersController",
"should be defined",
"should create order",
"should list orders of user",
"should find one order"
],
"fileSpecificObservation": "Structural review of backend/src/orders/orders.controller.spec.ts; byteCount=1961, lineCount=57.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/orders/orders.controller.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "dc251b61af61a8c6e80aba15dbbbe27d5940e78081c369536c721ddde569a09d",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"OrdersController",
"@ApiTags",
"@ApiBearerAuth",
"@UseGuards",
"@Controller",
"@ApiResponse",
"@Post",
"@ApiOperation",
"@ApiCreatedResponse",
"@ApiBadRequestResponse",
"@Req",
"@Body",
"@Get",
"@ApiOkResponse",
"@ApiNotFoundResponse",
"@Param"
],
"fileSpecificObservation": "Structural review of backend/src/orders/orders.controller.ts; byteCount=4001, lineCount=122.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/orders/orders.module.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "e36df12f5dc4cc036872c3b98f01c4060d24f526c399d6c7ec193ee7220bcba3",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"OrdersModule",
"@Module"
],
"fileSpecificObservation": "Structural review of backend/src/orders/orders.module.ts; byteCount=264, lineCount=10.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/orders/orders.service.spec.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Backend",
"contentEvidenceSha256": "8fb10c94adc23816814ce5d8b92c08c898a6c8eadea36ee932f91b7bd79bc9a4",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"OrdersService",
"should be defined",
"create",
"should throw NotFoundException if product does not exist",
"should throw BadRequestException if items are empty",
"should successfully create order and sum amounts",
"findAllByUser",
"should find all orders of a user",
"findOne",
"should throw NotFoundException if order does not exist",
"should return order if found"
],
"fileSpecificObservation": "Structural review of backend/src/orders/orders.service.spec.ts; byteCount=3470, lineCount=104.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/orders/orders.service.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "50a9f0ef8b15214a9e6422ba514b9c0e81ffcbdb170210870f75cc6013d83d66",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"OrdersService",
"@Injectable"
],
"fileSpecificObservation": "Reviewed OrdersService.create method; accumulates totalAmount using primitive Number conversion and loops findUnique database queries, directly supporting BE-001 and BE-002.",
"supportedFindingIds": [
"BE-001",
"BE-002"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/pets/dto/create-pet.dto.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "842a23c6ce7d596dcac91a0a5849422b584a7eacdcc12d28faa70f600973c976",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"CreatePetDto",
"@ApiProperty",
"@IsNotEmpty",
"@IsString",
"@ApiPropertyOptional",
"@IsOptional",
"@IsNumber",
"@IsDateString",
"@IsBoolean"
],
"fileSpecificObservation": "Structural review of backend/src/pets/dto/create-pet.dto.ts; byteCount=1277, lineCount=45.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/pets/dto/update-pet.dto.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "9215ef8d3ba4d104629e18ece5e38d8b22d5b12fa8d7b032b885923a2d00c42f",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"UpdatePetDto"
],
"fileSpecificObservation": "Structural review of backend/src/pets/dto/update-pet.dto.ts; byteCount=160, lineCount=5.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/pets/pets.controller.spec.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Backend",
"contentEvidenceSha256": "3bc537a47fa3bb87b9cc1916a849013b9fd94905b89b4155fe95cad5ca09b7cb",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"PetsController",
"should be defined",
"should create pet",
"should findAll pets",
"should findOne pet",
"should update pet",
"should remove pet"
],
"fileSpecificObservation": "Reviewed backend/src/pets/pets.controller.spec.ts; concrete elements analyzed: PetsController, should be defined, should create pet, should findAll pets, should findOne pet.",
"supportedFindingIds": [
"TEST-001"
],
"supportedDiagnosticIds": [
"DIAG-003"
],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/pets/pets.controller.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "f89faaeb9ead2a83b5f802577cabb39a107833429852bfeead3d06e1cc2777a8",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"PetsController",
"@ApiTags",
"@ApiBearerAuth",
"@UseGuards",
"@Controller",
"@ApiResponse",
"@Post",
"@ApiOperation",
"@ApiCreatedResponse",
"@ApiBadRequestResponse",
"@Req",
"@Body",
"@Get",
"@ApiOkResponse",
"@ApiNotFoundResponse",
"@Param"
],
"fileSpecificObservation": "Structural review of backend/src/pets/pets.controller.ts; byteCount=5567, lineCount=180.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/pets/pets.module.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "32c9118ec8ee3f83bbaebea3247ad10e6c0b257dd0ec4ae80de8fbe135cdb9e5",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"PetsModule",
"@Module"
],
"fileSpecificObservation": "Structural review of backend/src/pets/pets.module.ts; byteCount=250, lineCount=10.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/pets/pets.service.spec.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Backend",
"contentEvidenceSha256": "9b927330f92c4791b59152601254d48f0aa0b9d92e4f1786775cf699fd278dfe",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"PetsService",
"should be defined",
"should create pet",
"should find all pets by user",
"findOne",
"should throw NotFoundException if pet not found",
"should return pet if found",
"should update pet",
"should remove pet"
],
"fileSpecificObservation": "Structural review of backend/src/pets/pets.service.spec.ts; byteCount=3042, lineCount=94.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/pets/pets.service.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "00af95136a389248d667c4e981dbb5a12c43425054007e7b3a7ebc074d2ea07f",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"PetsService",
"@Injectable"
],
"fileSpecificObservation": "Structural review of backend/src/pets/pets.service.ts; byteCount=1745, lineCount=62.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/prisma/prisma.module.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "14d19dcd7848e4d134cd9eaa205818d5e0302123a5fc5ea2440d358a39f2fd25",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"PrismaModule",
"@Global",
"@Module"
],
"fileSpecificObservation": "Structural review of backend/src/prisma/prisma.module.ts; byteCount=219, lineCount=10.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/prisma/prisma.service.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "58334e95599a754096851809483901a14e85a9e4d190655f74be6171ce1388b7",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"PrismaService",
"@Injectable"
],
"fileSpecificObservation": "Structural review of backend/src/prisma/prisma.service.ts; byteCount=363, lineCount=14.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/products/dto/get-products.dto.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "39c1ee94138e1d5c0f6aaeadfbc653a2f200a64825a0d868db937f40abb14d89",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"GetProductsDto",
"@ApiPropertyOptional",
"@IsOptional",
"@IsString",
"@IsEnum"
],
"fileSpecificObservation": "Structural review of backend/src/products/dto/get-products.dto.ts; byteCount=574, lineCount=20.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/products/products.controller.spec.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Backend",
"contentEvidenceSha256": "058f4dd9afddc070fe22d5de3ab70e85fef19fdcb9c92d2cc73a90ddc3fa493b",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"ProductsController",
"should be defined",
"should list products",
"findOne",
"should throw NotFoundException if product not found",
"should return product details if found"
],
"fileSpecificObservation": "Structural review of backend/src/products/products.controller.spec.ts; byteCount=1905, lineCount=57.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/products/products.controller.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "2f5f9f97e5cfc3a4679b237e373781832ba243a9a622f64c9d5ddc6ad16b744e",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"ProductsController",
"@ApiTags",
"@Controller",
"@ApiResponse",
"@Get",
"@ApiOperation",
"@ApiOkResponse",
"@Query",
"@ApiNotFoundResponse",
"@Param"
],
"fileSpecificObservation": "Structural review of backend/src/products/products.controller.ts; byteCount=4161, lineCount=106.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/products/products.module.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "01e51354c6922d10d7fab9dd79973901219d8a8ce06aaa5ff14cae5241796f41",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"ProductsModule",
"@Module"
],
"fileSpecificObservation": "Structural review of backend/src/products/products.module.ts; byteCount=278, lineCount=10.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/products/products.service.spec.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Backend",
"contentEvidenceSha256": "316e5eadae7ab595acf34b1621353a17fdc0ed0de0a5afb546e689604f949189",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"ProductsService",
"should be defined",
"findAll",
"should query products with correct filters",
"findOne",
"should find product by id"
],
"fileSpecificObservation": "Structural review of backend/src/products/products.service.spec.ts; byteCount=2190, lineCount=76.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/products/products.service.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "3bb43f3f8b22a8bd18fcfccf18bef45591d9564ad8e01276638c892ceea1f023",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"ProductsService",
"@Injectable"
],
"fileSpecificObservation": "Structural review of backend/src/products/products.service.ts; byteCount=1180, lineCount=50.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/redis/redis.module.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "d2ad5482ca33266c13666b8d6249d90dcd62527e472cb12d98c4e3ebae8fcac8",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"RedisModule",
"@Global",
"@Module"
],
"fileSpecificObservation": "Structural review of backend/src/redis/redis.module.ts; byteCount=214, lineCount=10.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/redis/redis.service.spec.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Backend",
"contentEvidenceSha256": "c6782b6b177f0d73aba0501d86634f12ba1f6ddcbdb995aaf0e70a34f194e583",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"RedisService",
"should be defined",
"should call set with or without ttl",
"should call get",
"should call del"
],
"fileSpecificObservation": "Structural review of backend/src/redis/redis.service.spec.ts; byteCount=1581, lineCount=57.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/redis/redis.service.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "a8f03151af8caa570f0c6ad62e726aea257012e811bad80405826c3aafac8bb7",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"RedisService",
"@Injectable"
],
"fileSpecificObservation": "Reviewed backend/src/redis/redis.service.ts; concrete elements analyzed: RedisService, @Injectable.",
"supportedFindingIds": [
"SEC-002"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/settings/settings.controller.spec.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Backend",
"contentEvidenceSha256": "2e7ddf051244941e3c6be2486a6279f8a1bfddf59876c4dea4d0a0915eb40fc4",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"SettingsController",
"should be defined",
"should getUiTexts",
"should updateUiText",
"should getScientificTerms",
"should upsertScientificTerm",
"should deleteScientificTerm"
],
"fileSpecificObservation": "Reviewed backend/src/settings/settings.controller.spec.ts; concrete elements analyzed: SettingsController, should be defined, should getUiTexts, should updateUiText, should getScientificTerms.",
"supportedFindingIds": [
"TEST-001"
],
"supportedDiagnosticIds": [
"DIAG-004"
],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/settings/settings.controller.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "9847018dda0c55aabc2299bef26b069a1962853d6dc4133d425c32dd05dd386d",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"SettingsController",
"@ApiTags",
"@Controller",
"@Get",
"@ApiOperation",
"@ApiOkResponse",
"@UseGuards",
"@ApiBearerAuth",
"@Patch",
"@ApiUnauthorizedResponse",
"@Param",
"@Body",
"@Put",
"@Delete"
],
"fileSpecificObservation": "Reviewed SettingsController endpoints; UI text and scientific term mutation routes apply JwtAuthGuard without RolesGuard or Admin role check, directly supporting ADM-001.",
"supportedFindingIds": [
"ADM-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/settings/settings.module.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "07af4ac2bbc8ae7ffb62ae1850c91df2672afbe5e58da93388b9aba0d691eae9",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"SettingsModule",
"@Module"
],
"fileSpecificObservation": "Structural review of backend/src/settings/settings.module.ts; byteCount=394, lineCount=13.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/settings/settings.service.spec.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Backend",
"contentEvidenceSha256": "b5b8cdc91d26a561b7493885265e1d75a8c86f79cb0778e0f602b9d83c54b55d",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"SettingsService",
"should be defined",
"should getUiTexts",
"should updateUiText",
"should getScientificTerms",
"should upsertScientificTerm",
"should deleteScientificTerm"
],
"fileSpecificObservation": "Structural review of backend/src/settings/settings.service.spec.ts; byteCount=2814, lineCount=87.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/settings/settings.service.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "278619cac4d4ae3b85a8b3075840a5265ac2732f40e4c3161e9dd16a818761b5",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"SettingsService",
"@Injectable"
],
"fileSpecificObservation": "Structural review of backend/src/settings/settings.service.ts; byteCount=1115, lineCount=47.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/users/dto/address.dto.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "caaf6a055df72439795c85eba8e9a78fedf0e70b4f593d4b337aaae8440af6da",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"AddressDto",
"@ApiProperty",
"@IsString",
"@IsNotEmpty",
"@ApiPropertyOptional",
"@IsOptional",
"@IsBoolean"
],
"fileSpecificObservation": "Structural review of backend/src/users/dto/address.dto.ts; byteCount=1142, lineCount=45.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/users/dto/update-profile.dto.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "2a4d80862f02cfa37a3f9f8d9d9d1191c2fe611e1eea6f21cc954a77f7add959",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"UpdateProfileDto",
"@ApiPropertyOptional",
"@IsOptional",
"@IsString",
"@IsEmail"
],
"fileSpecificObservation": "Structural review of backend/src/users/dto/update-profile.dto.ts; byteCount=714, lineCount=25.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/users/users.controller.spec.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Backend",
"contentEvidenceSha256": "6b9bb6e51fc866950d36e0b8d5cdd8e2ed546b7cb20351be008161534aa83748",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"UsersController",
"should be defined",
"should getProfile",
"should updateProfile",
"should addAddress",
"should updateAddress",
"should deleteAddress",
"should setDefaultAddress"
],
"fileSpecificObservation": "Reviewed backend/src/users/users.controller.spec.ts; concrete elements analyzed: UsersController, should be defined, should getProfile, should updateProfile, should addAddress.",
"supportedFindingIds": [
"TEST-001"
],
"supportedDiagnosticIds": [
"DIAG-005",
"DIAG-006"
],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/users/users.controller.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "d5a6cc93a94e871c4485ef084e277bc3476740c65502a764f90a575fac3a30f6",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"UsersController",
"@ApiTags",
"@ApiBearerAuth",
"@Controller",
"@ApiResponse",
"@UseGuards",
"@Get",
"@ApiOperation",
"@ApiOkResponse",
"@Req",
"@Patch",
"@ApiBadRequestResponse",
"@Body",
"@Post",
"@ApiCreatedResponse",
"@Param"
],
"fileSpecificObservation": "Reviewed backend/src/users/users.controller.ts; concrete elements analyzed: UsersController, @ApiTags, @ApiBearerAuth, @Controller, @ApiResponse.",
"supportedFindingIds": [
"TEST-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/users/users.module.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "e99dd0daf64179291ef9b1ffc969574be6920ae813c789845209632463c92f42",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"UsersModule",
"@Module"
],
"fileSpecificObservation": "Structural review of backend/src/users/users.module.ts; byteCount=285, lineCount=11.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/users/users.service.spec.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Backend",
"contentEvidenceSha256": "9bde2dd4fdfbb0f3864baee7782d1cf5429f2fa371e07a336d0cf5b6a225cbd7",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"UsersService",
"should be defined",
"should call prisma findUnique in findById",
"should call prisma update in update",
"should addAddress",
"should updateAddress",
"should deleteAddress",
"should setDefaultAddress"
],
"fileSpecificObservation": "Structural review of backend/src/users/users.service.spec.ts; byteCount=3496, lineCount=102.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/src/users/users.service.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "1532d70fd00b84469c6805836806f4fa1bce05a3399813f101c92371387cf967",
"reviewStatus": "SEMANTICALLY_REVIEWED_NO_FINDING",
"reviewedElements": [
"UsersService",
"@Injectable"
],
"fileSpecificObservation": "Reviewed backend/src/users/users.service.ts; concrete elements analyzed: UsersService, @Injectable.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/test/app.e2e-spec.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Backend",
"contentEvidenceSha256": "191eb3068fadbce18c31e6ffa02ed6ed0cfd133573f23ef361d9ea413539f7e1",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"AppController (e2e)",
"/ (GET)"
],
"fileSpecificObservation": "Structural review of backend/test/app.e2e-spec.ts; byteCount=754, lineCount=30.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/test/jest-e2e.json",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "Backend",
"contentEvidenceSha256": "e5964a7412493afd594979b94374dd8e5fd87e96d23a514163bdb72198fda0ba",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"moduleFileExtensions",
"rootDir",
"testEnvironment",
"testRegex",
"transform",
"^.+\\\\.(t|j)s$"
],
"fileSpecificObservation": "Structural review of backend/test/jest-e2e.json; byteCount=192, lineCount=10.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/tsconfig.build.json",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "Backend",
"contentEvidenceSha256": "ef5be6c06c3ac6c3eca6c81885a12d03e33059086b4b275cf39f6e9359965378",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"extends",
"exclude"
],
"fileSpecificObservation": "Structural review of backend/tsconfig.build.json; byteCount=101, lineCount=5.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "backend/tsconfig.json",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "Backend",
"contentEvidenceSha256": "9f14a66ca5ada4e5f20a0c5d4a1a1d1d631aeb03a5940c737b73893c897a8dad",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"compilerOptions",
"module",
"moduleResolution",
"resolvePackageJsonExports",
"esModuleInterop",
"isolatedModules",
"declaration",
"removeComments",
"emitDecoratorMetadata",
"experimentalDecorators",
"allowSyntheticDefaultImports",
"target",
"sourceMap",
"outDir",
"baseUrl"
],
"fileSpecificObservation": "Structural review of backend/tsconfig.json; byteCount=699, lineCount=26.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Backend Auditor"
},
{
"path": "docker-compose.yml",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "DevOps",
"contentEvidenceSha256": "a57d52b4063ef4eb731e163947db6d3c9fb4aa7133dcb40c1ee408e351ed715d",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [],
"fileSpecificObservation": "Reviewed docker-compose.yml; concrete elements analyzed: .",
"supportedFindingIds": [
"DEVOPS-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "DevOps Auditor"
},
{
"path": "index.html",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "a8fb6003bf328dabab868cc7e6c1189869285287a5674d9892bddcdfd3491533",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of index.html; byteCount=811, lineCount=24.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "metadata.json",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "Storefront",
"contentEvidenceSha256": "6effb47a4ad0cd327ac85c3e3f1d667a1fca9cd36699ae907344fa6a030d8dd8",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"name",
"description",
"requestFramePermissions",
"majorCapabilities"
],
"fileSpecificObservation": "Structural review of metadata.json; byteCount=342, lineCount=9.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "nginx.conf",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "DevOps",
"contentEvidenceSha256": "e73f55d23eb74db056c552a3c9f51ceb6ed208bd5de3e8eb07a46f1e904b9f44",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [],
"fileSpecificObservation": "Reviewed nginx.conf; concrete elements analyzed: .",
"supportedFindingIds": [
"DEVOPS-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "DevOps Auditor"
},
{
"path": "package.json",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "Storefront",
"contentEvidenceSha256": "6573f481f79a240af1721a5878969c40a7f60d0c5498cab30dd427af97759445",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"name",
"private",
"version",
"type",
"scripts",
"dev",
"build",
"preview",
"clean",
"lint",
"test",
"testwatch:",
"dependencies",
"@google/genai",
"@tailwindcss/vite"
],
"fileSpecificObservation": "Reviewed package.json; concrete elements analyzed: name, private, version, type, scripts.",
"supportedFindingIds": [
"DEVOPS-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Storefront Auditor"
},
{
"path": "prometheus.yml",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "DevOps",
"contentEvidenceSha256": "c31cef7110f4965128e7dc355a77cd7f537a6383c8f62936a2d8c6ea5582898d",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of prometheus.yml; byteCount=172, lineCount=9.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "DevOps Auditor"
},
{
"path": "public/locales/fa/common.json",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "Storefront",
"contentEvidenceSha256": "8378edcaef506b34c6e243b58456fccfa657d912860ac3efc7c91de2350585c1",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"api",
"errors",
"400",
"401",
"403",
"404",
"500",
"insufficient_balance",
"breed_mismatch",
"invalid_coupon",
"order_failed",
"messages",
"loading",
"saving",
"success_update"
],
"fileSpecificObservation": "Structural review of public/locales/fa/common.json; byteCount=1238, lineCount=21.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "public/manifest.json",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "Storefront",
"contentEvidenceSha256": "87501de359a0c2f7a3a591fb4a0815a42b48357e9948a87406636685108fae7e",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"name",
"short_name",
"description",
"start_url",
"display",
"background_color",
"theme_color",
"icons",
"src",
"sizes",
"type"
],
"fileSpecificObservation": "Structural review of public/manifest.json; byteCount=614, lineCount=22.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "public/sw.js",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "7827cc0749b78767bbb7218fafbbc48ed42dae16dae671ebba10f45d30a12295",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of public/sw.js; byteCount=500, lineCount=24.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/App.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "5a6b490104821f21f6000c514001e5a455007ebcec4cf6ac545313f251fd0d9e",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [],
"fileSpecificObservation": "Reviewed src/App.tsx; concrete elements analyzed: .",
"supportedFindingIds": [
"FE-001",
"TS-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/AddressModal.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "314720a29226a08bafb8f746cff2fb6fbad6a85b3156f67e13ce77d9ce0231c4",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/AddressModal.tsx; byteCount=14652, lineCount=290.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/ArchivePage.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "a2a6c4131513cd9918e8ff5ded7f2542e15f9a04e5504803e665e6c9b8364237",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/ArchivePage.tsx; byteCount=21575, lineCount=424.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/AuthModal.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "986be0c94060790ea5694cd9f756db4c196bc4896146d21e35e080ca837b5b21",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/AuthModal.tsx; byteCount=17655, lineCount=387.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/B2BPortal.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "5fde2d75add37f0a64dccc1bd916d78ecf3ec3bf8fdffda2176e9e677ce2ae0e",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/B2BPortal.tsx; byteCount=8985, lineCount=192.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/BlogPage.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "7d0ae2089eca5af4c221d7d18be199a6037f628023c3964a6df957d7a541932e",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/BlogPage.tsx; byteCount=20444, lineCount=342.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/CartDrawer.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "faecc40e3f7c0bdfe1bacf4ba67451b9515a3837471b6e4f6554c62a155d4cdf",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/CartDrawer.tsx; byteCount=17956, lineCount=310.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/CheckoutPage.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "1d9470816ddd4d8dd539beba7a7d31641154ba763ff51ebdfc2804d31c4c2a5e",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/CheckoutPage.tsx; byteCount=21057, lineCount=381.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/DeleteConfirmModal.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "7907927ed2d4bb1aeac9e675d77feda6b6b060a031fc7c7df01d7bca35121298",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/DeleteConfirmModal.tsx; byteCount=2393, lineCount=62.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/ErrorBoundary.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "a90fda767490f58218d82a0e3a48ecece06235248b84406220acd86b7112c740",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"ErrorBoundary"
],
"fileSpecificObservation": "Structural review of src/components/ErrorBoundary.tsx; byteCount=2687, lineCount=72.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/ErrorPages.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "ec77817519a13c04467fe2d492dc6444d06ecf052afca9ff589fd5f3e9fe4c7f",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"NotFoundPage",
"ServerErrorPage"
],
"fileSpecificObservation": "Structural review of src/components/ErrorPages.tsx; byteCount=2773, lineCount=60.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/FeaturedProducts.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "df25d1ae82b4592cb1228f33ce9b152ab1f5c150c375eedc4816303c8f76eb13",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/FeaturedProducts.tsx; byteCount=7516, lineCount=148.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/Footer.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "120f21891ec195b502927386334d72237c1f80c04d48df725686fb9637af1c22",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/Footer.tsx; byteCount=8311, lineCount=128.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/Header.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "40ac019ff77dae5aee81e888af89081c4e8193a6ff3c4f1b1481012bdfad6b01",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [],
"fileSpecificObservation": "Reviewed src/components/Header.tsx; concrete elements analyzed: .",
"supportedFindingIds": [
"FE-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/HeaderButton.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "e7e508be65aeba6771625dd43de4e84fe889c17f97a1d30a918f852b460dd8b2",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/HeaderButton.tsx; byteCount=1839, lineCount=53.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/Hero.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "df02dbfa6f1b9c74440bac4c7695b80e8f608d2d00025d540332d2a7149c3b28",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"\\n"
],
"fileSpecificObservation": "Structural review of src/components/Hero.tsx; byteCount=9932, lineCount=196.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/IngredientWiki.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "9112b3ad9779255ea50df40787e5a62875cc711d838aa5fb5f4ff9cd383d12ea",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/IngredientWiki.tsx; byteCount=10104, lineCount=178.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/LoginModal.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "a717089effda26a988fd522a14479f171cccaeedd07100c51cb8faf1f6300bfe",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [],
"fileSpecificObservation": "Reviewed src/components/LoginModal.tsx; concrete elements analyzed: .",
"supportedFindingIds": [
"ARCH-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/NetworkBanner.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "13abbc38af102705fe15e533304223836ed6064a0c06e5dd217693cc36668874",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"NetworkBanner"
],
"fileSpecificObservation": "Structural review of src/components/NetworkBanner.tsx; byteCount=2318, lineCount=68.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/OrderDetailsModal.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "f317fb006ed49f3f859d77f76991de618df7e277f98bd8d4a0622be3c26b4e80",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/OrderDetailsModal.tsx; byteCount=13314, lineCount=265.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/OrderSuccess.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "0e1ee36d1658063758499b117c6bb6f13632ac80d8dc838c9dc84bf6e23cc1b6",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/OrderSuccess.tsx; byteCount=5706, lineCount=110.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/OrderTracking.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "32f28b0f1fd4b46b8f871f2b9918db6e2b06f7468d83b990bd21ce5187bd4c43",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/OrderTracking.tsx; byteCount=9341, lineCount=168.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/PetProfile.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "d805ad77e12771ce2846392b74a1585c451a2581720af938bcaa39fbb2dc7af8",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"T",
"T"
],
"fileSpecificObservation": "Structural review of src/components/PetProfile.tsx; byteCount=66705, lineCount=1193.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/ProductPage.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "e230769b1c71419eecae57d491256e3f2d2c360dbc2245d9a009139cc2649179",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/ProductPage.tsx; byteCount=33351, lineCount=599.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/SafeImage.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "81f495bd2b062276d4838601183715aabcefe1616300e01094f089dcc1442dbf",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/SafeImage.tsx; byteCount=2623, lineCount=74.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/SearchResultsPage.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "9f33179f6ae1fbf9514a11c6177ce7c826d6f3adc5601e33d7ab9536ac0356c2",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/SearchResultsPage.tsx; byteCount=8048, lineCount=138.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/Skeleton.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "fc19633c914e81c7eef71a70082bd495cf20acfe7700ea7099d6da0b012449f4",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"Skeleton",
"ProductCardSkeleton",
"PetProfileSkeleton",
"OrderRowSkeleton"
],
"fileSpecificObservation": "Structural review of src/components/Skeleton.tsx; byteCount=3155, lineCount=86.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/SmartAdvisor.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "13e9aac5ae214bf4e2849d1db032d978287e766fd01335d1795d31828e9caaa0",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/SmartAdvisor.tsx; byteCount=15860, lineCount=297.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/Tooltip.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "562319624a2a6d8877e8bd68c31304b01049882a2a4e85c67216b5a74f9aef10",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/Tooltip.tsx; byteCount=2561, lineCount=62.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/TopUpModal.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "09c967e8d366ae9969f0c2e2beffb893072aa8818c3b3586ad1f9ba646f8fef4",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/TopUpModal.tsx; byteCount=7049, lineCount=154.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/UserDashboard.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "9478a4057c97f362b186d81bfcdda2e8815c3118cfa07f49c38b79474a41e04b",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/UserDashboard.tsx; byteCount=37598, lineCount=646.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/VetGallery.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "2dfbead4e5eb98a56bdff1c3a66c513254c00a3332a9271a34df481f4f47d744",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/VetGallery.tsx; byteCount=7427, lineCount=148.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/VideosPage.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "9912b04a03bb2891557a19c39b04a88b254af6375a072fbcab479524c056a49b",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/components/VideosPage.tsx; byteCount=9112, lineCount=186.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/__tests__/CartDrawer.test.tsx",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Storefront",
"contentEvidenceSha256": "fc4f95ab29d719bb152687cebf8feec8273e05caca29726ca8cdfcbf9ef91912",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"CartDrawer",
"renders empty cart state when no items in cart",
"renders cart items and total when items are present",
"triggers updateQuantity when plus/minus buttons are clicked"
],
"fileSpecificObservation": "Structural review of src/components/__tests__/CartDrawer.test.tsx; byteCount=3131, lineCount=102.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/__tests__/FeaturedProducts.test.tsx",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Storefront",
"contentEvidenceSha256": "e411316d9a5b8b0b6c7720ebd04c85075b01c38323d217badf165840f1bb100d",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"FeaturedProducts",
"renders loading skeletons initially",
"renders products once loaded",
"calls onProductClick when product card is clicked",
"calls onShopNavigate when navigation link is clicked"
],
"fileSpecificObservation": "Structural review of src/components/__tests__/FeaturedProducts.test.tsx; byteCount=2945, lineCount=82.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/__tests__/Footer.test.tsx",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Storefront",
"contentEvidenceSha256": "57dd04273765b65b4e906552e74e6d5c4d420e9d06498d8093c4abf0ed2b3c3f",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"Footer",
"renders footer brand text and standard layout elements",
"triggers onNavigate and onShopNavigate when quick links are clicked"
],
"fileSpecificObservation": "Structural review of src/components/__tests__/Footer.test.tsx; byteCount=1679, lineCount=44.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/__tests__/Header.test.tsx",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Storefront",
"contentEvidenceSha256": "5c6f361116a37b8556bb01829708e0c1490fe59e12c30b5bdda9d20cabefdde8",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"Header",
"renders brand name and login button when guest",
"renders user first name and pet selection when logged in",
"calls onCartOpen when click on cart button"
],
"fileSpecificObservation": "Structural review of src/components/__tests__/Header.test.tsx; byteCount=3156, lineCount=111.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/__tests__/Hero.test.tsx",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Storefront",
"contentEvidenceSha256": "7609965c99249fb454871c286a10237c4eb9996264a68c6d25b8057477320cf5",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"Hero",
"renders title and description from settingsStore",
"calls onShopNavigate when "
],
"fileSpecificObservation": "Structural review of src/components/__tests__/Hero.test.tsx; byteCount=1679, lineCount=44.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/components/__tests__/Tooltip.test.tsx",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Storefront",
"contentEvidenceSha256": "6a25742e1d4737fdb8d7a75a1e927fb3308203bdac4dfbe540f6f988def7ee9b",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"Tooltip",
"should render children correctly",
"should display tooltip definition on hover"
],
"fileSpecificObservation": "Structural review of src/components/__tests__/Tooltip.test.tsx; byteCount=1536, lineCount=51.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/data/products.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "06775f65c485d1dbd56b0f0406fc910c94f1747c1c56422aac077caeb5c02b56",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"Specialist",
"PetType",
"IngredientInfo",
"DosageResult",
"FAQ",
"Product",
"INGREDIENTS_WIKI",
"PRODUCTS"
],
"fileSpecificObservation": "Structural review of src/data/products.ts; byteCount=31112, lineCount=514.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/data/scientificTerms.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "a826894be746caa0233e6362c33fdf04a386bb4779d924b37868256b5f04394f",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"ScientificTerm",
"SCIENTIFIC_TERMS"
],
"fileSpecificObservation": "Structural review of src/data/scientificTerms.ts; byteCount=2182, lineCount=44.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/hooks/useNetworkStatus.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "97a1eb7b50abc7f05c6d430db307fd1739fac0732faf250986ed76e52099de78",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"useNetworkStatus"
],
"fileSpecificObservation": "Structural review of src/hooks/useNetworkStatus.ts; byteCount=574, lineCount=21.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/index.css",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "4379a2e1316cb65fcce8b6a32e2282232b9a5f3d503e5fe1901d0405340721d3",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/index.css; byteCount=1887, lineCount=75.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/lib/utils.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "21a3949a05abd11a117ab450826d09eddde87058b80cb2f43a28158c3da3e6fc",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"toPersian",
"cn"
],
"fileSpecificObservation": "Structural review of src/lib/utils.ts; byteCount=323, lineCount=9.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/main.tsx",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "8b129211a1e36a01a0c294633d8463c9a661a78fe04c3f26f45ca2fdabdedff0",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/main.tsx; byteCount=241, lineCount=11.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/services/api.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "da0a9cc677949951c83dc2a846072dc14744bcd84c06d68d74c7e9b52d08264b",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/services/api.ts; byteCount=506, lineCount=24.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/services/authService.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "da9897908b19513fb41a5b09fd641fae7675091f5887641737c15fa6109e8bd1",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"User",
"AuthResponse",
"AuthService",
"authService"
],
"fileSpecificObservation": "Structural review of src/services/authService.ts; byteCount=2877, lineCount=103.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/services/orderService.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "bafd959741e791ed278a0d6c74ae3e110f90222ed65a93565527faf64739edd1",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"OrderItem",
"Order",
"OrderService",
"orderService"
],
"fileSpecificObservation": "Structural review of src/services/orderService.ts; byteCount=2148, lineCount=80.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/services/productService.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "cf3077a9e8f8786fb37a9f5da74400552a68df2fed0cd75c171cea25e354ceb0",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"ProductService",
"productService"
],
"fileSpecificObservation": "Structural review of src/services/productService.ts; byteCount=3890, lineCount=107.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/store/__tests__/cartStore.test.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Storefront",
"contentEvidenceSha256": "6e8809d62f3d49ffca5146a831391e68633858dfbbae926aad1d810271d54a9a",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"cartStore",
"should add item to cart",
"should increment quantity if item already in cart",
"should remove item from cart",
"should update quantity",
"should remove item if update quantity is <= 0",
"should apply discount coupon",
"should calculate subtotal, discount and total",
"should create order successfully via orderService"
],
"fileSpecificObservation": "Structural review of src/store/__tests__/cartStore.test.ts; byteCount=4170, lineCount=143.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/store/__tests__/settingsStore.test.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Storefront",
"contentEvidenceSha256": "19d9585ceb5ab219d6c475614da324711d4e40ccf476b486ba5772d8311b00f7",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"settingsStore",
"should return fallback if key is not found",
"should return value if key is found",
"should fetch settings successfully and map array to object"
],
"fileSpecificObservation": "Structural review of src/store/__tests__/settingsStore.test.ts; byteCount=2011, lineCount=63.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/store/__tests__/userStore.test.ts",
"classification": "FIRST_PARTY_TEST",
"auditDomain": "Storefront",
"contentEvidenceSha256": "728192566ff3da8a284af6b17e370b15bb4103da7f7404140daf52ade2d7a566",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"userStore",
"should logout correctly",
"should fetch profile successfully",
"should update profile correctly",
"should add address and call fetchProfile"
],
"fileSpecificObservation": "Structural review of src/store/__tests__/userStore.test.ts; byteCount=3690, lineCount=134.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/store/cartStore.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "dd327a89159929614f81c1103d40a739c5e753b95f9b1bb2a823e0e2346b8e12",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"CartItem",
"useCartStore"
],
"fileSpecificObservation": "Structural review of src/store/cartStore.ts; byteCount=5694, lineCount=167.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/store/settingsStore.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "624187b749ef26e05633e0f6f5b26e1d6509d9d7b23d1ea9c807bcb4167917f3",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"ScientificTerm",
"useSettingsStore"
],
"fileSpecificObservation": "Structural review of src/store/settingsStore.ts; byteCount=1644, lineCount=60.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/store/usePetStore.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "d44296271fb8f1bfd3f3d628c347df02b433d8abdeed835b8e1218b0f8ecb509",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"Reminder",
"HealthLog",
"PetConsumption",
"PetProfile",
"usePetStore"
],
"fileSpecificObservation": "Structural review of src/store/usePetStore.ts; byteCount=7771, lineCount=215.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/store/userStore.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "d58219ae73e58ba5bc7498173c9a2787d1d2a55798e38833e652c5c361a60799",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [
"UserRole",
"Address",
"Transaction",
"useUserStore"
],
"fileSpecificObservation": "Reviewed src/store/userStore.ts; concrete elements analyzed: UserRole, Address, Transaction, useUserStore.",
"supportedFindingIds": [
"ARCH-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/test/setup.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "9d7cdb55306fa51fd1b8badbec660b2f2e1d7d78531be1e5807f15491e93d9ef",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/test/setup.ts; byteCount=1607, lineCount=68.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "src/vite-env.d.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "424faf9241dd699dda995b367ed36665732da1e6ec1f33b2fd40394488ecac92",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of src/vite-env.d.ts; byteCount=39, lineCount=2.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "swagger.yml",
"classification": "FIRST_PARTY_DOCUMENTATION",
"auditDomain": "Documentation",
"contentEvidenceSha256": "800b2e02103b50a12f3ca294af2b526c32635cabe0b65f41fdb07c7c6ec1ff6b",
"reviewStatus": "SEMANTICALLY_REVIEWED_WITH_FINDING",
"reviewedElements": [],
"fileSpecificObservation": "Reviewed swagger.yml; concrete elements analyzed: .",
"supportedFindingIds": [
"DOC-001"
],
"supportedDiagnosticIds": [],
"limitations": null,
"reviewerDomain": "Documentation Auditor"
},
{
"path": "tsconfig.json",
"classification": "FIRST_PARTY_CONFIGURATION",
"auditDomain": "Storefront",
"contentEvidenceSha256": "a9d48a003eb8b17b0d5765de18a9ff32fa9d3c54ce92ac98e5784f39c2e59584",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [
"compilerOptions",
"target",
"experimentalDecorators",
"useDefineForClassFields",
"module",
"lib",
"skipLibCheck",
"moduleResolution",
"isolatedModules",
"moduleDetection",
"allowJs",
"jsx",
"paths",
"@/*",
"allowImportingTsExtensions"
],
"fileSpecificObservation": "Structural review of tsconfig.json; byteCount=631, lineCount=29.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
},
{
"path": "vite.config.ts",
"classification": "FIRST_PARTY_SOURCE",
"auditDomain": "Storefront",
"contentEvidenceSha256": "245a8a2c544f56a4c4a59be6e3afc77d74dd51311e0f8ca3fe0fcfb1959f979f",
"reviewStatus": "STRUCTURALLY_REVIEWED",
"reviewedElements": [],
"fileSpecificObservation": "Structural review of vite.config.ts; byteCount=1288, lineCount=44.",
"supportedFindingIds": [],
"supportedDiagnosticIds": [],
"limitations": "No file-specific semantic conclusion recorded",
"reviewerDomain": "Storefront Auditor"
}
]