6a9d28ecd6
When a formula Ref resolves to an item that doesn't exist in any category, find_item_category returned None and the fallback unwrap_or(name) used the item name as a category name. The resulting key still matched the formula target, causing infinite recursion and a stack overflow. Now returns None immediately via ? so the expression evaluates to Empty. Adds unit tests for Model (structure, cell I/O, views), formula evaluation (arithmetic, WHERE, aggregation, IF), and a full five-category Region×Product×Channel×Time×Measure integration test. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>