update task status

This commit is contained in:
Emil Lerch 2026-07-28 07:47:58 -07:00
parent df69b070ef
commit e12c239a5b
Signed by: lobo
GPG key ID: A7B62D657EF764F8

View file

@ -89,15 +89,16 @@ function arg commas).
## Phase 2: Struct Layout & Financial Engines
### Task 2.0: Exact numeric model (Rational + Number union) [NOT STARTED]
### Task 2.0: Exact numeric model (Rational + Number union) [DONE]
Design: see design.md 2.7. Requirements: NFR-9.
Motivation (all reproducible today): `0.1 + 0.2` = `0.30000000000000004`,
`9007199254740993` silently becomes `9.007199254740992e15`, `2^53 + 1` collapses,
`12 in in ft` = `0.9999999999999998`, `factorial(171)` reports "unknown function".
Motivation (all of these were reproducible before this task, and are fixed now):
`0.1 + 0.2` = `0.30000000000000004`, `9007199254740993` silently became
`9.007199254740992e15`, `2^53 + 1` collapsed, `12 in in ft` =
`0.9999999999999998`, `factorial(171)` reported "unknown function".
Sequenced as four reviewable commits so structural churn never mixes with
behavioral change (rationale in design.md 2.7.9):
behavioral change (rationale in design.md 2.7.9), plus 2.0e for the unit factors:
#### 2.0a: Add the types, wired to nothing [DONE]
- `engine/src/rational.zig`: `Rational` over `std.math.big.int.Managed`, always
@ -478,15 +479,15 @@ Remaining subcommands deferred until their engine modules exist.
- Verify: `0o777 - 0x0f` shows 496 plus hex/oct/bin; `3.14` decimal only;
`2 + 2` decimal only; `0xFF / 2` = 127.5 decimal only
### Task 5.3: Implement programmer mode TUI view - expression & base display [PARTIAL]
### Task 5.3: Implement programmer mode TUI view - expression & base display [DONE]
- Programmer mode accessible via Tab key
- Multi-base result display (dec signed, unsigned, hex, oct, bin)
- Multi-base result display (dec signed, unsigned, hex, oct, bin, ASCII)
- Bit grid with navigation (arrows) and toggling (Space)
- Width toggle (Ctrl-W cycles 8->16->32->64)
- Ctrl-B toggles focus between input and bit grid
- Width toggle (Ctrl-W cycles 8->16->32->64->128)
- Backtick toggles focus between input and value zone (replaced the original
Ctrl-B plan)
- Expression evaluation through programmer engine
- DONE: basic passive display + expression input + bit grid toggling
- NOT DONE: editable fields (see Task 5.3.1)
- Editable fields delivered by Task 5.3.1
### Task 5.3.1: Programmer mode editable fields rework [DONE]
- Replaced `bit_grid_active: bool` with `prog_field: ProgField` enum tracking focused field