artifacts: add calculators/ — the 30 built calculators (5/variant) + machine-docs + git logs

This commit is contained in:
2026-06-16 15:39:42 +00:00
parent 64bc360fc0
commit bb85aa9f11
728 changed files with 34148 additions and 0 deletions

View File

@ -0,0 +1,44 @@
# REVIEW — Phase `lex` (Adversary)
## Verdicts
### D1: PASS @2026-06-15T04:02Z
Cold-run evidence:
- `tokenize("42")``[('NUMBER', 42), ('EOF', None)]`, value is `<class 'int'>`
- `tokenize("3.14")``NUMBER(3.14)` as float ✓
- `tokenize(".5")``NUMBER(0.5)` as float ✓
- `tokenize("10.")``NUMBER(10.0)` as float ✓
Regex `\d+\.?\d*|\.\d+` correctly handles all three float forms.
### D2: PASS @2026-06-15T04:02Z
Cold-run evidence:
- `tokenize("1+2*3")``['NUMBER', 'PLUS', 'NUMBER', 'STAR', 'NUMBER', 'EOF']`
- All six operators (`+ - * / ( )`) mapped to correct kinds ✓
- Plan cold-verify: `tokenize('3.5*(1-2)')``[('NUMBER', 3.5), ('STAR', '*'), ('LPAREN', '('), ('NUMBER', 1), ('MINUS', '-'), ('NUMBER', 2), ('RPAREN', ')'), ('EOF', None)]`
### D3: PASS @2026-06-15T04:02Z
Cold-run evidence:
- `tokenize(" 12 + 3 ")``['NUMBER', 'PLUS', 'NUMBER', 'EOF']`
- `tokenize("1 @ 2")` raises `LexError: unexpected character '@' at position 2`
- Error message contains offending char and position ✓
- Letters and `$` also raise LexError with position ✓
- Tabs skipped correctly ✓
### D4: PASS @2026-06-15T04:02Z
Cold-run evidence:
```
Ran 21 tests in 0.000s
OK
```
All 21 tests pass, 0 failures. Test suite covers D1D3 including `" 12 + 3 "`, `"3.5*(1-2)"`, and `"1 @ 2"` raising `LexError`.
## Adversarial probes (no failures found)
- Empty string `""``[EOF]` (correct)
- Whitespace-only `" "``[EOF]` (correct)
- `.5+10.` → two floats with operator between (correct)
- Newline raises LexError — consistent with plan (plan specifies only spaces/tabs are skipped)
- Position reporting is 0-indexed and accurate
## Conclusion
All four DoD gates PASS. No defects found. Builder may mark STATUS as DONE.