p9: rename PluginStore to ExecStore
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
fe5363702f
commit
439ee6af1e
|
|
@ -91,7 +91,7 @@ Each 9P directory endpoint is backed by a named store implementing one of the st
|
||||||
| `/sk` | `SkillStore` | `Store` |
|
| `/sk` | `SkillStore` | `Store` |
|
||||||
| `/t` | `ToolStore` | `Store` |
|
| `/t` | `ToolStore` | `Store` |
|
||||||
| `/u` | `UtilStore` | `Store` |
|
| `/u` | `UtilStore` | `Store` |
|
||||||
| `/x` | `PluginStore` | `Store` |
|
| `/x` | `ExecStore` | `Store` |
|
||||||
| `/s` | `SessionStore` | `Store` |
|
| `/s` | `SessionStore` | `Store` |
|
||||||
|
|
||||||
To swap a backing store (e.g. replace `/pl` with a vector database or `/m` with an object store), implement the appropriate interface and wire it in `New()`. The store interface requires only `Stat`, `List`, `Get`, `Put`, `Delete`, `Create`, and `Rename` — authentication, connection management, and credential rotation are internal concerns of the implementation.
|
To swap a backing store (e.g. replace `/pl` with a vector database or `/m` with an object store), implement the appropriate interface and wire it in `New()`. The store interface requires only `Stat`, `List`, `Get`, `Put`, `Delete`, `Create`, and `Rename` — authentication, connection management, and credential rotation are internal concerns of the implementation.
|
||||||
|
|
|
||||||
|
|
@ -6,25 +6,25 @@ import (
|
||||||
"ollie/pkg/tools/execute"
|
"ollie/pkg/tools/execute"
|
||||||
)
|
)
|
||||||
|
|
||||||
// PluginStore is a read-only FlatDirStore backed by the scripts/x/ directory.
|
// ExecStore is a read-only FlatDirStore backed by the scripts/x/ directory.
|
||||||
// Plugins are executables invoked by the server (e.g. elevation backends), not
|
// Plugins are executables invoked by the server (e.g. elevation backends), not
|
||||||
// by the agent or user directly.
|
// by the agent or user directly.
|
||||||
type PluginStore struct {
|
type ExecStore struct {
|
||||||
*FlatDirStore
|
*FlatDirStore
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewPluginStore() *PluginStore {
|
func NewExecStore() *ExecStore {
|
||||||
return &PluginStore{FlatDirStore: NewFlatDirStore(execute.PluginsPath(), 0555)}
|
return &ExecStore{FlatDirStore: NewFlatDirStore(execute.PluginsPath(), 0555)}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *PluginStore) Stat(name string) (os.FileInfo, error) {
|
func (s *ExecStore) Stat(name string) (os.FileInfo, error) {
|
||||||
return s.FlatDirStore.Stat(name)
|
return s.FlatDirStore.Stat(name)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *PluginStore) List() ([]os.DirEntry, error) {
|
func (s *ExecStore) List() ([]os.DirEntry, error) {
|
||||||
return s.FlatDirStore.List()
|
return s.FlatDirStore.List()
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *PluginStore) Get(name string) ([]byte, error) {
|
func (s *ExecStore) Get(name string) ([]byte, error) {
|
||||||
return s.FlatDirStore.Get(name)
|
return s.FlatDirStore.Get(name)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -140,7 +140,7 @@ func New() *Server {
|
||||||
memStore: NewFlatDirStore(memDir, 0644),
|
memStore: NewFlatDirStore(memDir, 0644),
|
||||||
toolStore: NewToolStore(),
|
toolStore: NewToolStore(),
|
||||||
utilStore: NewUtilStore(),
|
utilStore: NewUtilStore(),
|
||||||
pluginStore: NewPluginStore(),
|
pluginStore: NewExecStore(),
|
||||||
skillStore: NewSkillStore(),
|
skillStore: NewSkillStore(),
|
||||||
transcriptStore: NewFlatDirStore(transcriptDir, 0444),
|
transcriptStore: NewFlatDirStore(transcriptDir, 0444),
|
||||||
tmpStore: NewFlatDirStore(tmpDir, 0600),
|
tmpStore: NewFlatDirStore(tmpDir, 0600),
|
||||||
|
|
|
||||||
Reference in New Issue