The prose catches up with the one-version app — tier qualifiers retired, the entitlement comment carried over

The excision's follow-up sweep: present-tense prose that still implied an edition axis now reads
correctly under one version ("in every tier" clauses dropped or turned substrate-shaped, the
announcer's "every free-tier bracket today" is "every bracket today" — nothing passes a phrase),
and forward-looking promises pinned to the mooted pro-m1/pro-m2 milestones now name the thing
itself (the change narrator in Kanban/Changes/, the foreign-change journal successor) or fall to
past tense. Kanban.entitlements' network-client comment sheds its "dormant until Pro ships"
framing for the pivot's own reasoning: the key stays because the sync capability to come needs
it regardless. Untouched on purpose: the storage layer's coerce/tolerate/refuse tiers, the
chooser's bundled/user/keyless tiers, verbatim design-doc quotations, and genuine past-tense
record. One dangling reference repaired en route: EndToEndVerification.md cited the long-renamed
InertGitTests. Comment-only throughout; 2,686 unit tests green, unchanged.

Claude-Session: https://claude.ai/code/session_014PtZdPwqZuqEDLc6wZMtEy
This commit is contained in:
2026-08-08 13:40:13 -04:00
parent df986566e5
commit 2d919b8131
21 changed files with 58 additions and 50 deletions
+1 -1
View File
@@ -42,7 +42,7 @@ extension NSToolbarItem.Identifier {
/// predicate written here it is literally the same validation. Both reach the board window, whose
/// `windowWillReturnUndoManager` hands back the session's `BoardUndoManager`, and both therefore
/// enable exactly when that board has a step to cross and no read-only lock stands
/// (13-native-undo.md Rules). **Every board has undo in every tier**, so there is no tier-shaped
/// (13-native-undo.md Rules). **Every board has undo**, so there is no substrate-shaped
/// disablement to write: 03's parenthetical about boards without undo was 06's *git* substrate,
/// which a board once bound by being in git mode on any tier since 12-editions.md PIVOT
/// 2026-08-07, and under a Pro subscription before it, until app-managed git left the app entirely
+2 -1
View File
@@ -75,7 +75,8 @@ public final class CardBodyEditSession {
/// **Whether an Edit session is open right now** the body column is showing the editor.
///
/// The fact pro-m1's committer stages around: "a board change committing mid-session excludes
/// The fact 06's auto-committer staged around, before app-managed git was excised
/// (`strategy/01-git-excision.md`, 2026-08-08): "a board change committing mid-session excludes
/// the session card's folder from staging, so a lane move never sweeps half-typed body text into
/// its commit" (06-history-undo.md Rules Auto-commit).
///
+1 -1
View File
@@ -73,7 +73,7 @@ struct CommentsBesideBodyCommand: View {
// MARK: - File Add Comment
/// File Add Comment (**no default chord**) card window, all tiers (11-command-nexus.md;
/// File Add Comment (**no default chord**) card window (11-command-nexus.md;
/// 05-card-window.md The comments column).
///
/// ### One gesture, two effects, in the one order that works
+1 -1
View File
@@ -20,7 +20,7 @@ import Observation
/// Added, and the only genuinely new thing in this type: **session-start bytes**. The body has no
/// Cancel leaving Edit is a commit, and Z in the editor is the text view's own undo while an
/// inline comment edit has a Cancel button and an Escape that means it. 13-native-undo.md forbids
/// byte capture *on the undo stack* in every tier, and this is not that: the capture is a live
/// byte capture *on the undo stack* anywhere, and this is not that: the capture is a live
/// buffer's, held for the length of one session, discarded when the session ends, and never
/// registered anywhere. `BoardStoreComments`' own note says so "an inline edit's revert is its
/// *session*'s which is a live buffer, not a stack entry".