Recent improvements and fixes in UrCartBuddy.
Harden reliability and recovery
13 Jul 2026
Add privacy-conscious adoption analytics
13 Jul 2026
Prompt installation after demonstrated value
13 Jul 2026
Make list invitations reliable
13 Jul 2026
Consistent trial-based commercial messaging; retire alpha data-loss warning
13 Jul 2026
Lightweight first-run onboarding, retire five-step card + wizard
13 Jul 2026
Stop Profile page hanging forever on the loading skeleton
12 Jul 2026
Make /register social sign-in reach the IdP instead of hanging (#4)
12 Jul 2026
Harden offline queue sync
28 Jun 2026
Add offline shopping queue
28 Jun 2026
Improve item suggestions
27 Jun 2026
Suggest archived items while adding
27 Jun 2026
Re-check subscription status on page-resume so mobile timer freezes can't strand the "Finalising" card
26 Jun 2026
Wait for webhook activation on checkout return instead of showing stale Expired card
26 Jun 2026
Self-heal stale Stripe customer ids so checkout can't 500 forever
26 Jun 2026
Prevent 500 when changing the default list
26 Jun 2026
Persist voice-discovery and archive-attachments-warning tip dismissals
25 Jun 2026
Guard against transcription hallucinations adding phantom items
24 Jun 2026
Allow same-origin microphone in nginx Permissions-Policy
20 Jun 2026
Improve no-list message with register link
16 Jun 2026
Prevent 'list doesn't exist' errors for removed members
16 Jun 2026
Clear stale oidc.* state before direct-to-IdP sign-in
14 Jun 2026
Null-guard AI-parse Text + tidy nullable Vertex DI registrations
14 Jun 2026
Full-codebase review remediation across 6 modules + local QR
13 Jun 2026
Self-heal zombie import pendings; web save/cancel resolves chat pending
12 Jun 2026
Truthful writes, ambiguity protocol, cross-list search, purchase history, subset rendering
12 Jun 2026
Show_items tag filter was ignored — renderer re-fetched all items
12 Jun 2026
Harden bot, billing, and attachment lifecycle after full code review
11 Jun 2026
Use global Vertex endpoint
11 Jun 2026
Skip pre-filter for image messages; improve 429 error message
11 Jun 2026
Job scheduler framework with Postgres store + Stripe reconciliation
11 Jun 2026
Data-integrity and security hardening pass
11 Jun 2026
Add [AllowAnonymous] to public pages so new users see the landing page
8 Jun 2026
Enter key now commits new-list and rename inputs
7 Jun 2026
Enable Add Tag button as you type, not on blur
7 Jun 2026
Item-edit reactivity, AI-import binding, and parse robustness
7 Jun 2026
Smooth new-user experience friction points
7 Jun 2026
Show feature-discovery checklist as an activation card
7 Jun 2026
Add logging to billing controller, webhook dispatch, and Stripe provider
6 Jun 2026
Surface checkout errors instead of silent failure
6 Jun 2026
Always show trial/billing date in status card
6 Jun 2026
Implement Stripe subscription billing system
6 Jun 2026
Make member badges footer clickable to open Share & Connect dialog
5 Jun 2026
Restore whole-row drag and add drag visual feedback
4 Jun 2026
Add created-date to item details panel; add Web unit test project
3 Jun 2026
Checked items stay in place instead of sinking to the bottom
3 Jun 2026
Clear conversation history and reminders after fallback
3 Jun 2026
Replace HTML5 drag with SortableJS for touch/mobile support
1 Jun 2026
Typed item lists skip the import-review round-trip
27 May 2026
Swallow LLM fallback text, preserve review URLs
26 May 2026
Add Support nav dropdown and /whats-new changelog page
25 May 2026
Register WebChannelAdapter as scoped not singleton
25 May 2026
Handle missing message field in Vertex response; surface agent reply on web
25 May 2026
Suppress spend warning text on web channel; fix max-steps message; bump MaxIterations to 10
25 May 2026
Enforce per-user monthly AI spend cap with warnings
25 May 2026
Require concrete dish before recipe search, block site-scoped fishing
25 May 2026
Calendar-month cost stats + daily AI cost chart
24 May 2026
Auto-attach inbound WhatsApp/Telegram photos to created items
24 May 2026
Harden system prompt against prompt injection + enforce 3+ item routing
23 May 2026
Send fallback when LLM call times out instead of silence
23 May 2026
Terminate the runner loop on the first terminal tool
23 May 2026
AI-generated attachment titles + user rename
23 May 2026
Let users add a second copy of an item via "another X"
23 May 2026
Remove unimplemented duplicate-attachment dialog from ListDetail
23 May 2026
Item file attachments via Cloudflare R2
23 May 2026
Show accurate mic error messages instead of always blaming permissions
23 May 2026
Strip google/ prefix from Vertex voice transcription model id
22 May 2026
Expose publisher-prefixed Vertex model ids in known list
22 May 2026
Add Vertex as text + voice provider (single-vendor Gemini)
22 May 2026
Route OpenAI image provider to OpenAIClient, not GoogleClient
22 May 2026
Route image imports through Vertex AI (Gemini) for vision
22 May 2026
Switch default AI provider from Google to OpenAI
22 May 2026
Remove "Added by" text from items; attribution via opt-in badge only
22 May 2026
Collapse list header buttons behind kebab menu on mobile
22 May 2026
Per-list item field configuration with Description and Added-by display
22 May 2026
Dedupe items on stored display name, not raw input name
21 May 2026
Attribute skipped duplicates with adder and relative time
20 May 2026
Undo for item delete and archive with 5s grace snackbar
20 May 2026
Skip intra-batch duplicates in AddItemsAsync
20 May 2026
Stop agent claiming items are already on list when it just added them
20 May 2026
Prompt user before entering onboarding wizard
19 May 2026
Resolve circular FK cycle causing DELETE /api/users/me to always 500
19 May 2026
Use real newlines in starter-items textarea placeholder
19 May 2026
Detect stale PWA and offer nuclear update
19 May 2026
Add onboarding wizard and phone verification flow
17 May 2026
Merge share-by-phone placeholders into Google accounts on inbound verify
17 May 2026
Notify item creators when collaborators archive their items
17 May 2026
Add anchored install help tip under navbar cart logo
17 May 2026
Remove dark body background that bled through page content
17 May 2026
PWA install prompt with platform-aware UX
17 May 2026
Alexa connect OAuth flow broken by bearer token not sent on forceLoad
16 May 2026
Regenerate AddAlexaSync migration with proper snapshot
16 May 2026
Correct redirect path to /lists/{slug} after import save
7 May 2026
Redirect to list after import save when authenticated; fix version footer
7 May 2026
Tighten import session dedup matching
6 May 2026
Compute dedup cutoff before LINQ query so EF Core can translate it
6 May 2026
Dedup import sessions created within 2 min for same user+list
6 May 2026
Return import review URL to frontend when AI parse creates a session
6 May 2026
Allow linked WhatsApp users to create import lists
2 May 2026
Support Gemini agent prompting
2 May 2026
Agent imports register chat-level pending op
30 Apr 2026
Retry 503s from Google with exponential backoff
30 Apr 2026
Round-trip Gemini's thought_signature on tool calls
30 Apr 2026
Correct Gemini model IDs in KnownModels
30 Apr 2026
Google (Gemini) AI provider behind Ai:Provider switch
30 Apr 2026
Revert AgentAction TTL to 15 min; self-heal historical rows
29 Apr 2026
Cross-list disambiguation for delete-by-name
29 Apr 2026
Event-bounded chat pending context with stale guard
29 Apr 2026
Route cancel to agent pending store when one exists
29 Apr 2026
Serialize tool results with camelCase property names
28 Apr 2026
Tolerate non-integer quantities from LLM tool calls
28 Apr 2026
Retry Groq 429s with bounded backoff
28 Apr 2026
Tolerant bool args + deterministic reply on tool exceptions
28 Apr 2026
Wire controllers to AgentService (Phase 2c)
27 Apr 2026
Handle bare pending import list creation
26 Apr 2026
Retarget pending imports to new lists
26 Apr 2026
Improve profile mobile tap targets
26 Apr 2026
Clarify list sharing options
26 Apr 2026
Keep pending imports open for tag changes
26 Apr 2026
Keep WhatsApp context for pronoun tag follow-ups
26 Apr 2026
Persist WhatsApp item context for follow-ups
25 Apr 2026
Resolve pronoun deletes to recent items
25 Apr 2026
Require explicit list deletion requests
25 Apr 2026
Gate WhatsApp recipe tool usage
25 Apr 2026
Make WhatsApp import confirmations durable
25 Apr 2026
Refine import review confirmation flow
25 Apr 2026
Tolerate recipe quantity parsing
25 Apr 2026
Sync import session migration snapshot
25 Apr 2026
Add WhatsApp import review sessions
25 Apr 2026
Polish recipe import tags and replies
25 Apr 2026
Add missing magic sort column migration
25 Apr 2026
Add persistent Magic Sort toggle
24 Apr 2026
Keep recipe confirmations off tool calls
24 Apr 2026
Add recipe ingredient import flow
24 Apr 2026
Keep WhatsApp add confirmations scoped to new items
24 Apr 2026
Make WhatsApp confirmations and list replies deterministic
24 Apr 2026
Parse image+tag-caption as AddItems+applyTag not TagItems
24 Apr 2026
Add service-level logging and read-logs skill
24 Apr 2026
Persist pending intent so confirmation reliably re-executes
24 Apr 2026
Handle tag-as-confirmation for pending image imports
24 Apr 2026
Replace removed LoginParameters with NavigateToLogin for IdP hint
24 Apr 2026
Add social-first /register page with direct IdP routing
19 Apr 2026
Enable Facebook sign-in button (Meta App Review approved)
18 Apr 2026
Add interaction audit log for debugging
18 Apr 2026
Hide Facebook login button pending App Review; rewrite Privacy Policy for UK GDPR
18 Apr 2026
Switch Facebook IdP to new Consumer-type app (UrCartBuddy Login)
17 Apr 2026
Write FB env vars before ENDSSH block so credentials aren't empty on first deploy
17 Apr 2026
Upsert Facebook IdP via Keycloak Admin API on deploy
17 Apr 2026
Add Facebook SSO via Keycloak identity provider
17 Apr 2026
Refresh list data on page visibility restore
17 Apr 2026
Add restricted admin stats page
16 Apr 2026
Rename login.css → login-v2.css to bust browser 30-day cache
16 Apr 2026
Constrain login card width to 440px
16 Apr 2026
Set loginTheme via admin API in deploy script
16 Apr 2026
Keycloak theme + direct register flow
16 Apr 2026
Soften alpha warning wording to 'data may be lost'
16 Apr 2026
Prominent alpha warning on landing page hero
16 Apr 2026
Registration, alpha banner, and auth.urcartbuddy.com HTTPS fix
16 Apr 2026
Slug self-collision on rename + hide rename UI for viewers
15 Apr 2026
Inline list rename with real-time SignalR broadcast
15 Apr 2026
Email service, contact page, and nav account dropdown
14 Apr 2026
Navigate to list URL on notification tap to force refresh
13 Apr 2026
Archive particle explosion + scroll-preserving add focus
11 Apr 2026
Prevent keyboard flicker on item add
11 Apr 2026
Remove jarring scroll save/restore on item add
11 Apr 2026
Show short hash as 'version e8727f4' in footer
11 Apr 2026