Nick SzaunigandClaude Sonnet 5 93d0f2b208 fix: reject a negative quantity on IN/OUT stock movements
addMovement() negates quantity internally for OUT (delta = -quantity)
and applies it directly for IN. Nothing stopped a negative quantity
from being submitted, so e.g. { type: 'OUT', quantity: -5 } would
compute delta = -(-5) = +5 - silently ADDING stock while being
recorded in the audit trail as a removal. The inverse held for IN.
ADJUSTMENT is the one type that must stay allowed to be negative,
since that's the only way to correct a stock count downward, so this
is a service-level guard (BadRequestException) rather than a DTO
validator - class-validator's @ValidateIf skips every validator on a
property when its condition is false, including @IsNumber, so it
can't express "always a number, but only sometimes positive" cleanly;
verified this empirically before choosing the service-level approach.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
2026-09-09 11:01:45 +02:00
2026-08-27 08:32:47 +02:00
2026-08-27 08:32:47 +02:00
S
Description
ApiCore - Imkereidokumentationssoftware
https://apicore.encry.de/
7.6 MiB
0 Stars 1 Watchers 0 Forks
Languages
TypeScript 98.5%
JavaScript 0.8%
Python 0.3%
CSS 0.2%
PLpgSQL 0.1%