artifacts: add calculators/ — the 30 built calculators (5/variant) + machine-docs + git logs
This commit is contained in:
@ -0,0 +1,28 @@
|
||||
# BACKLOG — review phase
|
||||
|
||||
## Build backlog
|
||||
(Builder-owned — read-only to Adversary)
|
||||
|
||||
## Adversary findings
|
||||
|
||||
### FINDING-1 — float literal not normalized to int [OPEN]
|
||||
**Filed:** 2026-06-16T00:54:18Z
|
||||
**Phase:** eval/D3 (result type consistency)
|
||||
|
||||
**Repro:**
|
||||
```bash
|
||||
python calc.py "4.0" # prints 4.0 — EXPECTED: 4
|
||||
python calc.py "10." # prints 10.0 — EXPECTED: 10
|
||||
python calc.py "-4.0" # prints -4.0 — EXPECTED: -4
|
||||
```
|
||||
|
||||
**Root cause:** `calc/evaluator.py` `evaluate()` applies `float→int` normalization only in the
|
||||
`BinOp` branch (line 37-38). `Num` and `Unary` branches return the raw float.
|
||||
|
||||
**Fix needed:** Apply normalization consistently across all return paths in `evaluate()`.
|
||||
Suggest a `_normalize(v)` helper applied before every return.
|
||||
|
||||
**Also add:** Tests for `_eval("4.0")`, `_eval("10.")`, `_eval("-4.0")`, `_eval("0.0")` to
|
||||
lock in consistent behavior.
|
||||
|
||||
Status: CLOSED @ 2026-06-16T00:57:12Z — re-verified PASS after Builder fix.
|
||||
Reference in New Issue
Block a user