@sseraphini@jantimon Sorry for the delay seeing this. Thanks for the feedback. If you haven't already would you mind opening an issue with details on exactly what's being type safety in your app? This will help us understand how to fill that gap.
@kmsaldana1 @sachee I am intentionally not saying normalized cache/store because I want to separate the mechanics of how the error is provided from my question - which is what the desired experience is.
That said, it can be implemented either at store-time, or at read-time.
In Relay - we're working on explicit errors and error handling - and would love your feedback!
When you get a field error - do you expect to break data-consistency to show, for instance, previous valid value?
If so, how do you expect to control that behavior?
@kmsaldana1 @sachee Thanks! I'll update here when it's fully ready to be used.
Yeah, so to clarify - I'm not talking about component tree propagation. Rather, each component that's querying this field - should that component see the updated error whether they're the primary querying comp.
@kmsaldana1 @sachee So that essentially gives you OOTB behavior like what you currently hand-roll. I think the question is - do we want that union value to propagate to secondary places where the same field is used.
@kmsaldana1 @sachee Yeah, this makes sense. so my @.catch directive in Relay (in development) - would allow you to do that - essentially a response type would be a union of {ok: false, errors: [] } or {ok: true, value: {...}} - and the default is to throw.
https://t.co/SBVT9FElcf
@tobiastengler@StatisticsFTW This is interesting. I think when we talk about consistency sometimes we conflate store consistency with presented value consist. For @tobiastengler, store consistency is retained while value scopes to owner, for @StatisticsFTW store is consistent but that carries to the value.