The subscription machinery leaves the code — Kanban/Tier excised, StoreKit wiring unwound

The 2026-08-08 one-version ruling (12-editions.md ▸ PIVOT 2026-08-08) carried out: Kanban/Tier/
deleted wholesale (Tier, ProEntitlement, ProProducts, ProStorefront, the never-rendered
ProSettingsSection) with TierTests and Configuration.storekit, whose project.yml resource entry
and scheme storeKitConfiguration go with it. AppModel loses the entitlement, the currentTier
seam, BoardSession.tier, and the purchase flow's reopenOpenBoards (its only caller was the
storefront); AppDelegate's launch keeps only the appearance application. The three tests
pinning the recorded tier and the reopen are deleted with their subject. The network-client
entitlement stays — the sync capability to come needs it regardless — and the HistoryProviding
seam stands untouched. 2,686 unit tests green (2,707 minus the 21 that tested what left).

Claude-Session: https://claude.ai/code/session_014PtZdPwqZuqEDLc6wZMtEy
This commit is contained in:
2026-08-08 13:18:54 -04:00
parent 871083e5ca
commit e1f89d9cf9
15 changed files with 48 additions and 1465 deletions
+7 -7
View File
@@ -20,13 +20,13 @@ import XCTest
///
/// ### The settings sheet's audit, and where it went
///
/// The sheet was Pro-only and this suite could not reach it: the fixture launch had no tier control,
/// and a `--ui-test-pro` launch argument was rejected as a subscription bypass anyone could type
/// into Terminal (`UITestLaunch` ships in the app binary on purpose). The 2026-08-07 pivot
/// (12-editions.md PIVOT 2026-08-07 git left the paywall) made it reachable and it gained a test
/// here; the **reversal later the same day retired the sheet outright**, and the test with it. What
/// remains is the precedent the no-bypass objection stands for whatever the next split gates
/// and `testBoardInfoPopover` opens the popover onto its Info tab, which the audit covers.
/// The sheet was once gated, and this suite could not reach it: the gate had no test control, and a
/// launch argument that would have opened it was rejected as a bypass anyone could type into
/// Terminal (`UITestLaunch` ships in the app binary on purpose). The gate is gone there is one
/// version of the app and nothing to unlock (12-editions.md PIVOT 2026-08-08) and the sheet
/// itself retired on 2026-08-07, taking the test with it. What remains is the precedent: a launch
/// argument never exists to open something the shipped app would refuse. `testBoardInfoPopover`
/// opens the popover onto its Info tab, which the audit covers.
///
/// The popover carried a fourth tab, Git, until the git excision (strategy/01-git-excision.md,
/// 2026-08-08) removed it; the popover is Info, Theme, Sync now, and there is no tab-specific audit