Collapse the edition split — one target, twins merged, verify-editions retired
Phase 1 of the 2026-07-30 one-app pivot (DESIGN 0bec9a6, card c3a3ddd5):
the KanbanPro target, LaneworkPro scheme, KanbanProTests module-alias
bundle, KanbanPro/ source root and scripts/verify-editions.sh retire
wholesale. project.yml reads as a single-target file again (anchors
inlined, header rewritten in tier vocabulary).
The edition twins merge: EditionTypes -> PasteboardTypes (one
UTType(exportedAs:) home — the one app owns the family types),
EditionAbout -> AboutBox (the quiet Pro signpost survives as the About
box's one line; "…in Settings" deferred until the StoreKit phase gives
it somewhere to point). InertGitTests drops its Base prefix — the
inert-.git posture is unconditional app behavior, unsubscribed and
lapsed being one state.
Entitlements gain com.apple.security.network.client, declared now and
dormant until Pro's remotes use it; no keychain access group. The App
Group key deliberately stays — it goes with AppGroup.swift in phase 2,
since pulling it first would silently drop the app into the fallback
container. README/RELEASE.md build-and-pipeline prose updated to the
one-record world; the subscription story lands with phase 3.
1893 tests in 322 suites green.
Claude-Session: https://claude.ai/code/session_01SR4XGjmBE16ZUYWpfFHXwY
This commit is contained in:
@@ -209,11 +209,11 @@ public final class AppModel {
|
||||
/// **The composition root for `HistoryProviding`** (12-editions.md ▸ The provider seam): what a
|
||||
/// board session's undo stack is built by, called once per board as its session begins.
|
||||
///
|
||||
/// Base binds the native stack — a pair of step stacks over the inverses registered at the
|
||||
/// Writer boundary (13-native-undo.md, `NativeHistoryProvider`) — and that is the default here
|
||||
/// because it is the *shared* code's implementation: both targets compile it, and Pro runs it
|
||||
/// too until pro-m1 replaces this closure with the git provider (06-history-undo.md). Nothing in
|
||||
/// this file is edition-conditional; the edition difference is which closure the root installs.
|
||||
/// The free tier binds the native stack — a pair of step stacks over the inverses registered at
|
||||
/// the Writer boundary (13-native-undo.md, `NativeHistoryProvider`) — and that is the default
|
||||
/// here because it is the substrate every tier can always fall back to; pro-m1 installs the git
|
||||
/// provider over this closure when the subscription is active (06-history-undo.md). Nothing in
|
||||
/// this file is tier-conditional; the tier difference is which closure the root installs.
|
||||
///
|
||||
/// It takes the store because that is what a provider is a history *of*: the git provider needs
|
||||
/// the board root it is a repository at, and the native one's steps are computed from the same
|
||||
@@ -239,7 +239,7 @@ public final class AppModel {
|
||||
/// (13-native-undo.md ▸ Rules). It lives here for the store's reason exactly: the session is
|
||||
/// what every window over this board shares, and "undo is board-local".
|
||||
///
|
||||
/// Which implementation it is, is the edition's answer and nobody else's
|
||||
/// Which implementation it is, is the tier's answer and nobody else's
|
||||
/// (12-editions.md ▸ The provider seam) — see `AppModel.makeHistoryProvider`.
|
||||
public let history: any HistoryProviding
|
||||
|
||||
|
||||
Reference in New Issue
Block a user