feat(remoteapi): auto-create databases on first push to own namespace Push-to-create: an authenticated, non-suspended caller pushing (or cloning) an unknown repo under their OWN namespace has it transparently created — a PRIVATE repository row plus a genuinely empty on-disk NBS store — then proceeds through the normal ACL check as the owner. Any other case (anonymous, suspended, another user's namespace, invalid name) still returns NotFound, so a stranger's namespace is never leaked and nothing is created. storage.InitEmptyStore creates the store WITHOUT WriteEmptyRepo: an "Initialize data repository" commit would make the client's first push a non-fast-forward and be rejected. An empty store (root = empty hash) lets the initial push land as the repo's first history. The interceptor auto-create is race-safe (ErrNameTaken re-fetch) and rolls the row back if the store cannot be created. Proven end-to-end (integration): a real `dolt push` to a new name auto-creates PRIVATE + fast-forwards + re-clones; a foreign-namespace push is denied with no row created. All prior clone/push/ACL scenarios still pass.
storage: bare store init/delete and remotesrv DBCache InitStore writes a bare NBS store (LoadDoltDB Format_DOLT + WriteEmptyRepo) with partial-failure cleanup; DeleteStore guards against paths escaping the configured repos root; RepoDiskPath lays out <root>/~<owner>/<name>. Cache implements remotesrv.DBCache over an injected RepoLookup (no db import, no push-to-create): Get resolves via core.ParseRepoPath, memoizes one nbs.NewLocalStore per disk path, never creates directories; Evict/Close for delete and shutdown. Package doc records the LocalFilesysWithWorkingDir sealed-URL requirement proven by the Phase-0 spike. Unit tests cover store validity (reopen, main branch, initial commit), partial-failure cleanup, root-escape guard, and cache hit/miss/memoize/evict. Spike test untouched and still green.