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:
@@ -65,6 +65,11 @@ public struct WindowFrame: Codable, Sendable, Equatable {
|
||||
///
|
||||
/// ### One record, shared by every edition — with two per-edition fields
|
||||
///
|
||||
/// **⚠ one-app collapse phase 2**: the two per-edition fields collapse to one grant and one flag
|
||||
/// when the App Group goes (12-editions.md ▸ App-side state, re-ruled 2026-07-30) — there is no
|
||||
/// second sandbox to hold a slot for. The section below describes the shipping code, which still
|
||||
/// works; it is retired, not wrong.
|
||||
///
|
||||
/// The record lives in the family App Group container (`AppGroup`), so base, Pro and later Teams all
|
||||
/// read and write the same one: an upgrader's recents, frames and settings are simply *there*
|
||||
/// (12-editions.md ▸ Distribution, ruled 2026-07-29). Two fields cannot be common, and both are
|
||||
|
||||
Reference in New Issue
Block a user