{"record":{"id":"db09992da0a1f827","repo":"sickn33/agentic-awesome-skills","slug":"negative-price","errorCode":null,"errorMessage":"Negative price","messagePattern":"Negative price","errorType":"validation","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"skills/kaizen/SKILL.md","lineNumber":97,"sourceCode":"if (item.price < 0 || item.quantity < 0) {\nthrow new Error('Price and quantity must be non-negative');\n}\nreturn total + (item.price \\* item.quantity);\n}, 0);\n};\n\n````\nEach step is complete, tested, and working\n</Good>\n\n<Bad>\n```typescript\n// Trying to do everything at once\nconst calculateTotal = (items: Item[]): number => {\n  // Validate, optimize, add features, handle edge cases all together\n  if (!items?.length) return 0;\n  const validItems = items.filter(item => {\n    if (item.price < 0) throw new Error('Negative price');\n    if (item.quantity < 0) throw new Error('Negative quantity');\n    return item.quantity > 0; // Also filtering zero quantities\n  });\n  // Plus caching, plus logging, plus currency conversion...\n  return validItems.reduce(...); // Too many concerns at once\n};\n````\n\nOverwhelming, error-prone, hard to verify\n</Bad>\n\n#### In Practice\n\n**When implementing features:**\n\n1. Start with simplest version that works\n2. Add one improvement (error handling, validation, etc.)\n3. Test and verify","sourceCodeStart":79,"sourceCodeEnd":115,"githubUrl":"https://github.com/sickn33/agentic-awesome-skills/blob/58d857988fcfac6986206bca2b2fe223aa437e4b/skills/kaizen/SKILL.md#L79-L115","documentation":"Error \"Negative price\" thrown in sickn33/agentic-awesome-skills.","triggerScenarios":"Thrown at skills/kaizen/SKILL.md:97 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"58d857988fcfac6986206bca2b2fe223aa437e4b","analyzedAt":"2026-08-26T11:55:59.350Z","schemaVersion":2},"datasetVersion":"2026-08-26T14:46:13.012Z"}