glm-5.3-flash
22b82af517
docs(architecture): correct the fingerprint base64 alphabet wording
...
The format contract (ADR-004 decision 1) is SHA256: + unpadded
standard base64 — not url-safe. The ssh-key re-export and ssh-keygen
both emit the +/ alphabet (visible in the recorded fingerprints); the
'url-safe' wording in ADR-004/auth.md/plans/implementation.md and the
POC-1 §1 finding was a misnomer. Wording corrected; the parity
contract itself unchanged on both sides.
2026-10-28 06:27:49 +00:00
glm-5.3-flash
ab6fb9de87
docs(architecture): resolve all open questions (OQ-01..13), mark specs reviewed
...
- OQ-08: shell convention = assembly-supplied serve config (shell argv
for shell_request; exec wrapper argv + command string for exec; no
crate default; unset -> clean decline)
- OQ-11: direct-streamlocal = universal compile + runtime Unix-gated
decline (channel and listen flow)
- OQ-10: closed as contract + upstream constraint; derivation rules
formalized in mapping.md (Exit chunk -> SSH exit reporting), incl.
the -1/genuine-SIGHUP fidelity tradeoff and an unmapped-negative
fallback rule
- OQ-01/04/09/13: resolved as fully-decided dispositions (ADR-001/
ADR-004/fixed decline postures); remainders were forecasts about
consumers, not pending alkssh decisions; upstream deps now listed
as watch items, not OQs
- OQ-12 restored to the tracker (dropped in the rewrite)
- review-agent criticals/warnings fixed: exec-unset + wrap mechanics
specified, streamlocal listen gate added, stale deferred/tracked
language removed, ADR-006 title fixed, 0.64.1-vs-0.65.0 crosswalk
added in ADR-004, ADR frontmatter aligned to 'reviewed'
All specs + ADRs 001-006 now reviewed; implementation may begin.
2026-10-28 05:08:01 +00:00
glm-5.3-flash
ff2d69c67b
docs(architecture): ADR-002 amendment — the key-algorithm position is ed25519-only
...
- ADR-002 decision 4 retitled and strengthened per review input: not
'rsa off, ed25519-first' but ed25519-only. Rationale recorded: one
key algorithm carries the family's identity — same ed25519 keys
behind alktls self-signed certs, iroh, and the downstream alknet
rewrite (ssh + ed25519, tcp + tls, quic + tls, iroh); legacy
schemes (rsa/dsa/ecdsa/sk) are issued, stored, or derived nowhere
in the family
- operational consequence: auth_publickey declines non-ed25519 keys
explicitly (ADR-004's explicit-over-inherited pattern), so the
posture survives pin bumps; registration is ed25519-only by family
posture, not assembler choice
- ADR-004: carries the matching dated amendment note; other
dispositions unchanged
- auth.md: disposition summary matches (ed25519-only)
- research/russh.md: pin-question list marked resolved by ADR-002
Verification: cargo test, cargo clippy --all-targets -- -D warnings,
cargo fmt --check — all pass
2026-10-27 11:11:42 +00:00
glm-5.3-flash
263f91fdb7
docs(architecture): review-pass cleanup — inconsistencies, stale refs, scaffolding refresh
...
- OQ-02: rewritten as a clean resolved statement; contradictory
deferred-table row removed
- OQ-05: 'old-code anti-pattern' framing corrected — ephemeral-fleet
accept-and-continue is a legitimate case-2 HostKeyPolicy; the crate
rule is 'no hard-coded trust model', not 'accept-all forbidden';
dangling 'expected ADR-007' pointer replaced with the real contract
locations (auth.md, client.md)
- README: OQ counts corrected (6 resolved / 3 open / 4 deferred);
sibling references normalized to real ADR IDs (alkcall 010 is alkhttp
014's analog; 'ADR-016-analog' was a wrong number)
- client/auth: OQ-07 status corrected to resolved-at-adapter-level;
TOFO typo; TOFU framing
- ADR-004: dangling 'ADR-008' -> serve-config defaults
- ADR-006: SOCKS5 typo
- mapping: alktty typo; '(OQ-… note below)' placeholder -> the real
POC-3 note reference
- research: cross-repo numbers qualified (alktty OQ-44, alkvault
ADR-021); reverse-runner lesson 5 reframed per correction
- scaffolding: Cargo.toml description/comments and src/lib.rs doc
comment updated against ADR-002/003/006 (dynamic-forward retired,
git exec-only, russh pin decided); CHANGELOG logs POC completion and
ADRs 001-006
Verification: cargo test, cargo clippy --all-targets -- -D warnings,
cargo fmt --check, cargo check — all pass
2026-10-27 10:00:11 +00:00
glm-5.3-flash
1bfd07adfc
docs(architecture): the four spec docs — overview, mapping, client, auth
...
- overview.md: two-doors framing, family-position table, surface
categories, bounded-resources policy (max_auth_attempts 10,
keepalives 15s/3, per-channel caps), non-goals, lifecycle note
- mapping.md: the spine — channel/request rows (git exec-only, route-1
bridge, translation-bridge session rows), parse-only dispatch,
global-request rows, spawn-and-return constraint, per-build decline
matrix
- client.md: dial surface (key source + host-key policy + keepalives),
op rows (family types in, vanilla out), fail-closed acceptor
(not russh's accept-and-drop), lifecycle primitives only, POC
correctness facts carried
- auth.md: the fingerprint bridge + dispositions summary (server),
vault custody + two-case host-key policy (client)
- README index: doc table filled, current state updated
2026-10-27 03:07:17 +00:00