Files
DodoSSH/docs
jaap-janandClaude Opus 5 9629b7d938
ci / build and test (pull_request) Successful in 1m12s
ci / android head (pull_request) Failing after 5s
ci / api image (pull_request) Successful in 3s
Write down how the phone will add hosts, before it adds any
The + button the design has asked for twice needs three things that do not
exist: a tag, a group's parent, and a group's defaults. Two of them are
refused on the record — HostGroupSecret argues groups are flat, and the
theme argues an unused style is a claim the control exists.

So the plan goes in first, with the decisions and the reasons. Tags become a
real item over the reserved slot, a host names them, and membership merges
through ThreeWayMerge.Map rather than as a whole value, so two people tagging
one host both keep theirs — which is what HostTag was going to buy. Group
defaults inherit rather than copy, shown as the field's placeholder, which is
what makes editing a group afterwards mean anything. A parent arrives with a
visited-set walk, because with inheritance a cycle is no longer an undrawable
sidebar — it is a shell that never opens.

Also written down: that Port has to go nullable and everything that touches,
the byte pin it will trip, and the schema-version branch whose absence would
make an inheriting host unreadable rather than read-only on every client that
has not been upgraded.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-02 22:07:30 +02:00
..