Skip to content

Errori non più ingoiati su salvataggi, letture e notifiche; conflitti filtrati nello store (#17, #5) - #71

Merged
claude-mecena merged 2 commits into
mainfrom
claude/friendly-faraday-hhahx4
Oct 7, 2026
Merged

claude-mecena merged 2 commits into
mainfrom
claude/friendly-faraday-hhahx4

Conversation

@claude-mecena

Copy link
Copy Markdown
Contributor

Cosa cambia

  • [P1][Tech-debt] Errori ingoiati in silenzio: 52 try?, 18 assertionFailure, nessun logging #17 — ModelContext.saveOrLog() / fetchOrLog(_:) (Support/ModelContext+Logging.swift): sostituiscono i try? save() e (try? fetch(...)) ?? [] rimasti (calendario, produzione, contatti, automazioni, ricorrenze, dettaglio persona, digest). L'errore finisce nel log store (Console.app) invece di sparire.
  • NotificationService: center.add passa da schedule(_:), che registra le richieste rifiutate (non quelle negate dall'utente, per non scrivere una riga per attività). resyncAll esce se la lettura fallisce, così non cancella tutti gli avvisi programmati.
  • Menu contestuale: "Duplica" e "Salva come modello" segnalano il fallimento con reportFailure.
  • [P0][Perf] Le viste caricano TUTTE le attività e le filtrano in memoria a ogni ridisegno #5 ConflictService: assegnazioni del giorno di ripresa e attività in conflitto filtrate nello store (id + giorno) invece di caricare tutte le attività a ogni controllo.

Test

  • Nuovo conflictsFilterSameDayAssignmentsInStore: stesso giorno sì; giorno dopo, senza data, cancellate e la ripresa stessa no.
  • Build e test: CI (non eseguibili in questo ambiente Linux).

🤖 Generated with Claude Code

https://claude.ai/code/session_01KJeAiFuQYJ2TxAu79ckWjT


Generated by Claude Code

claude added 2 commits October 7, 2026 03:05
… filtrati nello store (#17, #5)

- ModelContext.saveOrLog / fetchOrLog: al posto di `try?` registrano
  l'errore nel log `store` e ritornano un valore neutro.
- NotificationService: le richieste rifiutate dal sistema finiscono nel log
  (non quelle negate dall'utente); il riallineamento esce se la lettura fallisce.
- Menu contestuale: Duplica e Salva come modello segnalano il fallimento.
- ConflictService: assegnazioni e attività del giorno filtrate nello store
  invece di caricare tutte le attività. Test di regressione.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KJeAiFuQYJ2TxAu79ckWjT
@claude-mecena
claude-mecena marked this pull request as ready for review October 7, 2026 03:12
@claude-mecena
claude-mecena merged commit c043eec into main Oct 7, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants