Fix item ID mismatch dropping 200+ items at confirmation

- showItemsStep rendered per-category index as data-item-id
- confirmItems filtered by global index, causing massive mismatch
- Now assigns unique 'item_N' IDs to all items before rendering
- Also preserves menuName in category confirmation

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
John Mizerek 2026-03-14 19:39:31 -07:00
parent dc3cdf98a0
commit baf0d5dfc9

View file

@ -3093,14 +3093,10 @@
const items = config.extractedData.items || []; const items = config.extractedData.items || [];
const categories = config.extractedData.categories || []; const categories = config.extractedData.categories || [];
// DEBUG // Assign unique IDs to all items (fixes per-category index mismatch in confirmItems)
console.log('=== showItemsStep DEBUG ==='); items.forEach((item, idx) => {
console.log('items.length:', items.length); item.id = 'item_' + idx;
console.log('categories.length:', categories.length); });
console.log('categories:', categories);
console.log('First 3 items:', items.slice(0, 3));
console.log('Item IDs sample:', items.slice(0, 5).map(i => i.id));
console.log('Item categories sample:', items.slice(0, 5).map(i => i.category));
if (items.length === 0) { if (items.length === 0) {
addMessage('ai', ` addMessage('ai', `