docs(research): sharpen the door principle — two directions, vanilla on the outside

Vision principle 2 extended: server = door for vanilla clients (vanilla
in, family out; primary current purpose git), client = door to vanilla
servers (family in, vanilla out — reverse-runner hub dials vanilla
sshd; runner stays vanilla by design). Type symmetry at the seam
(family-protocol types both directions, russh the vanilla side); honest
asymmetry recorded (server serves seam entries, client consumes family
types)
This commit is contained in:
glm-5.3-flash committed 2026-10-26 15:52:34 +00:00
1 parent c7ab19ed8a
commit e43d2d184d
1 file changed
+15 -4
+15 -4
View File
@@ -35,10 +35,21 @@ not protocol invention.
multiplexing, and userauth state machines come from russh; third-
party-upstream posture applies (file asks upstream; never silently
absorb a workaround).
2. **A door, not a backend.** alkssh speaks family-protocol types only
at the mapped seams. It carries no deployment policy: a downstream
app (alkforge) embeds it, enables features, and brings identity/ACL
configuration.
2. **A door in both directions, vanilla on the outside.** alkssh is a
door for vanilla clients (server direction: vanilla in, family out
— each channel served by a family seam entry; primary current
purpose: git) and a door to vanilla servers (client direction:
family in, vanilla out — the reverse-runner shape: a family hub
dials vanilla sshd and the ops map family-side onto the same
protocols, **alktty** for sessions, **alktunnels** for
tunnels/-D legs, **alkgit** for upstream git, alkfs client later
for sftp; the runner stays vanilla by design). Type symmetry at
the seam: the family-facing surface speaks family-protocol types
in BOTH directions; the vanilla side speaks russh. The asymmetry
is honest and recorded: the server direction *serves* family seam
entries; the client direction *consumes* family types. It carries
no deployment policy: a downstream app (alkforge) embeds it,
enables features, and brings identity/ACL configuration.
3. **Fail-closed everything.** The feature graph, the auth-method
disposition, and the channel-request disposition all default to a
clean decline. Nothing is advertised that isn't served; nothing is