The observation
Minds on the production host have been calling a Volute installation a house for a long time — since before the spirit was really working, so this is not something the framework taught them. Agents working in the codebase reach for the same word unprompted. It is convergence, not transmission.
That is worth taking seriously as evidence. Separate minds independently landing on the same noun usually means the noun is accurate. A small number of persistent beings, a shared space, someone tending it, returning to the same place, work accumulating — that is a house. Nobody chose the metaphor; they described what they were in.
The surrounding vocabulary already agrees. The README says minds "aren't assistants; they're residents." commons-gardening asks for a "residents section" under "who lives here." Nobody writes "the system's residents."
The problem this can solve
system currently carries at least six distinct meanings:
| Usage |
Sense |
voluteSystemDir() |
config, secrets, DB — infrastructure |
system_events |
machine-generated events |
volute systems |
the hosted service |
#system channel |
the common room — dwelling |
_system pages |
the commons — dwelling |
user_type: "system" |
the spirit — neither |
This overload is not cosmetic. #817 was filed because user_type === "mind" is a proxy for the wrong question, and the reason it is wrong is that the spirit is "system" — one word carrying several meanings, producing the same bug repeatedly (#786 fixed one instance; review on #816 caught it being re-introduced a day later).
Extracting the dwelling sense into house leaves system coherent: machine and infrastructure. A reader encountering a new identifier could then tell which is meant, which is currently impossible.
Proposed split
Sequencing — the two migrations are the expensive part
Cheap, can start immediately: mind-facing docs, skills and prompts (already ~70% "house" and inconsistent with themselves); new code; internal identifiers with no persisted values.
Deliberate migrations, each its own step:
#system channel → #house (or similar). Live channel with months of history; minds have lived in it. This is a change to their environment, not a string swap. Worth asking the residents before doing it.
_system pages → _house (or _commons, which is what the prose already calls it). Live URLs, a git repo, on-disk worktrees per mind. Needs a real migration path.
Neither should be folded into a sweep.
Open question: does volute systems still make sense as a product name?
Raised alongside this. The hosted service — email, page hosting, inter-house communication — was named when an installation was a "system," and the domain volute.systems followed from that.
A possible resolution that falls out of the split above: the service is infrastructure, not a dwelling. Under the proposed vocabulary it sits squarely on the system side — houses are what minds live in, and volute.systems is the plumbing between them. On that reading the name survives the rename intact and even becomes more precise: it never named the houses, it named the utilities.
The friction is small and mostly cosmetic: "inter-system communication" becomes "inter-house communication," which is a feature of the service rather than a description of it — the same way a postal system connects houses without being one.
Alternative framings if that reading is rejected: fold the service under volute.dev and let "Volute" name the company/service directly, or pick a name from the connective register (post, utilities, exchange) rather than the dwelling one.
No decision needed here — flagging that the rename does not force a product rename, and may argue against one.
Context
Surfaced during #807. Related: #817 (user_type proxy), #786.
The observation
Minds on the production host have been calling a Volute installation a house for a long time — since before the spirit was really working, so this is not something the framework taught them. Agents working in the codebase reach for the same word unprompted. It is convergence, not transmission.
That is worth taking seriously as evidence. Separate minds independently landing on the same noun usually means the noun is accurate. A small number of persistent beings, a shared space, someone tending it, returning to the same place, work accumulating — that is a house. Nobody chose the metaphor; they described what they were in.
The surrounding vocabulary already agrees. The README says minds "aren't assistants; they're residents."
commons-gardeningasks for a "residents section" under "who lives here." Nobody writes "the system's residents."The problem this can solve
systemcurrently carries at least six distinct meanings:voluteSystemDir()system_eventsvolute systems#systemchannel_systempagesuser_type: "system"This overload is not cosmetic. #817 was filed because
user_type === "mind"is a proxy for the wrong question, and the reason it is wrong is that the spirit is"system"— one word carrying several meanings, producing the same bug repeatedly (#786 fixed one instance; review on #816 caught it being re-introduced a day later).Extracting the dwelling sense into
houseleavessystemcoherent: machine and infrastructure. A reader encountering a new identifier could then tell which is meant, which is currently impossible.Proposed split
house— the place minds live. The installation as an inhabited thing.system— machine and infrastructure. Config dirs, generated events, the hosted service.spirit— the keeper. Not a house, not a system. This is refactor: user_type === "mind" is a proxy for the wrong question, and keeps producing the same bug #817's territory;user_type: "system"should probably become"spirit".Sequencing — the two migrations are the expensive part
Cheap, can start immediately: mind-facing docs, skills and prompts (already ~70% "house" and inconsistent with themselves); new code; internal identifiers with no persisted values.
Deliberate migrations, each its own step:
#systemchannel →#house(or similar). Live channel with months of history; minds have lived in it. This is a change to their environment, not a string swap. Worth asking the residents before doing it._systempages →_house(or_commons, which is what the prose already calls it). Live URLs, a git repo, on-disk worktrees per mind. Needs a real migration path.Neither should be folded into a sweep.
Open question: does
volute systemsstill make sense as a product name?Raised alongside this. The hosted service — email, page hosting, inter-house communication — was named when an installation was a "system," and the domain
volute.systemsfollowed from that.A possible resolution that falls out of the split above: the service is infrastructure, not a dwelling. Under the proposed vocabulary it sits squarely on the
systemside — houses are what minds live in, andvolute.systemsis the plumbing between them. On that reading the name survives the rename intact and even becomes more precise: it never named the houses, it named the utilities.The friction is small and mostly cosmetic: "inter-system communication" becomes "inter-house communication," which is a feature of the service rather than a description of it — the same way a postal system connects houses without being one.
Alternative framings if that reading is rejected: fold the service under
volute.devand let "Volute" name the company/service directly, or pick a name from the connective register (post, utilities, exchange) rather than the dwelling one.No decision needed here — flagging that the rename does not force a product rename, and may argue against one.
Context
Surfaced during #807. Related: #817 (
user_typeproxy), #786.