So the way I parse things I assume if the user invalidly specifies a namespace or only specifies a namespace, it's an error. So the correct input would be ns:foo/. (i.e. a period at the end, indicating the "root" dir).

Hmmm. This should work. Skimming code in flux-kvs it seems the ls command strips off trailing periods, leading to ns:foo/ being the input to the server side. The client side parsing of input keys wasn't something I thought of. Hmmm. May have to tweak the ls side.

This comment has been minimized.

Hmmm. What I do on the server side is detect if an namespace-prefix is present, then normalize the "key-suffix". But I consider it an error if there is no suffix, like if the key is ```ns:foo/```` (no period).

In internal walk_level_t in the lookup API, add the root reference
and the root_dirent of the walk level to each walk_level_t.
As a consequence, the "root_dirent" in the lookup_t is no
longer needed.
This refactor allows each walk level to eventually have its own
independent root reference, which could be different depending
on the namespace.

Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.