NS1 slice: Expose the local session socket and mimctl basics #10
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
OBJECTIVE: Add a local Unix socket plus
mimctlstate/command path for a running session.AUTHORITY: Parent #1
NS1: Minimal protocol-first mim-min editor; PRODUCT.md; REQUIREMENTS.md (PRODUCT.md; req: session/001-004; req: coding/001; req: governance/001; req: governance/003).AGENT AUTHORITY:
PARENT: #1 via explicit issue link and parent checklist.
SCOPE: The smallest source/docs/tests needed to make this behavior real and verified.
BOUNDARIES: No remote network control plane or plugin API.
ACCEPTANCE: A test starts a session, reads the exported socket path, queries state, sends one command, and observes changed state.
VERIFICATION: Run the cheapest command that proves acceptance. Include regular tests for the intended payoff and adversarial tests for realistic failure, boundary, or regression cases. If no implementation test command exists yet, create/record the canonical command in AGENTS.md as part of the slice.
BLOCKERS: none
GOAL: Implement this vertical slice to the ACCEPTANCE above, keep the repo clean, cite relevant
req:anchors in code/tests where applicable, and close only after verification passes.Implemented in commit
6c3b7fa55a(Expose local socket protocol and mimctl basics).Verification:
mim --mimctl <socket> <request...>Regular tests: protocol opens bytes, reports state, moves/inserts/deletes via commands; local Unix socket serves
stateand command requests; command requests mutate session state through the socket.Adversarial tests: unknown protocol requests/commands are rejected, invalid UTF-8 insertion preserves state, no-buffer commands report
err no buffer open, and overlong Unix socket paths fail explicitly.Boundary: this is a local Unix socket and tiny same-binary mimctl path only; no daemon product, remote control plane, plugin API, replay, or TUI hosting was added.
Addendum: commit
72a9d3127cletsmim --mimctl - <request...>read the socket path fromMIM_SOCKET, while explicit socket paths still work. This covers the exported-socket-path CLI convention for trusted child/tool environments.