An additive manufacturing apparatus comprising: a chamber; a platform within said chamber; and a controller, the controller including a processor and a memory, the memory storing instructions for causing the processor to validate at least one input operation as generating a workpiece free of keyhole porosity flaws by: generating a multidimensional space (340; 440; 540) defined by a plurality of bounds (330; 430; 530, 550), each of said bounds (330...550) being defined on a distinct parameter of an additive manufacturing process and each of said parameters affecting the occurrence of a keyhole porosity flaw, each of said parameters being a dimension in a multi-dimensional coordinate system; determining a coordinate position of at least one input operation within the multi-dimensional coordinate system; and categorizing the at least one operation as free of keyhole porosity flaws when the coordinate position is within the multi-dimensional space (340; 440; 540), wherein the memory further stores instructions for rejecting the at least one input operation in response to the determined coordinate position falling outside the multi-dimensional space (340; 440; 540), to cause the controller to reject the at least one input operation. a chamber; a platform within said chamber; and a controller, the controller including a processor and a memory, the memory storing instructions for causing the processor to validate at least one input operation as generating a workpiece free of keyhole porosity flaws by: generating a multidimensional space (340; 440; 540) defined by a plurality of bounds (330; 430; 530, 550), each of said bounds (330...550) being defined on a distinct parameter of an additive manufacturing process and each of said parameters affecting the occurrence of a keyhole porosity flaw, each of said parameters being a dimension in a multi-dimensional coordinate system; determining a coordinate position of at least one input operation within the multi-dimensional coordinate system; and categorizing the at least one operation as free of keyhole porosity flaws when the coordinate position is within the multi-dimensional space (340; 440; 540), wherein the memory further stores instructions for rejecting the at least one input operation in response to the determined coordinate position falling outside the multi-dimensional space (340; 440; 540), to cause the controller to reject the at least one input operation. generating a multidimensional space (340; 440; 540) defined by a plurality of bounds (330; 430; 530, 550), each of said bounds (330...550) being defined on a distinct parameter of an additive manufacturing process and each of said parameters affecting the occurrence of a keyhole porosity flaw, each of said parameters being a dimension in a multi-dimensional coordinate system; determining a coordinate position of at least one input operation within the multi-dimensional coordinate system; and categorizing the at least one operation as free of keyhole porosity flaws when the coordinate position is within the multi-dimensional space (340; 440; 540), wherein the memory further stores instructions for rejecting the at least one input operation in response to the determined coordinate position falling outside the multi-dimensional space (340; 440; 540), to cause the controller to reject the at least one input operation.