Repository navigation
fix(web): pair on same-tab token hash navigation - #1740
Merged
Merged
Conversation
Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
donjor
marked this pull request as ready for review
October 14, 2026 03:47
donjor
added a commit
that referenced
this pull request
Oct 15, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 15, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 16, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 16, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 18, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 18, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 18, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 19, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 19, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 19, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 20, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 20, 2026
Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
donjor
added a commit
that referenced
this pull request
Oct 20, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 4e65bbd fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 470e5f5 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 20, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 4e65bbd fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 470e5f5 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 20, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 4e65bbd fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 470e5f5 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 20, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 4e65bbd fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 470e5f5 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 21, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 4e65bbd fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 470e5f5 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 21, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 4e65bbd fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 470e5f5 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes Co-authored-by: donjor <[email protected]>
donjor
added a commit
that referenced
this pull request
Oct 21, 2026
donjor
pushed a commit
that referenced
this pull request
Oct 21, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
donjor
pushed a commit
that referenced
this pull request
Oct 21, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
donjor
pushed a commit
that referenced
this pull request
Oct 21, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
donjor
pushed a commit
that referenced
this pull request
Oct 22, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
donjor
pushed a commit
that referenced
this pull request
Oct 22, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Oct 29, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Oct 29, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Oct 29, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Oct 30, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Oct 30, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Oct 30, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Oct 31, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
donjor
pushed a commit
that referenced
this pull request
Nov 6, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 6, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 6, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 6, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 6, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 6, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 6, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 7, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 7, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 7, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 8, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 8, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 9, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
donjor
pushed a commit
that referenced
this pull request
Nov 9, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 9, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 9, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 9, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 9, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 10, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 10, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 10, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 10, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
rsi-software-agent Bot
pushed a commit
that referenced
this pull request
Nov 10, 2026
## Problem Navigating an existing `/pair` tab to `/pair#token=...` never submits the token and leaves it in the address bar. ## Change Consume URL tokens on mount and `hashchange`, using the existing token-stripping helper and credential submission path. Remove the obsolete mount-only token refs. ## Scope and approval The host approved this focused fix and PR publication. Closes #146. ## Verification ### Behavior - [x] **Navigation:** same-tab token pairs - [x] **Privacy:** token stripped from URL - [x] **First load:** pairing still succeeds - [x] **Tests:** 2 passed, 0 failed ### Checks - [x] **Types:** web typecheck, exit 0 - [x] **Lint:** changed files, exit 0 - [x] **Build:** web production, exit 0 - [x] **Gate:** `vp run fork:ci`, exit 0 - [ ] **Live evidence:** host grounding pending No servers or browsers launched by this worker. Hosted pairing and native mobile are unchanged. Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5. ## Fork trailers Squashes: - 8d3c37e fix(web): pair on same-tab token hash navigation (#1740) (#1740) - 46cf384 fixup! fix(web): pair on same-tab token hash navigation (#1740) (#1740) Fork-Domain: upstream-fixes Fork-Tier: bugfix Fork-Upstreamable: yes
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Navigating an existing
/pairtab to/pair#token=...never submits the token and leaves it in the address bar.Change
Consume URL tokens on mount and
hashchange, using the existing token-stripping helper and credential submission path.Remove the obsolete mount-only token refs.
Scope and approval
The host approved this focused fix and PR publication.
Closes #146.
Verification
Behavior
Checks
vp run fork:ci, exit 0No servers or browsers launched by this worker.
Hosted pairing and native mobile are unchanged.
Implementation: Pi, gpt-6.1-sol; host: Claude Code, claude-opus-5-5.
Fork trailers
Fork-Domain: upstream-fixes
Fork-Tier: bugfix
Fork-Upstreamable: yes