memoryd: the crate, memoryd.toml, and listening on a socket
Implemented-By: OpenCode session (model recorded in docs/implementer-log.md)
This commit is contained in:
@@ -596,3 +596,24 @@ its thread answers it.
|
||||
Where two Boxmakers share a channel thread, address approval commands to one of them
|
||||
(`@<bot> !approve <id>`): a bare `!approve <id>` is taken by every Boxmaker with that id pending
|
||||
in that thread.
|
||||
|
||||
## memoryd-start-failed
|
||||
|
||||
**What you see.** `memoryd` exits 1 at start with one line naming its config file, a directory,
|
||||
a file under `memory/`, the index, or a socket, then this entry.
|
||||
|
||||
**Why.** `memoryd` could not read or parse `memoryd.toml` (unknown keys are errors), could not
|
||||
read the starter `soul.md` when `memory/soul.md` was missing, could not create or open
|
||||
`memory/` or `index/memory.sqlite3`, or could not listen on one of its three sockets (their
|
||||
directories are made 0700 and the sockets 0600, as `brokerd`'s are; a path of 108 bytes or more
|
||||
cannot be a socket). It will not start without the memory it owns.
|
||||
|
||||
**Confirm.** The line names the path. For the file, check it against
|
||||
`docs/specs/2026-09-24-m5a-local-memory.md`, section 11. For a directory,
|
||||
`ls -ld <dir> "$(dirname <dir>)"`. `Address already in use` means another `memoryd` runs:
|
||||
`pgrep -x memoryd`.
|
||||
|
||||
**Fix.** Correct the file, the path or the ownership. The index is disposable: if it is damaged,
|
||||
move it aside and start `memoryd`, which rebuilds it (see `memory-index-damaged`).
|
||||
|
||||
**Check.** `memoryd serve --config <path>` prints `memoryd: serving`.
|
||||
|
||||
Reference in New Issue
Block a user