Commit 3b19ca9
fix(.fern/replay.lock): re-anchor on reachable [fern-replay] init commit (#840)
## Why this PR exists
`.fern/replay.lock` on master references the commit SHA
`b61c6fa84f61d6c77d9f4ab0fa6c2bf512c8680d` in three fields:
`current_generation`, the second entry in `generations[]`, and
`patch-4894603d.base_generation`. That SHA exists on the abandoned bot
branch `fern-bot/2026-05-01_07-46-04_377` but is **unreachable from
`master`'s first-parent history**, because PR #836 ("SDK regeneration",
merged 2026-05-01) was squash-merged — squash created a new merge commit
`9398d1da…` on master and discarded the original bot-branch SHAs.
The result is that every subsequent `fern generate` loads this lockfile,
can't resolve `b61c6fa` from a master-only clone, falls into the deepest
detection fallback path, and (until the engine fix linked below also
lands) captures up to 200 pre-Fern commits as orphan patches —
overflowing GitHub's 65,536-character PR body limit and failing PR
creation outright.
## What this PR changes
Three references on `.fern/replay.lock`, no other lines touched:
\`\`\`diff
- - commit_sha: b61c6fa
- tree_hash: 063654d
- timestamp: 2026-05-01T07:46:03.366Z
- cli_version: unknown
- generator_versions:
- fernapi/fern-python-sdk: 5.9.1
- base_branch_head: 6e9c9a6
-current_generation: b61c6fa
+ - commit_sha: ffe61f6
+ tree_hash: d03a986
+ timestamp: 2026-04-29T20:01:22+05:30
+ cli_version: unknown
+ generator_versions: {}
+ base_branch_head: de316f0
+current_generation: ffe61f6
\`\`\`
\`\`\`diff
- base_generation: b61c6fa
+ base_generation: ffe61f6
\`\`\`
`ffe61f6a098cb25a875019a37f2615045b97344e` is the merge commit on master
for PR #833 ("[fern-replay] Initialize Replay for SDK customizations"),
authored by `fern-api[bot]`. Unlike `b61c6fa…`, it sits on master's
first-parent history and is reachable from any clone of master.
`patch_content` and the ~8,200-line `theirs_snapshot` (which contains
the full intended content of `src/auth0/management/__init__.py`) are
untouched — they're the safety net that lets the replay applicator
reconstruct the customer-intended file content on the next regeneration
even if the line-anchored diff's context has drifted against the new
anchor's tree.
## Effect after merge
- Next `fern generate` loads the lockfile, finds `current_generation:
ffe61f6…` reachable from master
- Replay uses its linear detection path (not the broken fallback)
- The 5 customer commits since PR #833 get tracked normally with valid
`base_generation` anchors
- `patch-4894603d` reapplies, preserving the custom wiring in
`src/auth0/management/__init__.py`
- PR body well under GitHub's 65KB limit
Co-authored-by: Tanmay Singh <[email protected]>1 parent 1026b4d commit 3b19ca9
1 file changed
Lines changed: 7 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
10 | | - | |
11 | | - | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
12 | 12 | | |
13 | | - | |
14 | | - | |
15 | | - | |
16 | | - | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
17 | 16 | | |
18 | 17 | | |
19 | 18 | | |
20 | 19 | | |
21 | 20 | | |
22 | 21 | | |
23 | | - | |
| 22 | + | |
24 | 23 | | |
25 | 24 | | |
26 | 25 | | |
| |||
0 commit comments