docs: plan the second pull from the fork, with its dry run already done
The upstream moved the day the first pull landed: ten commits on curated/curated, 86cb876b..29027f2b, that let a device hold several profiles and move between them, and with them the fork's first schema migration, version 20. The first plan named them the next pull and said the schema change earned a decision of its own. This is that plan, and unlike the first it was written after the dry run rather than before it, so its numbers are measured: rewrite from the fork point in 103 s, ten commits replayed onto776455ecwith nine clean and one resolved by rule, both compilers clean, jvmTest 826 -> 868 and testDebugUnitTest 413 -> 420 with no failures, every audit budget met, and 20.json regenerated byte-identical after a full build. The verdict is all ten, because the line is one feature and seven fixes braided together and four of the fixes are live on Mantra today with one profile: the relay observer that is never all cancelled, the read-only inbox that stays closed after its nsec is pasted, the DataStore race on desktop, and the startup screen's wallet-worded literals. Four decisions: take the whole line rather than carve the fixes out of five commits; take upstream's version 20 verbatim and adopt the rule that whichever tree migrates first owns the number; the one conflict is Mantra's own import from39fb64b6, resolved theirs, which closes one of the first plan's owed reverse-pulls; and two of the device's profiles in one group is a Mantra follow-up before release, since ChatRoom is keyed by the group id alone. What changed in the method: Mantra's tree is no longer a superset of the fork's, so the exactness check becomes "the residual between the trees is the same before and after the pull, file for file", and the plan gives the commands. The replay driver gains the one rule the dry run needed, with its reason. The README gets the row and a reading-order sentence, and the first plan points forward from the paragraph that predicted this one. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -2,7 +2,8 @@
|
||||
"""Land rewritten Curated commits on a Mantra branch, one cherry-pick at a time.
|
||||
|
||||
The companion of curated-unbrand.py, and the second half of docs/curated-to-mantra.md's
|
||||
pipeline as it was actually run. The rewrite (filter-branch with curated-unbrand.py as the
|
||||
pipeline as it was actually run; docs/curated-to-mantra-profiles.md is the second pull it
|
||||
served, and added the one rule that pull needed. The rewrite (filter-branch with curated-unbrand.py as the
|
||||
tree filter and a `Pulled-From: curated/curated@<sha>` trailer stamped by its message
|
||||
filter) leaves a branch `tmp/curated-src` in Mantra's names; this replays commits off it
|
||||
by their *original* sha, in the order you give, onto the current branch of <worktree>.
|
||||
@@ -56,10 +57,12 @@ THEIRS = {
|
||||
('42f3a697', 'composeApp/src/commonMain/kotlin/press/mantra/compose/network/relays/RelaysSocketManager.kt'),
|
||||
('42f3a697', 'composeApp/src/commonMain/kotlin/press/mantra/compose/ui/view/model/NavigationViewModel.kt'),
|
||||
('e3cc23ae', UI + 'KeyRecoveryScreen.kt'),
|
||||
('2f420230', 'composeApp/src/commonMain/kotlin/press/mantra/compose/ui/view/model/CreateProfileViewModel.kt'),
|
||||
}
|
||||
THEIRS_WHY = {
|
||||
'42f3a697': "this commit's import block taken whole -- Mantra had already moved the nostrPublicKey() import to the library's (39fb64b6), and this commit removes the call it served",
|
||||
'e3cc23ae': 'the class comment this commit rewrites is taken whole; the only base difference was the dropped rebrand capitalising the brand in one word of it',
|
||||
'2f420230': "this commit's import block taken whole -- Mantra had already moved the nostrPublicKey() import to the library's (39fb64b6), and this commit removes the seed derivation that import served; the file is identical on both sides afterwards (docs/curated-to-mantra-profiles.md, the third decision)",
|
||||
}
|
||||
DELETE = {('55664cc7', 'composeApp/src/jvmTest/kotlin/press/mantra/compose/ui/composable/GroupNostrProfileSectionJvmTest.kt')}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user