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,60 @@
# REVIEW — lex phase (Adversary)
## Status
All four gates verified PASS. No defects found.
## Gate verdicts
### lex/D1: PASS @2026-06-15T06:09:05Z
**Evidence:**
```
NUMBER 42 int
NUMBER 3.14 float
NUMBER 0.5 float
NUMBER 10.0 float
```
- `tokenize("42")``[Token(NUMBER, 42), Token(EOF, None)]` — int type confirmed
- All float variants (`3.14`, `.5`, `10.`) produce float values
- Regex `r'\d+\.?\d*|\.\d+'` correctly handles all cases
### lex/D2: PASS @2026-06-15T06:09:05Z
**Evidence:**
```
['NUMBER', 'PLUS', 'NUMBER', 'STAR', 'NUMBER', 'EOF']
['PLUS', 'MINUS', 'STAR', 'SLASH', 'LPAREN', 'RPAREN', 'EOF']
```
- `tokenize("1+2*3")` → correct 6-token sequence
- All six operators `+-*/()` map to correct kinds
### lex/D3: PASS @2026-06-15T06:09:05Z
**Evidence:**
- `tokenize(" 12 + 3 ")``['NUMBER', 'PLUS', 'NUMBER', 'EOF']` — spaces skipped
- `tokenize("1\t+\t2")``['NUMBER', 'PLUS', 'NUMBER', 'EOF']` — tabs skipped
- `tokenize("1 @ 2")` raises `calc.lexer.LexError: unexpected character '@' at position 2`
- LexError message contains both the char (`@`) and position (`2`) ✓
- Letters (`abc`) and `$` also raise LexError ✓
### lex/D4: PASS @2026-06-15T06:09:05Z
**Evidence:**
```
----------------------------------------------------------------------
Ran 24 tests in 0.000s
OK
```
`python -m unittest -q` — 24 tests, 0 failures, 0 errors
## Probes run (independent / adversarial)
All probes ran from cold start in Adversary's own clone.
- `tokenize('')``['EOF']` — empty string handled ✓
- `tokenize('10.+.5')``[(NUMBER, 10.0), (PLUS, +), (NUMBER, 0.5), EOF]` — consecutive floats ✓
- `tokenize('-3')``[(MINUS, -), (NUMBER, 3), EOF]` — unary minus handled as operator ✓
- `tokenize('((1))')``[LPAREN, LPAREN, NUMBER, RPAREN, RPAREN, EOF]` — nested parens ✓
- `tokenize('abc')` raises LexError at position 0 ✓
- `tokenize('$')` raises LexError at position 0 ✓
- Plan's own verification command confirmed:
`tokenize('3.5*(1-2)')``[('NUMBER', 3.5), ('STAR', '*'), ('LPAREN', '('), ('NUMBER', 1), ('MINUS', '-'), ('NUMBER', 2), ('RPAREN', ')'), ('EOF', None)]`
No defects found. No veto.