Issue Description
I am currently testing the FileNode implementation and encountered a minor issue when trying to fetch the list of files and folders at the root level (i.e., those without a parentId).
According to the specification section FileNode/query (draft-ietf-jmap-filenode-03), I passed hasParentId: false in the filter. I expected the returned files/folders to have parentId: null. However, the response still contains records where parentId is not null.
Am I missing something or misconfiguring the query?
Expected Behavior
Only root-level FileNodes (where parentId is null) should be returned.
Actual Behavior
The result includes records with a valid, non-null parentId.
Reproduction Steps
Call FileNode/query with the filter {“hasParentId”: false}.
Observe the returned records in the response.
Relevant Log Output
{
“using”: [
“urn:ietf:params:jmap:core”,
“urn:ietf:params:jmap:filenode”
],
“methodCalls”: [
[
“FileNode/query”,
{
“accountId”: “b”,
“filter”: {
“hasParentId”: false
}
},
“fnq0”
],
[
“FileNode/get”,
{
“accountId”: “b”,
“#ids”: {
“resultOf”: “fnq0”,
“name”: “FileNode/query”,
“path”: “/ids”
},
“properties”: [
“id”,
“parentId”,
“name”,
“type”,
“blobId”,
“size”,
“created”,
“updated”,
“myRights”,
“shareWith”
]
},
“fng0”
]
]
}
Stalwart Version
v0.16.x
Installation Method
Binary (Linux)
Database Backend
RocksDB
Blob Storage
S3-compatible
Search Engine
Internal
Directory Backend
Internal
I have reviewed the documentation and FAQ and confirm that my issue is NOT addressed there.
on
I have searched this support forum (open and closed topics) and confirm this is not a duplicate.
on
I understand that topics in this category are triaged by a bot first but a human reply will follow up. If I’d prefer a human-only reply, I’ll add the no-ai tag to my topic.
on