[v0.1/SSH Review] SSH 周りリリース前設計レビュー — 親トラッキング(7件) #44
Labels
No labels
priority/P0
priority/P1
priority/P2
release/v0.1.0
status/blocked
status/planned
type/bug
type/design
type/test-gap
type/tracker
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
natsukium/felis#44
Loading…
Reference in a new issue
No description provided.
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?
概要
1.0 リリースに向けて API / UI / その他(wire / config / docs / リリース契約)の整理中、今回は SSH 周りを重点的に横断レビューした。互換性を無視して破壊的変更可能な今のうちに、凍結前に設計を直すべき箇所を洗い出し、以下の 7 件に分割した。
本 issue は SSH レビューの親トラッキングとする。#11(1.0 Review 親 8件)と #12(v0.1 Tracker)は既存の release-readiness トラッキングであり、本 SSH レビューはその補足として SSH にフォーカスした論点を整理する。重複する論点(carrier 命名など)は #3 と相互参照。
分割 issue 一覧(SSH 重点)
Cli::host/Carrier::Ssh/proto/cli.mdrelay_command/--ssh-arg/how-to/attach-over-ssh.mdCli::hostvsWindowOp::Retarget/control-surfaces.md<socket>.agentsymlink /daemon statuslocal_socket::resolve_local_socket/TMPDIR$HOME起点移行 or 警告 or 二重検出RemoteSpawn/connect_carrier/doctor--spawnopt-in / タイムアウト / 構造化エラーenv_base::capture/FRLY/SpawnArgsレビュー観点
reference/*に normative として明記し、explanation/*に rationale と Revisit trigger を残す#[serde(default)]/ minor ledger)で読める契約を維持しつつ、キー名・名詞階層・wire 値自体は今しか変えられない~/.ssh/config/ssh自体に委譲する部分と felis が持つべき部分の境界が曖昧になりやすいため、control surface の placement criterion(control-surfaces.md)に照らして判定推奨進め方
reference/*とexplanation/*の twin を同時に更新し、just check/just schema/just protoを回す(implement-featureskill の手順)。daemon status/doctorの可観測性に影響するため、#26(daemon status resource scopes)や #14-#16(admission/backpressure)と合わせて整理すると docs の整合が取りやすい。CHANGELOG.mdの Unreleased → v0.1 に凍結した SSH 契約(--host/--ssh-arg/--to-socketの意味、FRLYblock、SSH_AUTH_SOCK間接化、TMPDIR既定)を明記。backlog.mdまたはnon-goals.mdに昇格。参考: レビューで使ったソース
crates/felis-cli/src/main.rs/conn.rs/cli_sessions.rs/cli_doctor.rs/cli_completions.rscrates/felis-client/src/main.rscrates/felis-client-core/src/connector.rs/dial.rs/env_base.rs/local_socket.rscrates/felis-daemon/src/relay.rs/serve.rs/main.rscrates/felis-protocol/proto/felis.proto/src/messages.rs/src/messages/session.rs/src/messages/ops.rscrates/felis-transport/src/preface.rs/stdio.rs/local.rsdocs/reference/{cli,ipc,config,control-surfaces,terminal-identity}.mddocs/explanation/{architecture/ipc,architecture/daemon-client-split,architecture/session-lifecycle,architecture/control-surfaces,security-model}.mddocs/how-to/attach-over-ssh.mdcc @natsukium
The SSH review is now triaged into actionable owners, so this temporary parent can close. #37 and #39 are folded into #23; #38 and #40 retain the documented design with no new surface; #43 was based on an incorrect reading of the relay environment source; #41 is valid but deferred to post-v0.1/P2 because macOS is not a v0.1 supported target; and #42 is narrowed to the release-blocking local-only completion fix. #12 remains the release tracker, so a second SSH tracker would add no scheduling information.