Description
= Why
This request should be handled:
```
{
"using": [ "urn:ietf:params:jmap:core", "urn:ietf:params:jmap:mail", "urn:apache:james:params:jmap:mail:shares" ],
"methodCalls": [
[
"Mailbox/set",
{
"accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
"create": {
"C42":
}
},
"c1"
], [
"Email/query",
{
"accountId": "29883977c13473ae7cb7678ef767cbfbaffc8a44a6e463d971d23a65c1dc4af6",
"filter" :
},
"c1"]
}
```
Note that "inMailboxOtherThan" is holding a reference to a previous filter.
Today we do not handle such requests.
== Definition of done
Demonstrate with a memory unit test that this request is supported.
== How
Explicit handling of clientIds in methods is a dead end and result in extremely complicated code.
We should handle the substitution upon backreference resolution.
== Side effect
It will enable code simplification (we would no longer need to handle explicitly clientId in methods as it will be done).
It will enable clientId support for all further entities with minimal efforts.