chore(deps): Bump actions/checkout from 4.3.1 to 6.0.2 - #2
Merged
intellegix merged 1 commit intoFeb 25, 2026
Merged
Conversation
Bumps [actions/checkout](https://github.com/actions/checkout) from 4.3.1 to 6.0.2. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](actions/checkout@34e1148...de0fac2) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: 6.0.2 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
dependabot
Bot
deleted the
dependabot/github_actions/actions/checkout-6.0.2
branch
February 25, 2026 21:50
intellegix
pushed a commit
that referenced
this pull request
May 14, 2026
Two Claude Code sessions running /research-perplexity simultaneously produced the user-visible symptom "browsers kept canceling each other and trying." Forensic evidence on 2026-05-14 07:57 PDT: Session 2 spawned three Chrome temp profiles in sequence (council_np_nfeloa8y_ at +0s, wautgz7l_ at +4s = retry #1, 2ctuv7v_ at +58s = retry #2) for what should have been ONE logical query. Both sessions eventually returned valid synthesis (error: null), but the retry cascade is the symptom. Root cause (per /research-perplexity diagnosis, 129s deep query + 97s plan critique): the 4-second failure window is too fast for Cloudflare/rate-limit/WebSocket; matches Windows OS focus-acquisition timing. Session 2's chromium.launch_persistent_context (channel= "chrome", headless=False) calls SetForegroundWindow / BringWindow- ToTop during startup, stealing OS-level keyboard focus from Session 1's page.keyboard.type("/research") + press("Space") mid- keystroke. Wrong target receives keys; slash-command palette dismissed before commit; query submits in Search mode instead of Research; .prose comes back empty; server.js retry-once spawns new subprocess → new Chrome window. The amplifier: _verify_research_activation (and council/labs siblings) returned optimistic True even when the indicator couldn't be found, so the focus glitch turned into a silent bad-submission instead of a clean abort. Changes: 1. New file submission_lock.py — cross-process FileLock around the focus-sensitive submit critical section. Co-located with SessionSemaphore (~/.claude/config/browser-sessions/.perplexity_- submit.lock). Timeout scales with MAX_CONCURRENT_SESSIONS (max(120, MAX*30) → 240s at saturation, prevents tail starvation). 180s stale-mtime reclaim covers SIGKILL'd holders. 2. council_browser.py: PerplexityCouncil._acquire_submit_lock async helper wraps FileLock.acquire in asyncio.to_thread to avoid blocking the event loop. The submit critical section in run() (activate_mode + submit_query) is wrapped in try/finally with the lock acquired BEFORE activate_mode (the very first input click inside activate_mode is itself focus-sensitive and must be inside the lock). Released after submit_query returns (which already internally waits for .prose to appear, proving the submission landed). wait_for_completion runs OUTSIDE the lock — fully parallel across sessions. 3. council_browser.py: _verify_research_activation, _verify_council_- activation, _verify_labs_activation rewritten as 2-tier selector cascades. Tier 1: exact-text match on the activated mode pill. Tier 2: looser case-insensitive contains-scan tolerating Perplexity DOM tweaks. Both miss → SELECTOR_DRIFT_DETECTED at log level, return False (was: optimistic True). Caller in run() short-circuits cleanly on False with the existing artifact-save + error-return path. Step 6 plan critique ruled this hygiene on a shared bug class, not scope creep. Verification: - ast.parse council_browser.py + submission_lock.py clean - get_submit_lock() returns WindowsFileLock, timeout=240s, path=~/.claude/config/browser-sessions/.perplexity_submit.lock - council_browser imports clean; PerplexityCouncil._acquire_submit_lock attribute present; get_submit_lock symbol imported - test_parallel.py default suite 7/7 PASS (no regressions to existing SessionSemaphore + browser-launch tests) - LIVE concurrent-Claude verification deferred to next user-triggered two-session research_query — expected: 2 Chrome windows ~4s apart, no retry subprocess spawn, exactly 2 council_np_* temp dirs Plan: ~/.claude/plans/lexical-toasting-babbage.md (Step 6 APPROVED-WITH- CONDITIONS, all 5 conditions integrated). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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.
Bumps actions/checkout from 4.3.1 to 6.0.2.
Release notes
Sourced from actions/checkout's releases.
... (truncated)
Changelog
Sourced from actions/checkout's changelog.
... (truncated)
Commits
de0fac2Fix tag handling: preserve annotations and explicit fetch-tags (#2356)064fe7fAdd orchestration_id to git user-agent when ACTIONS_ORCHESTRATION_ID is set (...8e8c483Clarify v6 README (#2328)033fa0dAdd worktree support for persist-credentials includeIf (#2327)c2d88d3Update all references from v5 and v4 to v6 (#2314)1af3b93update readme/changelog for v6 (#2311)71cf226v6-beta (#2298)069c695Persist creds to a separate file (#2286)ff7abcdUpdate README to include Node.js 24 support details and requirements (#2248)08c6903Prepare v5.0.0 release (#2238)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)