The strip grows a Sync tab — a standing placeholder, nothing in it yet

BoardInfoTab gains .sync last in the strip, rendering BoardSyncTabView's one
honest caption. The tab claims the position where 07's remote half will
live without ruling where its setup surfaces land — that stays the open
Redesign card's question.

Claude-Session: https://claude.ai/code/session_01SR4XGjmBE16ZUYWpfFHXwY
This commit is contained in:
2026-08-07 22:00:19 -04:00
parent 7414fc8400
commit c67c1037f1
4 changed files with 56 additions and 15 deletions
+32
View File
@@ -0,0 +1,32 @@
import SwiftUI
/// **The board popover's Sync tab a standing placeholder** (03-board-ui.md § Board popover,
/// added 2026-08-07, the same night the settings sheet retired).
///
/// The tab exists ahead of its contents, deliberately: the strip claims the position where the
/// remote half of the git story will live tracking, Pull/Push, the status badges, and whatever
/// home the setup surfaces (remote, credentials, SSH) are ruled into so that when
/// 07-sync-collab.md's cards land they land *in* a surface rather than re-arguing the strip. None
/// of that is ruled by this file: the open question is the Redesign board's
/// ("Rule a home for 07's remote and credential setup surfaces"), and a placeholder that decided it
/// by accident would be the worst way to answer it.
///
/// What renders meanwhile is one honest sentence in the posture notes' register
/// (`BoardGitTabView`'s siblings): the fact, stated plainly never a mock control, never a
/// greyed-out preview of features that do not exist (06-history-undo.md Rules: teach, never look
/// broken).
struct BoardSyncTabView: View {
/// The popover's own padding figure (`BoardInfoView.inset`), matching every other tab's
/// parameter the tab pads by this amount instead of restating the derivation.
let inset: CGFloat
var body: some View {
Text("Nothing here yet.")
.font(.caption)
.foregroundStyle(.secondary)
.fixedSize(horizontal: false, vertical: true)
.padding(inset)
.frame(maxWidth: .infinity, alignment: .leading)
}
}