{"abstract":"A command limiter ignores elapsed sample duration.","category":"Discrete control systems","checks":6,"contract":"With nonnegative integer rate and dt, move from previous toward target by at most rate*dt, without overshoot.","evaluation_group":"model-f89533d2fa45e2b3","failed_approach":"Scaling only upward movement leaves downward changes dependent on call rate.","family":"z-control_systems-slew-elapsed","id":"FA-11961","implementations":{"attempt":{"sha256":"6a495b8bbec4d282e8ded5b72f294b0be2454b548f202920ceeecea9bce857b5","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(previous, target, rate, dt):\n    limit = rate*dt if target >= previous else rate\n    return previous + max(-limit, min(limit, target-previous))\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('rise duration', solve(0, 10*N, N, 3), 3*N)\ncheck('fall duration', solve(10*N, 0, N, 3), 7*N)\ncheck('zero elapsed', solve(N, 0, N, 0), N)\ncheck('no overshoot', solve(0, N, N, 3), N)\ncheck('zero rate', solve(N, 10*N, 0, 3), N)\ncheck('hold', solve(N, N, N, 3), N)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"7ec0408802f2517549f21172e7b8bc48e00c8bae0cef4554ac14aa07adae2b56","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(previous, target, rate, dt):\n    return previous + max(-rate, min(rate, target-previous))\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('rise duration', solve(0, 10*N, N, 3), 3*N)\ncheck('fall duration', solve(10*N, 0, N, 3), 7*N)\ncheck('zero elapsed', solve(N, 0, N, 0), N)\ncheck('no overshoot', solve(0, N, N, 3), N)\ncheck('zero rate', solve(N, 10*N, 0, 3), N)\ncheck('hold', solve(N, N, N, 3), N)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"fixed":{"sha256":"33f3aca7bb108dbe4e30b6969b5a866c3975d88d6544a4889b5eccc8971c1101","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(previous, target, rate, dt):\n    limit=rate*dt\n    return previous + max(-limit, min(limit, target-previous))\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('rise duration', solve(0, 10*N, N, 3), 3*N)\ncheck('fall duration', solve(10*N, 0, N, 3), 7*N)\ncheck('zero elapsed', solve(N, 0, N, 0), N)\ncheck('no overshoot', solve(0, N, N, 3), N)\ncheck('zero rate', solve(N, 10*N, 0, 3), N)\ncheck('hold', solve(N, N, N, 3), N)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"Integer-valued controlled examples only; no physical plant, stability guarantee, timing jitter, or hardware behavior is modeled. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"z-control_systems-slew-elapsed","generated_at":"2026-09-29T14:38:52.476871+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"An offline discrete controller model isolates this state or arithmetic fault; it makes no physical plant or safety claim.","repair":"Multiply rate by elapsed time and clamp signed command movement.","root_cause":"The rate is treated as a fixed per-call increment.","sha256":"c2b9d96b0a48218d37e859d5efa1c77348c2afb9f0aa6c4ed0df82105fb45c11","title":"A command limiter ignores elapsed sample duration · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":40.639,"exit_code":1,"observations":[{"actual":3,"check":"rise duration","expected":3,"passed":true},{"actual":9,"check":"fall duration","expected":7,"passed":false},{"actual":0,"check":"zero elapsed","expected":1,"passed":false},{"actual":1,"check":"no overshoot","expected":1,"passed":true},{"actual":1,"check":"zero rate","expected":1,"passed":true},{"actual":1,"check":"hold","expected":1,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"rise duration\", \"actual\": 3, \"expected\": 3, \"passed\": true}, {\"check\": \"fall duration\", \"actual\": 9, \"expected\": 7, \"passed\": false}, {\"check\": \"zero elapsed\", \"actual\": 0, \"expected\": 1, \"passed\": false}, {\"check\": \"no overshoot\", \"actual\": 1, \"expected\": 1, \"passed\": true}, {\"check\": \"zero rate\", \"actual\": 1, \"expected\": 1, \"passed\": true}, {\"check\": \"hold\", \"actual\": 1, \"expected\": 1, \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.756,"exit_code":1,"observations":[{"actual":1,"check":"rise duration","expected":3,"passed":false},{"actual":9,"check":"fall duration","expected":7,"passed":false},{"actual":0,"check":"zero elapsed","expected":1,"passed":false},{"actual":1,"check":"no overshoot","expected":1,"passed":true},{"actual":1,"check":"zero rate","expected":1,"passed":true},{"actual":1,"check":"hold","expected":1,"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"rise duration\", \"actual\": 1, \"expected\": 3, \"passed\": false}, {\"check\": \"fall duration\", \"actual\": 9, \"expected\": 7, \"passed\": false}, {\"check\": \"zero elapsed\", \"actual\": 0, \"expected\": 1, \"passed\": false}, {\"check\": \"no overshoot\", \"actual\": 1, \"expected\": 1, \"passed\": true}, {\"check\": \"zero rate\", \"actual\": 1, \"expected\": 1, \"passed\": true}, {\"check\": \"hold\", \"actual\": 1, \"expected\": 1, \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":40.244,"exit_code":0,"observations":[{"actual":3,"check":"rise duration","expected":3,"passed":true},{"actual":7,"check":"fall duration","expected":7,"passed":true},{"actual":1,"check":"zero elapsed","expected":1,"passed":true},{"actual":1,"check":"no overshoot","expected":1,"passed":true},{"actual":1,"check":"zero rate","expected":1,"passed":true},{"actual":1,"check":"hold","expected":1,"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"rise duration\", \"actual\": 3, \"expected\": 3, \"passed\": true}, {\"check\": \"fall duration\", \"actual\": 7, \"expected\": 7, \"passed\": true}, {\"check\": \"zero elapsed\", \"actual\": 1, \"expected\": 1, \"passed\": true}, {\"check\": \"no overshoot\", \"actual\": 1, \"expected\": 1, \"passed\": true}, {\"check\": \"zero rate\", \"actual\": 1, \"expected\": 1, \"passed\": true}, {\"check\": \"hold\", \"actual\": 1, \"expected\": 1, \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}