# Capture changes into my fork

You're integrating one or more commits from a sibling GitHub fork into
the CURRENT WORKING DIRECTORY. The CWD should already be a clean git
working tree on a branch you're willing to commit to.

## Source thread: Jeroen1991z builds a citation side panel for Dutch case law

Click a citation in chat, and the source opens beside the answer with the quoted passage highlighted in place.

| # | SHA | Subject | Fork | Authored |
|---|-----|---------|------|----------|
| 1 | [`007c3d05`](https://github.com/Jeroen1991z/mikeNL/commit/007c3d05434cc388d163920a2fd06f02c4bb3dae) | Add legal citation side panel with full text and exact-match highlight | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 2 | [`fe1f464a`](https://github.com/Jeroen1991z/mikeNL/commit/fe1f464a18d95d48f8413a2123430b3824321432) | Format case law text as markdown in side panel | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 3 | [`e1d9a9e0`](https://github.com/Jeroen1991z/mikeNL/commit/e1d9a9e00dddb06ddae6100e0879266e0e459891) | Fix metadata leak and paragraph spacing in legal side panel | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 4 | [`dbd25688`](https://github.com/Jeroen1991z/mikeNL/commit/dbd25688c61abdd8dfe5218ea46f2aaee20316ab) | Use [...] omission notation and range-based quote matching | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 5 | [`4763f72a`](https://github.com/Jeroen1991z/mikeNL/commit/4763f72a9f3192bfc5fe2b3d572a1b1b6ec66abd) | Auto-load legislation in side panel; fix 503 via SRU XML lookup | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 6 | [`55c579b5`](https://github.com/Jeroen1991z/mikeNL/commit/55c579b57b926f8707e292c0d8097d0c1143d155) | Fix BWB XML URL lookup: use 'any' operator and filter by bwb_id | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 7 | [`b86bb894`](https://github.com/Jeroen1991z/mikeNL/commit/b86bb894fb85209e5868da1d77cfd7cd15b86e2f) | Thread xml_url through legislation citation pipeline to fix article loading | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 8 | [`9e4acb5f`](https://github.com/Jeroen1991z/mikeNL/commit/9e4acb5f69f3acdba1e92391db7ce18aa520f229) | Fix BWB manifest parsing by stripping namespace prefixes | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 9 | [`2357d694`](https://github.com/Jeroen1991z/mikeNL/commit/2357d69444f15173455534c33971b3cb1d929be0) | Improve fetchLegislationArticle: better errors, fix book:article number format | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 10 | [`ad53e9c4`](https://github.com/Jeroen1991z/mikeNL/commit/ad53e9c4492a929d8587d1a42069eaed545e07e2) | Fix LegalPanel: eliminate stale-closure bug that blocked auto-load | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 11 | [`83a2844c`](https://github.com/Jeroen1991z/mikeNL/commit/83a2844cab646e92d3625103ae9253553c672277) | Add source link at bottom of full text; fix manifest entry filter | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 12 | [`90a71eb5`](https://github.com/Jeroen1991z/mikeNL/commit/90a71eb5142673d390cfb967512e71e4397bbbee) | Make title a clickable link; fix manifest URL extraction | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 13 | [`7161f2c8`](https://github.com/Jeroen1991z/mikeNL/commit/7161f2c8f764a52320d1e13be4ca6e57e2943cad) | Fix same-arrest scroll; robust BWB XML URL resolution | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 14 | [`ee87b225`](https://github.com/Jeroen1991z/mikeNL/commit/ee87b225f97ab879d6136744c618bbe3361e0a73) | Format article lids properly; remove broken wetten.overheid.nl link | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 15 | [`fa78a296`](https://github.com/Jeroen1991z/mikeNL/commit/fa78a296f2d44db17c6c88248d6957b62ab54162) | Fix findArticleXml: walk backwards from <nr> to enclosing <artikel> | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 16 | [`6083347c`](https://github.com/Jeroen1991z/mikeNL/commit/6083347c68b04535506e4a1a0dc27ef166ffcad0) | Remove duplicate article subtitle for legislation in side panel | `Jeroen1991z/mikeNL` | 2026-05-05 |
| 17 | [`b52b6ecb`](https://github.com/Jeroen1991z/mikeNL/commit/b52b6ecbae258f115d23bef91523259c378c1a78) | Fix stale side panel tabs persisting across chat navigation | `Jeroen1991z/mikeNL` | 2026-05-06 |
| 18 | [`35da3e83`](https://github.com/Jeroen1991z/mikeNL/commit/35da3e835699f27b1ef8b6f5211477929ca2f009) | Add fuzzy word-overlap fallback for passage highlighting | `Jeroen1991z/mikeNL` | 2026-05-06 |

### Commit URLs (for your tooling)

1. https://github.com/Jeroen1991z/mikeNL/commit/007c3d05434cc388d163920a2fd06f02c4bb3dae
2. https://github.com/Jeroen1991z/mikeNL/commit/fe1f464a18d95d48f8413a2123430b3824321432
3. https://github.com/Jeroen1991z/mikeNL/commit/e1d9a9e00dddb06ddae6100e0879266e0e459891
4. https://github.com/Jeroen1991z/mikeNL/commit/dbd25688c61abdd8dfe5218ea46f2aaee20316ab
5. https://github.com/Jeroen1991z/mikeNL/commit/4763f72a9f3192bfc5fe2b3d572a1b1b6ec66abd
6. https://github.com/Jeroen1991z/mikeNL/commit/55c579b57b926f8707e292c0d8097d0c1143d155
7. https://github.com/Jeroen1991z/mikeNL/commit/b86bb894fb85209e5868da1d77cfd7cd15b86e2f
8. https://github.com/Jeroen1991z/mikeNL/commit/9e4acb5f69f3acdba1e92391db7ce18aa520f229
9. https://github.com/Jeroen1991z/mikeNL/commit/2357d69444f15173455534c33971b3cb1d929be0
10. https://github.com/Jeroen1991z/mikeNL/commit/ad53e9c4492a929d8587d1a42069eaed545e07e2
11. https://github.com/Jeroen1991z/mikeNL/commit/83a2844cab646e92d3625103ae9253553c672277
12. https://github.com/Jeroen1991z/mikeNL/commit/90a71eb5142673d390cfb967512e71e4397bbbee
13. https://github.com/Jeroen1991z/mikeNL/commit/7161f2c8f764a52320d1e13be4ca6e57e2943cad
14. https://github.com/Jeroen1991z/mikeNL/commit/ee87b225f97ab879d6136744c618bbe3361e0a73
15. https://github.com/Jeroen1991z/mikeNL/commit/fa78a296f2d44db17c6c88248d6957b62ab54162
16. https://github.com/Jeroen1991z/mikeNL/commit/6083347c68b04535506e4a1a0dc27ef166ffcad0
17. https://github.com/Jeroen1991z/mikeNL/commit/b52b6ecbae258f115d23bef91523259c378c1a78
18. https://github.com/Jeroen1991z/mikeNL/commit/35da3e835699f27b1ef8b6f5211477929ca2f009

## What I want you to do

1.  **Sanity check first.**

    - Run `git status`. If the working tree is dirty (uncommitted
      changes you don't recognise, untracked stuff you don't expect),
      STOP and tell me — don't try to be helpful by stashing. I'll
      resolve it.
    - Run `git branch --show-current`. If the branch is `main` or
      `master`, confirm with me before proceeding.

2.  **For each commit URL above, in the order listed:**

    a.  Fetch the diff. Pick whichever works:
        - `gh api repos/<owner>/<repo>/commits/<sha>` returns the full
          patch in JSON.
        - WebFetch the URL with `.patch` appended, e.g.
          `https://github.com/<owner>/<repo>/commit/<sha>.patch`.

    b.  Read the original commit message. That's the AUTHOR's intent —
        respect it.

    c.  Read the diff and understand the change. **Don't blindly
        cherry-pick.** This is a sibling fork — paths, naming, and
        structure can differ. You're porting, not pasting.

    d.  Compare against THIS repo's layout:
        - File at the same path → apply the change.
        - File exists under a different name (renamed / restructured) →
          apply the equivalent change at the right location.
        - File doesn't exist here at all → decide: new file we want, or
          is the source adding something this repo already has by
          another name? Use judgement. Lean towards creating the file
          when in doubt — easier for me to delete than to recreate.

    e.  Apply the change. Run `git diff` after, eyeball it, fix
        obvious issues (lint errors, broken imports, typos in the diff
        itself).

    f.  Commit with a message that:
        - Preserves the source commit's subject line.
        - Adds a short body explaining what you adapted, if anything.
        - Includes trailers:

              Source: <commit-url>
              Source-author: <original author name>

        so the attribution stays clear.

3.  **After all commits are applied:**

    - Run `git log --oneline -<count>` showing what you produced.
    - Show `git status` final state.
    - List any files you skipped, conflicts you resolved, and any
      assumptions you made.

## Rules

- **Do not push.** Local commits only. I'll review and push.
- **Do not rebase or force.** Only fresh commits. If you'd otherwise
  need a force push, stop and explain why.
- **Don't touch `.git/config` or run `git remote add`.** Leave my
  repo's remote setup alone.
- **No package installs, build steps, or migrations** unless the
  change manifestly requires it AND you explicitly tell me what
  you're about to run first.
- **One commit per source commit.** Don't squash. Don't split. If
  porting genuinely requires either, explain.
- **Read existing code before changing it.** This isn't the source
  fork. Match the local style.

## If you get stuck

Stop and tell me. Show what you've already done (commits made, files
changed), what blocked you (conflict, missing file, ambiguous intent),
and your recommended next move. I'd rather ship 3 of 5 commits cleanly
than have you guess on the 4th and break things.
