github-actions[bot]
1074dff87d
chore: auto-merge develop → main
...
Triggered by: 3989d11 fix: step.replace is not a function when Gemini returns steps as objects
2026-05-23 11:57:33 +00:00
dadaloop82
3989d11094
fix: step.replace is not a function when Gemini returns steps as objects
...
- PHP generateRecipeStream: normalize recipe.steps to plain strings after
parsing Gemini JSON (handles [{text:'...'}, ...] objects gracefully)
- JS: add _stepStr(s) helper near cooking mode — safely extracts text from
a step regardless of type (string or object {text/description/step key})
and strips leading 'Passo N:' prefix in one place
- JS: replace all 7 manual step.replace(/^Passo.../) calls with _stepStr()
across renderRecipe, renderCookingStep, startCookingMode, replayCookingTTS,
toggleCookingTTS, navigateCookingStep — no more crash if Gemini schema drifts
2026-05-23 11:55:55 +00:00
github-actions[bot]
b010ced1a6
chore: auto-merge develop → main
...
Triggered by: cc0fa09 fix: recipe errors now show specific cause instead of generic 'connection error'
2026-05-23 11:47:00 +00:00
dadaloop82
cc0fa09219
fix: recipe errors now show specific cause instead of generic 'connection error'
...
- PHP generateRecipeStream: wrap entire body in try/catch(\Throwable) to catch
any PHP fatal/exception mid-stream and send it as a proper SSE error event
- PHP: curl timeout raised 60s→90s; capture curl errno/errmsg on failure
- PHP: HTTP error messages now include a human-readable status label
(e.g. 'Quota API esaurita (429)', 'Nessuna risposta da Gemini (cURL: ...)')
- JS catch block: show err.message alongside error.connection so the actual
JS network error (NetworkError, AbortError, etc.) is visible
- JS no-recipe+no-error path: show recipes.stream_interrupted instead of
generic error.connection
- Translation: added recipes.stream_interrupted in it/en/de
2026-05-23 11:45:26 +00:00
github-actions[bot]
c0a076749e
chore: auto-merge develop → main
...
Triggered by: 6a41b53 feat: shopping list pantry hints, barcode multi-API fallback (OPF/beauty/Gemini), README disclaimer
2026-05-23 09:54:56 +00:00
dadaloop82
6a41b53174
feat: shopping list pantry hints, barcode multi-API fallback (OPF/beauty/Gemini), README disclaimer
...
- Shopping list: each item now shows 'Hai già Xg in dispensa' for same-family inventory stock
- Lazy-loads inventory once per shopping page visit (_getShoppingInventoryCache)
- Matches by first significant token (same logic as related-stock on action page)
- Green hint below item badges, dark-mode aware (.shopping-pantry-hint)
- Barcode lookup: added Open Products Facts + Open Beauty Facts as step 3;
Gemini AI (_barcodeLookupGemini) as final step 4 fallback
- Added stockForName PHP endpoint (stock_for_name action) for future use
- Restored missing function signatures for _offFetchProduct() and saveProduct()
that were accidentally lost when stockForName was added in a previous session
- Translation: added shopping.pantry_hint in it/en/de
2026-05-23 09:53:17 +00:00
github-actions[bot]
1d04236bc0
chore: auto-merge develop → main
...
Triggered by: 561c6e9 ci: fix auto-merge — clear checkout extraheader so WORKFLOW_PAT actually reaches git push
2026-05-23 09:37:26 +00:00
dadaloop82
561c6e9809
ci: fix auto-merge — clear checkout extraheader so WORKFLOW_PAT actually reaches git push
2026-05-23 09:35:53 +00:00
dadaloop82
6857c20893
ci: fix checkout to use github.token, WORKFLOW_PAT only for push
2026-05-23 09:23:48 +00:00
dadaloop82
964de98203
ci: test auto-merge with WORKFLOW_PAT secret
2026-05-23 09:18:03 +00:00
dadaloop82
e28a6e4e39
ci: use WORKFLOW_PAT for auto-merge to allow pushing workflow file changes
2026-05-23 08:37:30 +00:00
dadaloop82
fd9e2471e0
fix: remove invalid 'workflows' permission from ci.yml
2026-05-23 08:30:57 +00:00
dadaloop82
3c8a9693b2
fix: isSuspiciousDefaultQty — use package_unit threshold for pz+g/ml products
2026-05-23 08:28:58 +00:00
dadaloop82
b38bdc45f5
fix: add workflows:write permission to auto-merge job
2026-05-23 08:27:04 +00:00
dadaloop82
83a0df272a
fix: CI auto-merge push auth — set remote URL with GITHUB_TOKEN before push
2026-05-23 08:21:26 +00:00
dadaloop82
6320b575e0
v1.7.25 — partial throw from banner, barcode fallback, related stock, Bring! re-add fix
...
- Fix: Bring! items re-appearing after manual removal (missing _markBringPurchased call in removeBringItem / confirmShoppingItemFound; autoAddCriticalItems now respects blocklist for qty=0 items)
- Fix: barcode false 'not found' — new _offFetchProduct() helper tries UPC-A↔EAN-13 candidates × 2 locales with auto-retry; UPCItemDB fallback also iterates candidates
- Fix: bannerThrowAway() now opens partial-throw modal (location + qty input + throw-all button) instead of immediately discarding everything
- Add: related stock card on action page — shows same-family inventory items when scanning a branded product
2026-05-23 08:17:20 +00:00
github-actions[bot]
8ccd218c5a
chore: auto-merge develop → main
...
Triggered by: 5c1afaa feat: redesign action-page hero card (match use-page style)
2026-05-22 21:25:12 +00:00
dadaloop82
5c1afaaaf5
feat: redesign action-page hero card (match use-page style)
2026-05-22 21:23:18 +00:00
github-actions[bot]
6245b15420
chore: auto-merge develop → main
...
Triggered by: 02f673a fix: include dark_mode in save_settings payload (was never written to .env)
2026-05-22 21:15:51 +00:00
dadaloop82
02f673a164
fix: include dark_mode in save_settings payload (was never written to .env)
2026-05-22 21:14:16 +00:00
github-actions[bot]
61bb1b5552
chore: auto-merge develop → main
...
Triggered by: cbf4bd5 feat: show expiry + qty pills on use-page product hero card; redesign card with accent border
2026-05-22 21:11:53 +00:00
dadaloop82
cbf4bd54da
feat: show expiry + qty pills on use-page product hero card; redesign card with accent border
2026-05-22 21:10:19 +00:00
github-actions[bot]
1cdbdb3b25
chore: auto-merge develop → main
...
Triggered by: 837d62c fix: add missing _ensureAudioUnlocked() definition; use shared AudioContext in _playCookingTimerSound
2026-05-22 13:15:59 +00:00
dadaloop82
837d62c335
fix: add missing _ensureAudioUnlocked() definition; use shared AudioContext in _playCookingTimerSound
2026-05-22 13:14:21 +00:00
github-actions[bot]
fa36ba83bf
chore: auto-merge develop → main
...
Triggered by: 1efeaf9 fix: skip use-all confirm when only one item row and no open packages
2026-05-22 04:51:02 +00:00
dadaloop82
1efeaf9236
fix: skip use-all confirm when only one item row and no open packages
2026-05-22 04:49:27 +00:00
dadaloop82
573bcd1102
Merge branch 'main' of github-evershelf:dadaloop82/EverShelf
2026-05-21 18:45:46 +00:00
dadaloop82
426cc9df7e
release: merge develop → main for v1.7.24
v1.7.24
2026-05-21 18:45:35 +00:00
dadaloop82
6f2d6d9944
release: v1.7.24 — changelog, readme badge, manifest version
2026-05-21 18:45:17 +00:00
github-actions[bot]
d3eb82eee2
chore: auto-merge develop → main
...
Triggered by: 98426bf fix: dark_mode persisted in server .env (not localStorage) — add to saveSettings, getServerSettings, applySyncedSettings
2026-05-21 18:42:49 +00:00
dadaloop82
98426bf861
fix: dark_mode persisted in server .env (not localStorage) — add to saveSettings, getServerSettings, applySyncedSettings
2026-05-21 18:41:12 +00:00
github-actions[bot]
264b1f648e
chore: auto-merge develop → main
...
Triggered by: b89df96 fix: dark mode resets to auto on reload — bootstrap dark_mode from localStorage in getSettings()
2026-05-21 18:35:19 +00:00
dadaloop82
b89df961a6
fix: dark mode resets to auto on reload — bootstrap dark_mode from localStorage in getSettings()
2026-05-21 18:33:33 +00:00
github-actions[bot]
5e34bc90b3
chore: auto-merge develop → main
...
Triggered by: 3b100df fix: cooking timer sound/TTS — shared pre-unlocked AudioContext; always speak on alarm regardless of TTS toggle; kiosk bridge TTS check
2026-05-21 18:20:24 +00:00
dadaloop82
3b100df26c
fix: cooking timer sound/TTS — shared pre-unlocked AudioContext; always speak on alarm regardless of TTS toggle; kiosk bridge TTS check
2026-05-21 18:18:45 +00:00
github-actions[bot]
2ecb3cbac6
chore: auto-merge develop → main
...
Triggered by: c2004fd fix: scale use — auto-switch conf→sub (g/ml) when scale is active; show scale btn for conf+weight products
2026-05-21 06:02:55 +00:00
dadaloop82
c2004fd0f8
fix: scale use — auto-switch conf→sub (g/ml) when scale is active; show scale btn for conf+weight products
2026-05-21 06:01:04 +00:00
github-actions[bot]
fba0947945
chore: auto-merge develop → main
...
Triggered by: 3a1f6cf fix: cooking timer — AudioContext.resume() on mobile; always play beep; show done card 3s before dismiss
2026-05-20 18:32:10 +00:00
dadaloop82
3a1f6cfd1e
fix: cooking timer — AudioContext.resume() on mobile; always play beep; show done card 3s before dismiss
2026-05-20 18:30:25 +00:00
github-actions[bot]
37fb522e8b
chore: auto-merge develop → main
...
Triggered by: 66f5a03 fix: wrap updateInventory DB writes in a transaction to prevent concurrent lock errors (#109 #110 )
2026-05-20 15:40:15 +00:00
dadaloop82
66f5a03503
fix: wrap updateInventory DB writes in a transaction to prevent concurrent lock errors ( #109 #110 )
2026-05-20 15:38:34 +00:00
dadaloop82
a37d97dfcd
fix: kiosk — permanently hide native settings btn; add web ⚙️ in overlay; remove scattered show/hide calls
2026-05-20 15:37:57 +00:00
github-actions[bot]
47197d0d66
chore: auto-merge develop → main
...
Triggered by: 1496216 fix: depleted items urgency based on usesPerMonth only (not recency)
2026-05-20 13:47:41 +00:00
dadaloop82
149621651d
fix: depleted items urgency based on usesPerMonth only (not recency)
2026-05-20 13:46:00 +00:00
github-actions[bot]
b5a6daa557
chore: auto-merge develop → main
...
Triggered by: ccc2f89 fix: depleted items urgency — use buyCount/useCount from internal history to assign medium/low
2026-05-20 13:42:45 +00:00
dadaloop82
ccc2f8907d
fix: depleted items urgency — use buyCount/useCount from internal history to assign medium/low
2026-05-20 13:41:04 +00:00
github-actions[bot]
9e80915a61
chore: auto-merge develop → main
...
Triggered by: 7b60f1d fix: 0.5 conf use page (default conf mode + fraction btns); depleted items always in shopping; conf decimals in history log
2026-05-20 13:37:35 +00:00
dadaloop82
7b60f1dbe3
fix: 0.5 conf use page (default conf mode + fraction btns); depleted items always in shopping; conf decimals in history log
2026-05-20 13:35:27 +00:00
github-actions[bot]
7019160704
chore: auto-merge develop → main
...
Triggered by: ac8b5ac fix: restore Bring! health check; token warning only when truly invalid
2026-05-19 17:27:50 +00:00
dadaloop82
ac8b5acc0c
fix: restore Bring! health check; token warning only when truly invalid
...
- Restore the if($bringEnabled) block that was accidentally removed in fa0442e
- Check is skipped entirely when SHOPPING_MODE != bring or credentials not set
- Missing token file = first launch, auto-created on next shopping open → ok:true
- Warning shown only if token file exists but access_token field is missing (corrupt)
- Expired tokens are OK (refreshed automatically)
Fixes spurious 'Token Bring!' warning on installs without Bring! configured
2026-05-19 17:26:06 +00:00