Skip to content

fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair - #1782

Merged
donjor merged 3 commits into
hyprwsfrom
t3/fork-sync-tooling-fixes
Oct 19, 2026
Merged

donjor merged 3 commits into
hyprwsfrom
t3/fork-sync-tooling-fixes

Conversation

@donjor-agent

@donjor-agent donjor-agent Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

🤖 claude/anthropic claude-opus-5-5 (high)

Problem

The .3335 sync needed three manual repairs that the tooling could do itself:

  • Hook guard: it refused a commit that edits line 1 of an existing multi-line marked hook. It only reads markers in the added lines, and the marker sat on an unchanged line. The workaround collapsed the hook onto one line.
  • Hook re-apply: when upstream re-indents a hook's anchor, the trimmed-text fallback still finds the anchor. The hook still went back in byte for byte, with its old indentation. Candidate CI then failed the format check (ThreadNavigationSidebar.tsx, workspaces/mobile-filter-pick).
  • Fold check: a fixup whose surrounding lines a later commit changed stops with "does not fold into its owner". The commit to name instead had to be found by hand with blame.

Change

  • Hook guard: when added code lines remain, it reads the commit's own blob; that file's marked spans decide coverage. Added lines alone missed an unchanged marker and let an edited JSX opener span later hunks. The patch parser now records each added line's position.

  • Re-apply: when the anchor matched only by trimmed text, hook lines shift by the indentation change of the anchor's last non-blank line. A multi-line hook with a backtick or line continuation stays verbatim.

         if (event === "project:all") {
    -        pickMobileProjectFilter(null); // fork-hook: workspaces/mobile-filter-pick
    +      pickMobileProjectFilter(null); // fork-hook: workspaces/mobile-filter-pick
  • Fold check: on a stop, it blames the fixup's edit plus 3 context lines over base..fixup^, an unterminated final line included. It then names the newest non-fixup stack commit there:

    ...: the replay stopped applying it there; name "feat(web): fork a thread from the thread menu (#1330)" (0e51583) instead, the newest commit that changed the lines around this edit
    
  • Docs: fork-sync.md notes the shift.

  • Types: AuthoringGuardInput is declared once, in fork-scan-authoring.ts.

Scope and approval

Requested by the maintainer after the .3335 sync review: option a for each item, shipped as one PR.

Verification

  • vp test run scripts/fork-scan-gates.test.ts scripts/fork-scan.test.ts: 49 passed. New cases: an edit inside an unchanged-marker hook; an edit after an unchanged JSX end marker.
  • vp test run scripts/lib/fork-hook-reapply.test.ts scripts/fork-sync.test.ts: 83 passed. The re-indent case expects the shift; hooks that may span a string stay verbatim.
  • vp test run scripts/fork-fixup-fold.test.ts: 8 passed. The tip-only case asserts a hint taken from an unterminated final line.
  • Real stack b727408..f4bae9d: the hint named 0e51583. A test commit with that retarget folded past it.
  • The replay then stopped at the second fixup. Its hint named 6987e82, the target picked by hand during the sync.
  • cd scripts && tsc-rs --noEmit → exit 0
  • vp run fork:ci → exit 0: delta, stale-delete, fixup fold, rebase scan, vp check, scripts suite

Claude Opus 5.5, Claude Code.

Fork trailers

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

… manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
@rsi-software-agent

rsi-software-agent Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

🩺 Aftercare 6d05554 ✅ clear

resolved 4

commit 7fc4987

  • A1 Preserve literal contents when shifting hook indentation ✅ 6d05554
  • A2 Use committed spans instead of trusting concatenated JSX additions ✅ 0978f65
  • A3 Include unterminated final lines in fold-hint blame ranges ✅ 0978f65
  • A4 Separate Git input collection from the oversized scan module ➖ out of scope; this PR shrinks 'fork-scan.ts' (net −12 lines), and a split is its own refactor.

🕐 19 Oct 08:22 UTC ⏱️ 2 min 🤖 gpt-6.1-sol 🪙 513.8K

⚠️ Not verified: Live upstream sync and retargeted full-stack replay were not exercised; continued-session fresh-eyes check was weaker.

Details

A1 Preserve literal contents when shifting hook indentation · scripts/lib/fork-hook-reapply.ts:103

  • Problem: Re-indentation changes runtime template-string contents inside otherwise valid marked hooks.
  • Fix: Preserve literal bytes or refuse unsafe shifts; add a multiline-template regression.
  • Note: Backticks and line continuations preserve multiline hook bytes; all prior runtime probes pass.

A2 Use committed spans instead of trusting concatenated JSX additions · scripts/lib/fork-hook-guard.ts:102

  • Problem: Added-only JSX spans hide unrelated unmarked edits before committed coverage is checked.
  • Fix: Make committed spans authoritative; test edits after an unchanged JSX end marker.
  • Note: Committed spans now govern coverage; the unchanged JSX end-marker probe correctly flags Plain.

A3 Include unterminated final lines in fold-hint blame ranges · scripts/fork-fixup-fold.ts:127

  • Problem: Missing final newlines undercount blob lines, suppressing blame and valid retarget hints.
  • Fix: Count unterminated final lines; add a no-final-newline retarget regression.
  • Note: Final-line counting includes unterminated blobs; both probe variants identify the later commit.

A4 Separate Git input collection from the oversized scan module · scripts/fork-scan.ts:829

  • Problem: The 1,292-line scan mixes Git collection, policy evaluation, reporting, and CLI orchestration.
  • Fix: Extract Git-side scan and guard input collection into a focused reader module.
  • Note: out of scope; this PR shrinks 'fork-scan.ts' (net −12 lines), and a split is its own refactor.
Head Result Time Check
6d05554 ✅ clear · 1 fixed 2 min run
0978f65 🔴 1 open · 2 fixed · 2 held 3 min run
7fc4987 🔴 3 open · 4 new 5 min run

…, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
@donjor-agent

donjor-agent Bot commented Oct 19, 2026

Copy link
Copy Markdown
Author

🤖 claude/anthropic claude-opus-5-5 (high)

A4: drop out of scope; this PR shrinks fork-scan.ts (net −12 lines), and a split is its own refactor.

…hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
@donjor
donjor merged commit 98be6b2 into hyprws Oct 19, 2026
@donjor
donjor deleted the t3/fork-sync-tooling-fixes branch October 19, 2026 08:52
donjor added a commit that referenced this pull request Oct 19, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 20, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 20, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 20, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 20, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 20, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 21, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 21, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 21, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 21, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 21, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 22, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 22, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 23, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 24, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 27, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 27, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

---------

Co-authored-by: donjor <[email protected]>
donjor added a commit that referenced this pull request Oct 27, 2026
donjor added a commit that referenced this pull request Oct 27, 2026
donjor added a commit that referenced this pull request Oct 27, 2026
donjor added a commit that referenced this pull request Oct 27, 2026
donjor pushed a commit that referenced this pull request Nov 6, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Squashes:

- 73d431d fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 2750cd1 fixup! fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 6, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Squashes:

- 73d431d fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 2750cd1 fixup! fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 6, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Squashes:

- 73d431d fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 2750cd1 fixup! fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 6, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Squashes:

- 73d431d fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 2750cd1 fixup! fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 6, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Squashes:

- 73d431d fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 2750cd1 fixup! fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 6, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Squashes:

- 73d431d fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 2750cd1 fixup! fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 6, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Squashes:

- 73d431d fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 2750cd1 fixup! fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 7, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Squashes:

- 73d431d fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 2750cd1 fixup! fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 7, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Squashes:

- 73d431d fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 2750cd1 fixup! fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 7, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Squashes:

- 73d431d fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 2750cd1 fixup! fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 8, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Squashes:

- 73d431d fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 2750cd1 fixup! fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 8, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Squashes:

- 73d431d fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 2750cd1 fixup! fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 9, 2026
… manual repair (#1782)

* fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair

The guard reads markers from the committed file, re-apply shifts a hook with its re-indented anchor, and a stopped fold names the commit to retarget to.

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): type the hook guard input once; trust committed spans, template literals, and unterminated lines

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no

* fix(fork-sync): any backtick or line continuation keeps a multi-line hook verbatim

Squashes:

- 73d431d fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 2750cd1 fixup! fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)

Fork-Domain: fork-meta
Fork-Tier: bugfix
Fork-Upstreamable: no
donjor added a commit that referenced this pull request Nov 9, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 9, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 9, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 9, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 9, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 10, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 10, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 10, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 10, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 10, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 11, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 11, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 11, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 11, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 11, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 11, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 12, 2026
Squashes:

- 40b34294944 fix(fork): fork-hook-seam ignores marker attaches and re-exports
- 02ef53efdfe fix(fork-sync): read hook markers at the fork tip, not the replayed blob (#1585)
- 92ae0b1c382 docs(fork): document hook marker span; guard names the comment fix (#1497) (#1497)
- 5d7c3309e2f fix(fork): hook guard matches replayed lines across re-indentation
- 0218f4cff37 fix(fork-sync): a file's second hooked commit re-applies; hooks must stay pure insertions (#1780) (#1780)
- 993f35b7163 fix(fork-sync): hook guard, hook re-apply, and fold check each drop a manual repair (#1782) (#1782)
- 343c8042034 fix(fork-hooks): the marker scanner skips regex literals (#1888) (#1888)
- cbb92efa8cc fix(fork-sync): a sync refuses a tip that lost fork hook lines (#1891) (#1891)
- 28e0d0f3fae fix(fork-sync): a landed hook retirement exempts no later sync (#1892) (#1892)
- 1f849981399 fix(fork-sync): a hook finding in a replayed commit restarts the replay instead of looping on tip fixups (#1915) (#1915)

Fork-Domain: fork-meta
Fork-Tier: core
Fork-Upstreamable: no
Co-authored-by: donjor <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant