容错设计与防御性编程实践 — 软件工程填空题
题目
某支付网关的扣款函数 process(amount) 约定:仅当 amount 为大于 0 且小于等于 10000 的数值时才执行扣款。程序员采用防御式编程:在函数入口先用断言检查 amount 是否为数值类型且满足 0<amount≤10000,不满足则立即终止并报告;同时对来自外部请求的金额参数,在调用前先做输入验证,非法则拒绝请求且不改变账户状态。若外部传入 amount=-50,正确的处理流程是先____(填“断言失败终止”或“输入验证拒绝”),从而保证无效输入不会引发____(填“扣款执行”或“程序崩溃”)