Skip to content

Skip tests for doc-only workflow changes (Fixes #1565)#2055

Merged
acoliver merged 1 commit into
mainfrom
issue1565
Jun 16, 2026
Merged

Skip tests for doc-only workflow changes (Fixes #1565)#2055
acoliver merged 1 commit into
mainfrom
issue1565

Conversation

@acoliver

Copy link
Copy Markdown
Collaborator

TLDR

Fixes #1565 by making doc-only detection treat documentation-support workflow changes conservatively as docs-only, so unit CI and E2E jobs skip when PRs only change documentation content.

Dive Deeper

  • Updates the CI doc-only filter to allow common documentation file patterns and a narrowly scoped .gitignore change for unignoring docs/reference/.
  • Mirrors the same classification in the E2E workflow so E2E jobs also skip for doc-only PRs.
  • Fixes E2E PR number detection for pull_request_target events so fork-label E2E gating can inspect the PR file list.
  • Keeps non-documentation .gitignore changes conservative: any changed .gitignore patch line outside the docs/reference exception still forces full tests.

Reviewer Test Plan

  • Inspect the workflow diff and verify the .gitignore exception is limited to docs/reference unignore/comment lines.
  • Confirm a PR with docs files plus the docs/reference .gitignore unignore is classified as docs-only.
  • Confirm a PR with source files or broader .gitignore changes is not classified as docs-only.
  • Check GitHub Actions on this PR and verify workflow lint/format checks run while unit CI/E2E jobs are skipped where the doc-only filter applies.

Testing Matrix

🍏 🪟 🐧
npm run - - -
npx - -
Docker - - -
Podman - - -
Seatbelt - - -

Validation performed:

  • actionlint with the same ignores used by the CI workflow on .github/workflows/ci.yml and .github/workflows/e2e.yml: passed.
  • npx prettier --check .github/workflows/ci.yml .github/workflows/e2e.yml: passed.
  • yamllint 1.35.1 on both changed workflow files: passed with existing warning-level line-length/comment warnings only.
  • git diff --check on both changed workflow files: passed.
  • A local classifier harness against PR docs: big fat doc updates (closes #1499) #1563 changed files and .gitignore patch: passed, classified docs_only=true.

Unit tests, TypeScript checks, build, and E2E were intentionally not run because only YAML workflow files changed.

Linked issues / bugs

Fixes #1565

@github-actions github-actions Bot added the maintainer:e2e:ok Trusted contributor; maintainer-approved E2E run label Jun 16, 2026
@coderabbitai

coderabbitai Bot commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 74dba94a-00de-415a-9597-8142e3a4b6d1

📥 Commits

Reviewing files that changed from the base of the PR and between 0173274 and 5fd1eae.

📒 Files selected for processing (2)
  • .github/workflows/ci.yml
  • .github/workflows/e2e.yml
📜 Recent review details
⏰ Context from checks skipped due to timeout of 270000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (6)
  • GitHub Check: E2E Test (macOS)
  • GitHub Check: E2E Test (Linux) - sandbox:none
  • GitHub Check: E2E Test (Linux) - sandbox:docker
  • GitHub Check: Lint (Javascript)
  • GitHub Check: CodeQL
  • GitHub Check: Run LLxprt review
🔇 Additional comments (7)
.github/workflows/e2e.yml (4)

57-61: LGTM!


82-89: LGTM!


95-100: LGTM!


101-111: LGTM!

.github/workflows/ci.yml (3)

89-96: LGTM!


102-107: LGTM!


108-118: LGTM!


Summary by CodeRabbit

  • Chores
    • Enhanced CI/CD workflows to improve documentation-only change detection, now with expanded file-type recognition and refined .gitignore analysis.

Walkthrough

CI and E2E workflow doc-only detection scripts are updated to fetch and inspect the .gitignore patch from the PR API, treating .gitignore changes as doc-only only when the diff does not touch docs/reference-related rules. File-matching globs are expanded to explicitly cover CHANGELOG*, CONTRIBUTING*, CODE_OF_CONDUCT*, and SECURITY*. The E2E workflow also fixes PR_NUMBER derivation to cover pull_request_target events.

Changes

Doc-only Filter Improvements

Layer / File(s) Summary
E2E PR_NUMBER for pull_request_target
.github/workflows/e2e.yml
PR_NUMBER expression updated to derive the PR number from both pull_request and pull_request_target event contexts, falling back to empty otherwise.
.gitignore-aware doc-only detection
.github/workflows/ci.yml, .github/workflows/e2e.yml
Both workflows add a gitignore_patch fetch step and a case branch that sets docs_only=false when the .gitignore diff contains non-docs/reference additions or removals; glob matching is expanded to cover CHANGELOG.*, CONTRIBUTING.*, CODE_OF_CONDUCT.*, SECURITY.*, and explicit doc extensions (.md, .mdx, .rst, .txt, .adoc).

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • vybestack/llxprt-code#1122: Introduced e2e_doc_change_filter and the initial docs-only flag logic in ci.yml/e2e.yml that this PR extends with .gitignore awareness.

Suggested labels

maintainer:e2e:ok

🐇 A .gitignore snuck in one day,
Tricking CI to skip and play.
Now we peek at the patch with care,
If docs/reference hides in there—
Full tests run! No shortcuts, hooray! 🎉

🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately summarizes the main change: implementing doc-only workflow detection to skip tests for documentation-only PRs, with clear reference to the issue being fixed.
Description check ✅ Passed The description is comprehensive and follows the template structure with TLDR, Dive Deeper, Reviewer Test Plan, Testing Matrix, and Linked Issues sections properly filled out with detailed information.
Linked Issues check ✅ Passed The PR successfully addresses issue #1565 by implementing conservative doc-only detection that allows specific documentation patterns and scoped .gitignore changes while requiring full tests for source code modifications.
Out of Scope Changes check ✅ Passed All changes are scoped to CI and E2E workflow YAML files to implement the doc-only detection logic required by issue #1565, with no unrelated modifications.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

📋 Issue Planner

Let us write the prompt for your AI agent so you can ship faster (with fewer bugs).

View plan for ticket: #1565

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch issue1565

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions

Copy link
Copy Markdown
Contributor

LLxprt PR Review – PR #2055

Issue Alignment

Fixes #1565 by updating doc-only detection in both CI workflows. Evidence:

  • ci.yml (lines 86-121) and e2e.yml (lines 79-114): Added gitignore patch analysis via gh api to detect if .gitignore changes are scoped to docs/reference/ unignoring
  • Extended doc file patterns include CHANGELOG.md, CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md
  • E2E workflow also gains pull_request_target event support for PR number detection (e2e.yml line 55-58)

The implementation matches the issue requirement: PRs with only documentation files (including .gitignore changes limited to docs/reference exception) should skip CI/E2E jobs.

Side Effects

  1. API latency: Each workflow now makes an additional gh api call when .gitignore is changed, fetching the full patch. Negligible impact.
  2. Expanded doc classification: Files like SECURITY.md, CONTRIBUTING.md now skip unit tests. This is likely intentional but worth monitoring.
  3. Conservative .gitignore handling: Any .gitignore patch line not matching the ^[+-](!docs/reference/|#.*docs/reference) pattern forces full tests—this is the intended conservative behavior per PR description.

Code Quality

Minor concern: The grep pipeline in both files uses grep -E '^[+-][^+-]' which assumes diff hunk headers (@@ -1,3 +1,4 @@) are filtered elsewhere. Git diff patches can include context lines without +/- prefixes. However, since we only care about lines starting with + or - that aren't in the exception list, this edge case won't cause false positives.

The bash scripting is idiomatic: proper set -euo pipefail, quoted variables, || true for graceful API failures, and structured case statements.

Tests and Coverage

Coverage impact: unchanged

No test files were modified. GitHub Actions workflow changes are not typically unit-tested in this repo (verified: no workflow test files exist in scripts/tests/). The PR relies on CI run validation and manual testing by maintainers, which is acceptable for workflow-level changes.

Verdict

Ready

The PR correctly implements the fix for issue #1565 with appropriate conservative handling of .gitignore changes. The code quality is solid for shell scripting. No tests required for workflow-level changes. The implementation mirrors logic between ci.yml and e2e.yml, and the E2E PR number detection fix for pull_request_target events resolves a real gap in fork-label gating.

@github-actions

Copy link
Copy Markdown
Contributor

Code Coverage Summary

Package Lines Statements Functions Branches
CLI 55.33% 55.33% 56.87% 81.61%
Core 75.87% 75.87% 71.97% 82.69%
CLI Package - Full Text Report
-------------------|---------|----------|---------|---------|-------------------
File               | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s 
-------------------|---------|----------|---------|---------|-------------------
All files          |   55.33 |    81.61 |   56.87 |   55.33 |                   
 src               |   70.26 |     65.9 |   89.09 |   70.26 |                   
  cli.tsx          |   57.15 |    60.12 |   78.57 |   57.15 | ...1264,1272-1291 
  ...st-helpers.ts |     100 |       60 |     100 |     100 | 23-34             
  ...ractiveCli.ts |   90.37 |     84.9 |   86.66 |   90.37 | ...04-209,282-284 
  ...liCommands.ts |   97.18 |    63.63 |     100 |   97.18 | 39-40             
  ...CliSupport.ts |   80.04 |    65.04 |      95 |   80.04 | ...76-478,500-501 
  ...ActiveAuth.ts |      60 |    68.42 |     100 |      60 | ...91-106,110-119 
 src/auth          |   98.07 |       80 |     100 |   98.07 |                   
  ...gs-adapter.ts |   98.07 |       80 |     100 |   98.07 | 76                
 src/commands      |   78.35 |      100 |   44.44 |   78.35 |                   
  extensions.tsx   |   55.88 |      100 |       0 |   55.88 | 25-38,42          
  hooks.ts         |   61.53 |      100 |       0 |   61.53 | 14-17,20          
  mcp.ts           |   94.11 |      100 |      50 |   94.11 | 26                
  skills.tsx       |     100 |      100 |     100 |     100 |                   
  utils.ts         |     100 |      100 |     100 |     100 |                   
 ...nds/extensions |    74.1 |    92.93 |   67.18 |    74.1 |                   
  config.ts        |   94.61 |    91.83 |     100 |   94.61 | ...66-167,196-201 
  disable.ts       |     100 |      100 |     100 |     100 |                   
  enable.ts        |     100 |      100 |     100 |     100 |                   
  install.ts       |   80.48 |    76.92 |    87.5 |   80.48 | ...63,199,202-209 
  link.ts          |   64.81 |    83.33 |      25 |   64.81 | 31,54-65,67-72    
  list.ts          |      90 |      100 |   33.33 |      90 | 35-37             
  new.ts           |     100 |      100 |     100 |     100 |                   
  settings.ts      |   72.13 |      100 |      70 |   72.13 | 32-80,218-222,225 
  uninstall.ts     |   78.43 |      100 |   66.66 |   78.43 | 54-59,62-66       
  update.ts        |   10.19 |      100 |       0 |   10.19 | ...71-190,192-197 
  utils.ts         |   13.33 |      100 |       0 |   13.33 | 29-60             
  validate.ts      |   89.36 |     87.5 |      75 |   89.36 | 50-53,60,112-116  
 .../hooks/scripts |       0 |        0 |       0 |       0 |                   
  on-start.js      |       0 |        0 |       0 |       0 | 1-8               
 ...les/mcp-server |       0 |        0 |       0 |       0 |                   
  example.js       |       0 |        0 |       0 |       0 | 1-60              
 ...commands/hooks |    7.59 |      100 |       0 |    7.59 |                   
  migrate.ts       |    7.59 |      100 |       0 |    7.59 | ...90-200,202-204 
 src/commands/mcp  |   96.95 |    86.15 |   94.44 |   96.95 |                   
  add.ts           |   99.56 |    93.33 |     100 |   99.56 | 142               
  list.ts          |   90.51 |    82.14 |      80 |   90.51 | ...13-115,148-150 
  remove.ts        |     100 |    71.42 |     100 |     100 | 21-25             
 ...ommands/skills |   60.98 |     92.3 |   31.25 |   60.98 |                   
  disable.ts       |      54 |      100 |   33.33 |      54 | 40-52,54-63       
  enable.ts        |   72.22 |      100 |   33.33 |   72.22 | 33-37,39-43       
  install.ts       |   42.69 |      100 |      25 |   42.69 | ...71-100,102-109 
  list.ts          |   84.93 |       80 |   33.33 |   84.93 | ...9,92-96,98-100 
  uninstall.ts     |   57.89 |      100 |   33.33 |   57.89 | 47-64,66-71       
 src/config        |   86.44 |    84.76 |    86.9 |   86.44 |                   
  ...deResolver.ts |   94.54 |    95.23 |     100 |   94.54 | 50-52             
  auth.ts          |   84.61 |    82.35 |     100 |   84.61 | 18-19,22-23,53-54 
  cliArgParser.ts  |   92.85 |    89.36 |     100 |   92.85 | ...24,285,287-290 
  config.ts        |     100 |      100 |     100 |     100 |                   
  configBuilder.ts |   95.41 |    95.52 |   66.66 |   95.41 | ...18-219,260-261 
  ...mentLoader.ts |   83.78 |    60.86 |     100 |   83.78 | ...23-125,133-136 
  extension.ts     |   75.07 |    88.07 |   78.04 |   75.07 | ...12-913,916-917 
  ...iveContext.ts |   93.75 |    91.66 |     100 |   93.75 | 79,81,87-92,232   
  ...iateConfig.ts |   96.39 |    97.05 |     100 |   96.39 | 53,150-152        
  keyBindings.ts   |     100 |      100 |     100 |     100 |                   
  ...rverConfig.ts |   83.33 |    94.44 |     100 |   83.33 | 23-39             
  paths.ts         |     100 |      100 |     100 |     100 |                   
  policy.ts        |   80.76 |      100 |      50 |   80.76 | 47-51             
  ...figRuntime.ts |   88.65 |    84.21 |     100 |   88.65 | ...22-429,440-443 
  ...eBootstrap.ts |   91.78 |     87.8 |   97.22 |   91.78 | ...00-802,811-812 
  ...Resolution.ts |   44.01 |    72.41 |    62.5 |   44.01 | ...65-284,296-304 
  ...pplication.ts |   85.03 |       65 |     100 |   85.03 | ...46,148-154,178 
  ...elResolver.ts |   90.38 |    73.68 |     100 |   90.38 | 40,42-43,70,79    
  sandboxConfig.ts |   69.81 |    51.48 |   88.46 |   69.81 | ...80-581,593-594 
  ...oxProfiles.ts |    8.53 |      100 |       0 |    8.53 | 47-48,51-129      
  settingPaths.ts  |     100 |      100 |     100 |     100 |                   
  ...validation.ts |   86.95 |    80.62 |     100 |   86.95 | ...02,404,406,408 
  settings.ts      |   81.81 |    82.29 |   65.21 |   81.81 | ...40-441,496-497 
  ...ingsLegacy.ts |    70.9 |    81.81 |     100 |    70.9 | 48-52,56-67       
  ...ingsLoader.ts |   94.11 |    81.39 |     100 |   94.11 | ...78,108-109,137 
  settingsMerge.ts |   99.51 |    95.65 |     100 |   99.51 | 128-129           
  ...Migrations.ts |   95.67 |    91.48 |     100 |   95.67 | 22-24,48-49,55-56 
  ...ingsSchema.ts |     100 |      100 |     100 |     100 |                   
  ...Governance.ts |   95.83 |    90.62 |     100 |   95.83 | 54,126-129        
  ...tedFolders.ts |   95.58 |       96 |     100 |   95.58 | 93,120-126        
  welcomeConfig.ts |   22.41 |      100 |       0 |   22.41 | ...71,74-79,82-83 
  yargsOptions.ts  |   98.65 |    94.44 |   85.71 |   98.65 | 116,125-128       
 ...fig/extensions |   76.18 |    84.44 |   87.61 |   76.18 |                   
  consent.ts       |   88.03 |    85.71 |     100 |   88.03 | ...77-378,381-382 
  ...ionConsent.ts |   87.38 |    76.66 |     100 |   87.38 | ...,64-67,113-116 
  ...Enablement.ts |    93.9 |       96 |     100 |    93.9 | ...08-214,277-279 
  ...sionLoader.ts |   93.33 |    89.36 |     100 |   93.33 | ...86-187,195-199 
  ...onSettings.ts |     100 |      100 |     100 |     100 |                   
  github.ts        |   62.19 |    81.73 |   70.83 |   62.19 | ...41-642,652-655 
  hookSchema.ts    |     100 |      100 |     100 |     100 |                   
  ...ntegration.ts |   55.31 |    84.78 |      50 |   55.31 | ...61,402,426-427 
  ...ingsPrompt.ts |      73 |    94.73 |      80 |      73 | 92-121            
  ...ngsStorage.ts |   84.77 |    75.92 |     100 |   84.77 | ...90-291,309-312 
  update.ts        |   69.52 |    52.94 |   85.71 |   69.52 | ...73-201,218-226 
  ...ableSchema.ts |     100 |      100 |     100 |     100 |                   
  variables.ts     |   95.55 |       90 |     100 |   95.55 | 33-34             
 ...ettings-schema |   99.78 |       60 |     100 |   99.78 |                   
  schema-core.ts   |     100 |      100 |     100 |     100 |                   
  ...extensions.ts |     100 |      100 |     100 |     100 |                   
  ...a-security.ts |   99.44 |       50 |     100 |   99.44 | 16-17             
  schema-tail.ts   |   99.52 |       50 |     100 |   99.52 | 13-14             
  schema-ui.ts     |     100 |      100 |     100 |     100 |                   
  schema.ts        |     100 |      100 |     100 |     100 |                   
  types.ts         |     100 |      100 |     100 |     100 |                   
 src/constants     |     100 |      100 |     100 |     100 |                   
  historyLimits.ts |     100 |      100 |     100 |     100 |                   
 src/extensions    |   66.86 |    61.81 |      75 |   66.86 |                   
  ...utoUpdater.ts |   66.86 |    61.81 |      75 |   66.86 | ...56-457,466,468 
 src/generated     |     100 |      100 |     100 |     100 |                   
  git-commit.ts    |     100 |      100 |     100 |     100 |                   
 ...egration-tests |   91.93 |     86.2 |    92.3 |   91.93 |                   
  test-utils.ts    |   91.93 |     86.2 |    92.3 |   91.93 | ...45,263-264,274 
 src/patches       |       0 |        0 |       0 |       0 |                   
  is-in-ci.ts      |       0 |        0 |       0 |       0 | 1-17              
 ...viders/logging |   89.31 |     92.5 |   69.23 |   89.31 |                   
  ...rvice-impl.ts |   44.44 |      100 |       0 |   44.44 | 21-22,25-30,36-37 
  git-stats.ts     |   96.46 |     92.5 |     100 |   96.46 | 154-155,195-196   
 src/runtime       |   97.65 |       92 |     100 |   97.65 |                   
  ...imeAdapter.ts |   97.65 |       92 |     100 |   97.65 | ...18-219,308-309 
 src/services      |   84.56 |    83.63 |   93.93 |   84.56 |                   
  ...mandLoader.ts |   79.75 |       75 |   83.33 |   79.75 | ...10-124,168-186 
  ...andService.ts |     100 |      100 |     100 |     100 |                   
  ...mandLoader.ts |   91.77 |    86.53 |     100 |   91.77 | ...10-215,300-307 
  ...omptLoader.ts |   74.52 |    77.08 |     100 |   74.52 | ...87,202,259-260 
  performResume.ts |   89.11 |    89.18 |     100 |   89.11 | ...61-264,270-271 
  types.ts         |       0 |        0 |       0 |       0 | 1                 
 ...mpt-processors |      98 |    92.98 |     100 |      98 |                   
  ...tProcessor.ts |     100 |      100 |     100 |     100 |                   
  ...lProcessor.ts |   97.88 |    92.45 |     100 |   97.88 | 80-81,265-266     
  types.ts         |     100 |      100 |     100 |     100 |                   
 ...o-continuation |   86.56 |    84.09 |   94.73 |   86.56 |                   
  ...ionService.ts |   86.56 |    84.09 |   94.73 |   86.56 | ...08,575,601-602 
 src/test-utils    |    76.7 |     90.9 |   27.27 |    76.7 |                   
  async.ts         |       0 |        0 |       0 |       0 | 1-34              
  ...eExtension.ts |     100 |      100 |     100 |     100 |                   
  ...omMatchers.ts |   18.75 |      100 |       0 |   18.75 | 17-45             
  ...andContext.ts |     100 |      100 |     100 |     100 |                   
  render.tsx       |   94.84 |    96.66 |      25 |   94.84 | ...51-156,259-260 
  ...e-testing.tsx |       0 |        0 |       0 |       0 | 1-56              
  ...iderConfig.ts |       0 |        0 |       0 |       0 | 1-19              
 src/ui            |   37.77 |    93.44 |   30.48 |   37.77 |                   
  App.tsx          |   37.25 |      100 |       0 |   37.25 | 64-91,97-104      
  AppContainer.tsx |     100 |      100 |     100 |     100 |                   
  ...erRuntime.tsx |   14.28 |      100 |   16.66 |   14.28 | 66-399            
  ...tionNudge.tsx |       8 |      100 |       0 |       8 | 29-104            
  colors.ts        |   37.14 |      100 |   20.33 |   37.14 | ...03-304,306-307 
  constants.ts     |     100 |      100 |     100 |     100 |                   
  debug.ts         |     100 |      100 |     100 |     100 |                   
  ...derOptions.ts |     100 |      100 |     100 |     100 |                   
  keyMatchers.ts   |   88.63 |       84 |     100 |   88.63 | 18,20-21,28-29    
  ...ntsEnabled.ts |     100 |      100 |     100 |     100 |                   
  ...submission.ts |     100 |      100 |     100 |     100 |                   
  ...tic-colors.ts |   78.94 |      100 |      60 |   78.94 | 15-16,24-25       
  textConstants.ts |     100 |      100 |     100 |     100 |                   
  types.ts         |     100 |      100 |     100 |     100 |                   
 src/ui/commands   |   70.02 |    75.23 |   76.53 |   70.02 |                   
  aboutCommand.ts  |   82.84 |    51.51 |   91.66 |   82.84 | ...92-193,195-196 
  authCommand.ts   |   49.52 |    77.33 |   58.33 |   49.52 | ...51-654,665-707 
  ...urlCommand.ts |      30 |      100 |       0 |      30 | 20-40             
  bugCommand.ts    |   71.23 |    30.76 |     100 |   71.23 | ...99-110,145-153 
  chatCommand.ts   |   69.72 |    74.62 |   66.66 |   69.72 | ...50-551,599-610 
  clearCommand.ts  |   88.88 |    88.88 |     100 |   88.88 | 96-103            
  ...essCommand.ts |    97.7 |    89.28 |     100 |    97.7 | 41,63-64          
  ...nueCommand.ts |     100 |      100 |     100 |     100 |                   
  copyCommand.ts   |     100 |      100 |     100 |     100 |                   
  debugCommands.ts |   13.29 |      100 |       0 |   13.29 | ...50,457,464,471 
  ...icsCommand.ts |   74.63 |    49.52 |   94.11 |   74.63 | ...62-565,580-585 
  ...ryCommand.tsx |    89.5 |    84.84 |     100 |    89.5 | ...29-137,204-212 
  docsCommand.ts   |     100 |      100 |     100 |     100 |                   
  ...extCommand.ts |   96.27 |       90 |     100 |   96.27 | 216-221           
  editorCommand.ts |     100 |      100 |     100 |     100 |                   
  ...onsCommand.ts |   41.27 |    88.09 |    62.5 |   41.27 | ...24-381,391-539 
  ...ionSection.ts |   83.33 |    93.33 |     100 |   83.33 | 28-34             
  helpCommand.ts   |     100 |      100 |     100 |     100 |                   
  hooksCommand.ts  |   89.62 |    87.27 |     100 |   89.62 | ...54,344-345,459 
  ideCommand.ts    |   69.87 |    73.52 |   69.23 |   69.87 | ...36-237,240-255 
  initCommand.ts   |   80.26 |    71.42 |   66.66 |   80.26 | 36-40,42-89       
  keyCommand.ts    |   89.87 |    80.76 |     100 |   89.87 | ...92,415-416,515 
  ...ileCommand.ts |    10.9 |      100 |       0 |    10.9 | 22-46,53-141      
  ...ingCommand.ts |   10.27 |      100 |       0 |   10.27 | ...19-572,589-601 
  logoutCommand.ts |   15.87 |      100 |       0 |   15.87 | 21-84             
  lspCommand.ts    |    90.9 |    87.17 |     100 |    90.9 | ...18-123,147-149 
  mcpCommand.ts    |    86.9 |     82.3 |    91.3 |    86.9 | ...65-666,748-753 
  memoryCommand.ts |   87.45 |    75.47 |     100 |   87.45 | ...48,236-250,299 
  modelCommand.ts  |   98.92 |    93.02 |     100 |   98.92 | 120               
  mouseCommand.ts  |     100 |      100 |     100 |     100 |                   
  ...onsCommand.ts |    93.9 |    88.88 |     100 |    93.9 | 58-62             
  ...iesCommand.ts |   97.05 |    80.55 |     100 |   97.05 | 27,40-41          
  ...acyCommand.ts |   61.53 |      100 |       0 |   61.53 | 22-26             
  ...ileCommand.ts |   57.43 |    62.74 |   73.07 |   57.43 | ...1114,1135-1151 
  ...derCommand.ts |   56.96 |    31.57 |   88.88 |   56.96 | ...89-290,299-304 
  quitCommand.ts   |   36.66 |      100 |       0 |   36.66 | 17-36             
  ...oreCommand.ts |   90.16 |    82.85 |     100 |   90.16 | ...69-174,207-212 
  setCommand.ts    |   76.12 |       75 |   81.25 |   76.12 | ...46-551,628-641 
  ...ngsCommand.ts |     100 |      100 |     100 |     100 |                   
  setupCommand.ts  |     100 |      100 |     100 |     100 |                   
  ...hubCommand.ts |   90.47 |    82.85 |     100 |   90.47 | ...13-216,223-227 
  skillsCommand.ts |   82.78 |       75 |     100 |   82.78 | ...91-292,305-306 
  statsCommand.ts  |    71.4 |       70 |      80 |    71.4 | ...57-566,574-655 
  ...entCommand.ts |   76.72 |    69.73 |   81.81 |   76.72 | ...10-616,627-633 
  tasksCommand.ts  |   78.53 |    78.78 |     100 |   78.53 | ...78-186,247-254 
  ...tupCommand.ts |     100 |      100 |     100 |     100 |                   
  themeCommand.ts  |     100 |      100 |     100 |     100 |                   
  todoCommand.ts   |   76.42 |    72.72 |   88.23 |   76.42 | ...1100,1108-1112 
  ...matCommand.ts |   26.66 |      100 |       0 |   26.66 | 33-92             
  ...keyCommand.ts |   98.88 |     92.3 |     100 |   98.88 | 34                
  ...ileCommand.ts |    99.1 |    94.11 |     100 |    99.1 | 36                
  toolsCommand.ts  |   86.56 |    76.47 |     100 |   86.56 | ...59,294,325-326 
  types.ts         |     100 |      100 |     100 |     100 |                   
  ...ileCommand.ts |   27.77 |        0 |       0 |   27.77 | 11-23             
  vimCommand.ts    |   44.44 |      100 |       0 |   44.44 | 15-25             
 ...ommands/schema |   96.27 |    92.99 |    92.3 |   96.27 |                   
  index.ts         |   96.49 |    93.58 |     100 |   96.49 | ...16-420,431-432 
  types.ts         |       0 |        0 |       0 |       0 | 1                 
 src/ui/components |   11.69 |    39.31 |    7.58 |   11.69 |                   
  AboutBox.tsx     |   12.19 |      100 |       0 |   12.19 | ...,76-98,102-130 
  AnsiOutput.tsx   |    8.33 |      100 |       0 |    8.33 | 25-90             
  AppHeader.tsx    |   21.87 |      100 |       0 |   21.87 | 26-56             
  AsciiArt.ts      |     100 |      100 |     100 |     100 |                   
  AuthDialog.tsx   |    4.36 |      100 |       0 |    4.36 | ...38-263,266-347 
  ...nProgress.tsx |       0 |        0 |       0 |       0 | 1-63              
  ...Indicator.tsx |   15.15 |      100 |       0 |   15.15 | 17-47             
  ...firmation.tsx |   15.38 |      100 |       0 |   15.38 | 59-134,143-208    
  ...tsDisplay.tsx |   10.37 |      100 |       0 |   10.37 | ...70-110,114-168 
  CliSpinner.tsx   |       0 |        0 |       0 |       0 | 1-22              
  Composer.tsx     |    7.14 |      100 |       0 |    7.14 | 16-29,42-97       
  ...entPrompt.tsx |   18.75 |      100 |       0 |   18.75 | 21-51             
  ...ryDisplay.tsx |   21.05 |      100 |       0 |   21.05 | 17-35             
  ...ryDisplay.tsx |    4.65 |      100 |       0 |    4.65 | 29-107,110-174    
  ...geDisplay.tsx |       0 |        0 |       0 |       0 | 1-37              
  ...gProfiler.tsx |   16.86 |      100 |       0 |   16.86 | ...73-118,122-224 
  ...esDisplay.tsx |   10.52 |      100 |       0 |   10.52 | 24-82             
  ...ogManager.tsx |    5.54 |      100 |       0 |    5.54 | 71-782,786-810    
  ...ngsDialog.tsx |   12.56 |      100 |       0 |   12.56 | ...48-172,176-247 
  ...rBoundary.tsx |   10.16 |      100 |       0 |   10.16 | ...19-164,182-195 
  ...ustDialog.tsx |   16.34 |      100 |       0 |   16.34 | ...2,70-81,84-143 
  Footer.tsx       |   11.06 |        0 |       0 |   11.06 | ...24-693,698-715 
  ...ngSpinner.tsx |    40.9 |      100 |       0 |    40.9 | 31-47             
  Header.tsx       |    17.5 |      100 |       0 |    17.5 | 22-62             
  Help.tsx         |    6.84 |      100 |       0 |    6.84 | ...87-190,194-206 
  ...emDisplay.tsx |   12.01 |      100 |       0 |   12.01 | 55-239,242-280    
  ...usDisplay.tsx |       0 |        0 |       0 |       0 | 1-47              
  InputPrompt.tsx  |   53.38 |     42.1 |   67.34 |   53.38 | ...1639-1644,1662 
  ...tsDisplay.tsx |    4.36 |      100 |       0 |    4.36 | ...32-226,229-292 
  ...utManager.tsx |       0 |        0 |       0 |       0 | 1-99              
  ...ileDialog.tsx |    8.33 |      100 |       0 |    8.33 | ...8,72-81,85-152 
  ...Indicator.tsx |   13.84 |      100 |       0 |   13.84 | 20-24,34-96       
  ...ingDialog.tsx |    4.92 |      100 |       0 |    4.92 | ...65-382,386-435 
  ...geDisplay.tsx |       0 |        0 |       0 |       0 | 1-41              
  ModelDialog.tsx  |     3.6 |      100 |       0 |     3.6 | ...66-739,743-829 
  ...tsDisplay.tsx |    3.82 |      100 |       0 |    3.82 | 32-205,208-259    
  ...fications.tsx |   17.32 |      100 |       0 |   17.32 | ...11-142,145-180 
  ...odeDialog.tsx |     7.4 |      100 |       0 |     7.4 | 32-141            
  ...ustDialog.tsx |    5.53 |      100 |       0 |    5.53 | ...36-273,278-313 
  PrepareLabel.tsx |   13.33 |      100 |       0 |   13.33 | 20-48             
  ...ailDialog.tsx |   14.15 |      100 |       0 |   14.15 | ...53-359,363-436 
  ...ineEditor.tsx |    4.15 |      100 |       0 |    4.15 | ...68-554,557-632 
  ...istDialog.tsx |     4.6 |      100 |       0 |     4.6 | ...88-525,528-614 
  ...derDialog.tsx |    2.63 |      100 |       0 |    2.63 | 60-408,411-426    
  ...Indicator.tsx |       0 |        0 |       0 |       0 | 1-21              
  ...eKeyInput.tsx |       0 |        0 |       0 |       0 | 1-149             
  ...serDialog.tsx |    9.56 |      100 |       0 |    9.56 | ...52-603,611-670 
  ...ryDisplay.tsx |      50 |      100 |       0 |      50 | 15-17             
  ...ngsDialog.tsx |    1.03 |      100 |       0 |    1.03 | ...1738,1743-2800 
  ...putPrompt.tsx |   14.28 |      100 |       0 |   14.28 | 19-58             
  ...Indicator.tsx |   44.44 |      100 |       0 |   44.44 | 12-17             
  ...MoreLines.tsx |   30.43 |      100 |       0 |   30.43 | 18-38             
  StatsDisplay.tsx |    8.98 |      100 |       0 |    8.98 | ...40-445,449-500 
  ...usDisplay.tsx |       0 |        0 |       0 |       0 | 1-59              
  StickyHeader.tsx |    7.14 |      100 |       0 |    7.14 | 20-78             
  ...nsDisplay.tsx |    5.83 |      100 |       0 |    5.83 | 39-91,105-181     
  Table.tsx        |    7.54 |      100 |       0 |    7.54 | 27-89             
  ThemeDialog.tsx  |    3.96 |      100 |       0 |    3.96 | 51-441,444-500    
  ...dGradient.tsx |      25 |      100 |       0 |      25 | 27-46             
  Tips.tsx         |      16 |      100 |       0 |      16 | 17-45             
  TodoPanel.tsx    |     5.9 |      100 |       0 |     5.9 | ...87-244,247-296 
  ...tsDisplay.tsx |   10.05 |      100 |       0 |   10.05 | ...88-227,230-259 
  ToolsDialog.tsx  |   10.63 |      100 |       0 |   10.63 | ...5,41-47,50-123 
  ...ification.tsx |   36.36 |      100 |       0 |   36.36 | 15-22             
  ...ionDialog.tsx |    6.08 |      100 |       0 |    6.08 | 18-104,110-161    
  todo-utils.ts    |       0 |        0 |       0 |       0 | 1-7               
 ...leCreateWizard |   18.43 |       50 |       0 |   18.43 |                   
  ...aramsStep.tsx |   11.34 |      100 |       0 |   11.34 | ...34-247,259-343 
  ...ationStep.tsx |    7.12 |      100 |       0 |    7.12 | ...08-544,556-624 
  ...onfigStep.tsx |   12.35 |      100 |       0 |   12.35 | 19-25,36-117      
  ...electStep.tsx |    9.73 |      100 |       0 |    9.73 | ...13-280,296-341 
  ...ationMenu.tsx |       0 |        0 |       0 |       0 | 1-102             
  ...eSaveStep.tsx |    7.45 |      100 |       0 |    7.45 | ...76-305,317-396 
  ...ssSummary.tsx |   12.12 |      100 |       0 |   12.12 | 23-88             
  ...electStep.tsx |   16.92 |      100 |       0 |   16.92 | 28-97             
  TextInput.tsx    |    6.56 |      100 |       0 |    6.56 | ...01-111,119-202 
  constants.ts     |     100 |      100 |     100 |     100 |                   
  index.tsx        |   14.51 |      100 |       0 |   14.51 | ...94-223,232-316 
  types.ts         |     100 |      100 |     100 |     100 |                   
  utils.ts         |    5.15 |      100 |       0 |    5.15 | ...53-356,361-378 
  validation.ts    |   11.23 |      100 |       0 |   11.23 | ...97-104,107-111 
 ...gentManagement |    4.22 |      100 |       0 |    4.22 |                   
  ...entWizard.tsx |    2.91 |      100 |       0 |    2.91 | 30-232,237-312    
  ...ionWizard.tsx |    1.44 |      100 |       0 |    1.44 | 30-592,595-676    
  ...eteDialog.tsx |    5.88 |      100 |       0 |    5.88 | 14-94,104-147     
  ...tEditForm.tsx |    1.77 |      100 |       0 |    1.77 | 30-619,622-640    
  ...tListMenu.tsx |    2.94 |      100 |       0 |    2.94 | 17-266,269-350    
  ...tMainMenu.tsx |   16.66 |      100 |       0 |   16.66 | 22-62             
  ...gerDialog.tsx |    2.39 |      100 |       0 |    2.39 | 29-601,604-680    
  ...tShowView.tsx |    4.76 |      100 |       0 |    4.76 | 25-183,186-243    
  index.ts         |     100 |      100 |     100 |     100 |                   
  types.ts         |     100 |      100 |     100 |     100 |                   
 ...comeOnboarding |   14.36 |        0 |       0 |   14.36 |                   
  ...ethodStep.tsx |   22.47 |      100 |       0 |   22.47 | 44-129            
  ...ationStep.tsx |    7.35 |      100 |       0 |    7.35 | ...1,59-95,98-177 
  ...etionStep.tsx |    9.84 |      100 |       0 |    9.84 | ...,89-99,103-179 
  ...electStep.tsx |   12.12 |      100 |       0 |   12.12 | ...3,67-75,79-143 
  ...electStep.tsx |   34.48 |      100 |       0 |   34.48 | 51-120            
  SkipExitStep.tsx |    12.5 |      100 |       0 |    12.5 | 18-59             
  ...omeDialog.tsx |   11.76 |      100 |       0 |   11.76 | 51-118,121-166    
  WelcomeStep.tsx  |    10.2 |      100 |       0 |    10.2 | 23-74             
  index.ts         |       0 |        0 |       0 |       0 | 1-13              
 ...nents/messages |   18.63 |    88.63 |   13.43 |   18.63 |                   
  ...onMessage.tsx |   12.28 |      100 |       0 |   12.28 | 24-86             
  DiffRenderer.tsx |    3.33 |      100 |       0 |    3.33 | ...76-407,410-428 
  ErrorMessage.tsx |   22.22 |      100 |       0 |   22.22 | 16-31             
  ...niMessage.tsx |   14.51 |      100 |       0 |   14.51 | 28-95             
  ...geContent.tsx |   20.83 |      100 |       0 |   20.83 | 26-46             
  InfoMessage.tsx  |   19.23 |      100 |       0 |   19.23 | 19-41             
  ...rlMessage.tsx |   11.36 |      100 |       0 |   11.36 | 18-65             
  ...geMessage.tsx |     100 |      100 |     100 |     100 |                   
  ...ckDisplay.tsx |      20 |      100 |       0 |      20 | 43-64             
  ...onMessage.tsx |    3.18 |      100 |       0 |    3.18 | 40-524,537-616    
  ...upMessage.tsx |     7.5 |      100 |       0 |     7.5 | ...73-270,274-349 
  ToolMessage.tsx  |    4.38 |      100 |       0 |    4.38 | 40-340,356-426    
  ...ltDisplay.tsx |   91.53 |    85.71 |     100 |   91.53 | 39-53,222-224     
  ToolShared.tsx   |   64.61 |       90 |   33.33 |   64.61 | 78-99,102-105     
  UserMessage.tsx  |     100 |      100 |     100 |     100 |                   
  ...llMessage.tsx |   36.36 |      100 |       0 |   36.36 | 17-25             
  ...ngMessage.tsx |   26.31 |      100 |       0 |   26.31 | 17-32             
 ...ponents/shared |   41.16 |    63.55 |   40.25 |   41.16 |                   
  ...ctionList.tsx |    4.31 |      100 |       0 |    4.31 | 36-123,128-206    
  MaxSizedBox.tsx  |   49.89 |     58.1 |      75 |   49.89 | ...63-666,670-673 
  ...tonSelect.tsx |   12.76 |      100 |       0 |   12.76 | 66-113            
  ...lableList.tsx |    5.15 |      100 |       0 |    5.15 | 40-267            
  ...ist.hooks.tsx |    3.84 |      100 |       0 |    3.84 | ...68-793,796-833 
  ...lizedList.tsx |   11.11 |      100 |       0 |   11.11 | 28-108            
  ...List.types.ts |     100 |      100 |     100 |     100 |                   
  ...operations.ts |   75.54 |    48.14 |     100 |   75.54 | ...32-233,256-265 
  ...er-reducer.ts |   28.25 |    51.11 |   33.33 |   28.25 | ...30,632,644,687 
  buffer-types.ts  |     100 |      100 |     100 |     100 |                   
  text-buffer.ts   |   71.75 |    89.18 |   27.86 |   71.75 | ...35-637,656-662 
  ...formations.ts |   42.42 |    71.42 |      80 |   42.42 | ...28-135,159-205 
  ...n-handlers.ts |   33.99 |    61.53 |   23.25 |   33.99 | ...47-755,758-762 
  ...er-actions.ts |   93.84 |     87.5 |     100 |   93.84 | 91-93,100         
  visual-layout.ts |    90.2 |    71.73 |     100 |    90.2 | ...48-350,372-373 
  ...navigation.ts |   53.01 |    60.93 |   73.68 |   53.01 | ...40-361,384-406 
 ...mponents/views |    8.89 |      100 |       0 |    8.89 |                   
  ChatList.tsx     |    14.7 |      100 |       0 |    14.7 | 18-53             
  ...sionsList.tsx |    7.59 |      100 |       0 |    7.59 | 19-103            
  HooksList.tsx    |    10.1 |      100 |       0 |    10.1 | ...15-126,129-144 
  SkillsList.tsx   |    5.79 |      100 |       0 |    5.79 | 18-103            
 src/ui/constants  |   55.78 |     90.9 |      50 |   55.78 |                   
  ...ollections.ts |     100 |      100 |     100 |     100 |                   
  tips.ts          |       0 |        0 |       0 |       0 | 1-164             
 src/ui/containers |       0 |        0 |       0 |       0 |                   
  ...ontroller.tsx |       0 |        0 |       0 |       0 | 1-362             
  UIStateShell.tsx |       0 |        0 |       0 |       0 | 1-15              
 ...ainer/builders |   98.38 |      100 |   83.33 |   98.38 |                   
  ...dUIActions.ts |     100 |      100 |     100 |     100 |                   
  buildUIState.ts  |     100 |      100 |     100 |     100 |                   
  ...onsBuilder.ts |   66.66 |      100 |       0 |   66.66 | 21-22             
  ...ateBuilder.ts |   66.66 |      100 |       0 |   66.66 | 21-22             
 ...ontainer/hooks |   55.17 |     87.1 |   56.52 |   55.17 |                   
  ...pBootstrap.ts |   94.71 |    58.33 |     100 |   94.71 | ...20-223,227-229 
  useAppDialogs.ts |   41.37 |      100 |   42.85 |   41.37 | ...63,182-398,418 
  ...ntHandlers.ts |     100 |      100 |     100 |     100 |                   
  useAppInput.ts   |    5.55 |      100 |       0 |    5.55 | 100-521,524-528   
  useAppLayout.ts  |    7.92 |      100 |       0 |    7.92 | 92-299,302-305    
  ...reenAction.ts |   13.63 |      100 |       0 |   13.63 | 23-42             
  ...nSelection.ts |      20 |      100 |       0 |      20 | 27-48             
  ...hestration.ts |     100 |      100 |     100 |     100 |                   
  ...references.ts |      10 |      100 |       0 |      10 | 51-104            
  ...itHandling.ts |   89.79 |      100 |     100 |   89.79 | 131-139,143       
  ...textBridge.ts |   33.33 |      100 |       0 |   33.33 | 23-30             
  ...tartHotkey.ts |   26.66 |      100 |       0 |   26.66 | 23-33             
  ...omptSubmit.ts |     100 |      100 |     100 |     100 |                   
  ...utHandling.ts |   98.37 |     91.3 |     100 |   98.37 | 53,167            
  ...yBootstrap.ts |      30 |      100 |       0 |      30 | 28-34             
  ...eybindings.ts |   86.28 |    78.18 |     100 |   86.28 | ...06-208,252-253 
  ...easurement.ts |   15.38 |      100 |       0 |   15.38 | 45-95             
  ...reshAction.ts |   79.16 |     37.5 |     100 |   79.16 | 51,82-85,87-96    
  ...untimeSync.ts |     100 |      100 |     100 |     100 |                   
  ...elTracking.ts |   26.22 |      100 |      50 |   26.22 | 20-24,60-113      
  ...laceholder.ts |      15 |      100 |       0 |      15 | 13-18,21-34       
  ...rorTimeout.ts |   17.64 |      100 |       0 |   17.64 | 24-39             
  ...astructure.ts |   73.91 |      100 |      20 |   73.91 | 53,57,61,75-83    
  ...ebugLogger.ts |   17.24 |      100 |       0 |   17.24 | 23-51             
  ...ialization.ts |   70.45 |    84.61 |   66.66 |   70.45 | ...,72-94,127-128 
  ...sAutoReset.ts |     100 |       90 |     100 |     100 | 44                
  ...andActions.ts |     100 |      100 |     100 |     100 |                   
  ...eshManager.ts |     100 |      100 |     100 |     100 |                   
  ...uationFlow.ts |    7.93 |      100 |       0 |    7.93 | 54-150            
  ...csTracking.ts |    95.8 |    80.64 |     100 |    95.8 | ...32-133,184-185 
  ...uthBridges.ts |   17.94 |      100 |   33.33 |   17.94 | ...13-138,142-146 
 src/ui/contexts   |   52.76 |    79.45 |   51.68 |   52.76 |                   
  ...chContext.tsx |   88.23 |    66.66 |     100 |   88.23 | 27-28             
  FocusContext.tsx |       0 |        0 |       0 |       0 | 1-11              
  ...ssContext.tsx |   83.75 |    86.62 |    87.5 |   83.75 | ...19-522,575-576 
  MouseContext.tsx |   78.82 |       75 |      80 |   78.82 | ...00-101,111-117 
  ...erContext.tsx |       0 |        0 |       0 |       0 | 1-127             
  ...owContext.tsx |   21.42 |      100 |   33.33 |   21.42 | 34,40-88          
  ...meContext.tsx |   52.34 |       40 |   57.14 |   52.34 | ...95-196,201-202 
  ...lProvider.tsx |   92.05 |    73.84 |     100 |   92.05 | ...85-486,498-499 
  ...onContext.tsx |     4.4 |      100 |       0 |     4.4 | ...40-395,400-407 
  ...teContext.tsx |       0 |        0 |       0 |       0 | 1-57              
  ...gsContext.tsx |      50 |      100 |       0 |      50 | 15-20             
  ...ngContext.tsx |   42.85 |      100 |       0 |   42.85 | 15-22             
  TodoContext.tsx  |   54.54 |      100 |       0 |   54.54 | 28-31,33-36,39-40 
  TodoProvider.tsx |    3.37 |      100 |       0 |    3.37 | 27-167,170-200    
  ...llContext.tsx |     100 |      100 |       0 |     100 |                   
  ...lProvider.tsx |    6.75 |      100 |       0 |    6.75 | 24-118            
  ...nsContext.tsx |      25 |      100 |       0 |      25 | 203-214,217-222   
  ...teContext.tsx |      50 |       50 |      50 |      50 | 251-260,265-266   
  ...deContext.tsx |   11.11 |      100 |       0 |   11.11 | 30-82,85-90       
 src/ui/editors    |   98.18 |     87.5 |     100 |   98.18 |                   
  ...ngsManager.ts |   98.18 |     87.5 |     100 |   98.18 | 59                
 src/ui/hooks      |   67.24 |    86.46 |   72.18 |   67.24 |                   
  ...dProcessor.ts |    88.2 |    87.03 |   83.33 |    88.2 | ...73-175,236-248 
  ...sorHelpers.ts |    78.8 |     77.5 |   88.88 |    78.8 | ...22-823,851-857 
  ...etionUtils.ts |   53.36 |    88.23 |   64.28 |   53.36 | 57-207,335        
  index.ts         |       0 |        0 |       0 |       0 | 1-9               
  keyToAnsi.ts     |    3.92 |      100 |       0 |    3.92 | 21-79             
  ...etionUtils.ts |     100 |    66.66 |     100 |     100 | 49                
  ...dProcessor.ts |   96.29 |       80 |     100 |   96.29 | ...74-275,407-411 
  ...ndHandlers.ts |    1.63 |      100 |       0 |    1.63 | 77-660            
  ...dPathUtils.ts |    95.7 |    90.21 |     100 |    95.7 | ...25-227,271-272 
  ...dProcessor.ts |     100 |      100 |     100 |     100 |                   
  ...sorSupport.ts |   68.72 |    70.83 |   66.66 |   68.72 | ...82-285,303-310 
  ...tionEffect.ts |   90.76 |     91.3 |   92.85 |   90.76 | ...04-405,418-419 
  ...etionTypes.ts |       0 |        0 |       0 |       0 | 1                 
  toolMapping.ts   |   90.76 |    93.33 |   93.33 |   90.76 | ...95-207,226-228 
  ...nateBuffer.ts |      50 |      100 |       0 |      50 | 16-18             
  ...dScrollbar.ts |   97.82 |      100 |     100 |   97.82 | 153-155           
  ...Completion.ts |   93.03 |    88.27 |     100 |   93.03 | ...02-603,606-607 
  ...uthCommand.ts |   96.42 |    66.66 |     100 |   96.42 | 21                
  ...tIndicator.ts |     100 |     92.3 |     100 |     100 | 57                
  useBanner.ts     |     100 |    83.33 |     100 |     100 | 22,48             
  ...chedScroll.ts |   16.66 |      100 |       0 |   16.66 | 14-32             
  ...ketedPaste.ts |      20 |      100 |       0 |      20 | 20-38             
  ...ompletion.tsx |   97.24 |    82.75 |    90.9 |   97.24 | ...04-206,209-210 
  useCompletion.ts |    92.4 |     87.5 |     100 |    92.4 | 68-69,93-94,98-99 
  ...leMessages.ts |   96.15 |       90 |     100 |   96.15 | 56-57,63          
  ...ntHandlers.ts |   31.25 |      100 |     100 |   31.25 | 43-70,74-82       
  ...fileDialog.ts |   16.12 |      100 |       0 |   16.12 | 17-47             
  ...orSettings.ts |   11.86 |      100 |       0 |   11.86 | 31-87             
  ...AutoUpdate.ts |    8.33 |      100 |       0 |    8.33 | 18-64             
  ...ionUpdates.ts |   75.17 |    80.64 |   77.77 |   75.17 | ...60-261,289-303 
  ...erDetector.ts |     100 |      100 |     100 |     100 |                   
  useFocus.ts      |     100 |      100 |     100 |     100 |                   
  ...olderTrust.ts |   87.09 |     91.3 |     100 |   87.09 | 50-63,135-136     
  ...BranchName.ts |     100 |    89.47 |     100 |     100 | 60,63             
  ...oryManager.ts |   96.61 |    93.18 |     100 |   96.61 | ...70-171,214-215 
  ...splayState.ts |     100 |      100 |     100 |     100 |                   
  ...stListener.ts |   12.12 |      100 |       0 |   12.12 | 17-50             
  ...ivityTimer.ts |   76.19 |    66.66 |     100 |   76.19 | 30-35             
  ...putHistory.ts |    92.5 |    85.71 |     100 |    92.5 | 62-63,71,93-95    
  ...storyStore.ts |     100 |    94.11 |     100 |     100 | 67                
  useKeypress.ts   |   22.22 |      100 |       0 |   22.22 | 21-36             
  ...rdProtocol.ts |       0 |        0 |       0 |       0 | 1-26              
  ...fileDialog.ts |     5.3 |      100 |       0 |     5.3 | 26-72,75-148      
  ...gIndicator.ts |     100 |      100 |     100 |     100 |                   
  useLogger.ts     |   93.75 |      100 |     100 |   93.75 | 27                
  useMcpStatus.ts  |   90.69 |    66.66 |     100 |   90.69 | 19,33-35          
  ...oryMonitor.ts |     100 |      100 |     100 |     100 |                   
  ...ssageQueue.ts |     100 |      100 |     100 |     100 |                   
  useMouse.ts      |   77.77 |    66.66 |     100 |   77.77 | 31-34             
  useMouseClick.ts |     100 |      100 |     100 |     100 |                   
  ...eSelection.ts |     2.2 |      100 |       0 |     2.2 | 36-367,370-416    
  ...hestration.ts |     100 |      100 |     100 |     100 |                   
  ...oviderInfo.ts |       0 |        0 |       0 |       0 | 1-86              
  ...odifyTrust.ts |    9.09 |      100 |       0 |    9.09 | 43-134            
  ...raseCycler.ts |   79.72 |    73.33 |     100 |   79.72 | ...69,75-76,92-94 
  ...cySettings.ts |   86.72 |    83.33 |     100 |   86.72 | ...,95-99,127-138 
  ...Management.ts |    1.53 |      100 |       0 |    1.53 | 24-570,573-665    
  ...Completion.ts |   42.85 |    55.55 |      50 |   42.85 | ...89-302,333-342 
  ...iderDialog.ts |    5.66 |      100 |       0 |    5.66 | 45-83,86-158      
  ...lScheduler.ts |   79.32 |    81.69 |   77.41 |   79.32 | ...65,594,610-626 
  ...oryCommand.ts |       0 |        0 |       0 |       0 | 1-7               
  useResponsive.ts |     100 |      100 |     100 |     100 |                   
  ...ompletion.tsx |   69.56 |      100 |     100 |   69.56 | 45-47,51-66,78-81 
  useRewind.ts     |     100 |      100 |     100 |     100 |                   
  ...ectionList.ts |   89.78 |    88.88 |     100 |   89.78 | ...19-425,445-449 
  useSession.ts    |       0 |        0 |       0 |       0 | 1-23              
  ...ionBrowser.ts |     100 |      100 |     100 |     100 |                   
  ...serHelpers.ts |   95.79 |    85.21 |   97.36 |   95.79 | ...39-641,764-765 
  ...erKeypress.ts |   89.87 |     97.1 |   94.11 |   89.87 | 101-108,130-145   
  ...ngsCommand.ts |   18.75 |      100 |       0 |   18.75 | 10-25             
  ...ellHistory.ts |   92.03 |    78.78 |     100 |   92.03 | ...77,125-126,136 
  ...Completion.ts |   97.04 |    81.25 |     100 |   97.04 | 71-73,101-102     
  ...oryCommand.ts |       0 |        0 |       0 |       0 | 1-63              
  ...cessorCore.ts |   73.91 |       60 |     100 |   73.91 | ...18,154,174-201 
  ...ompletion.tsx |   96.73 |    81.39 |     100 |   96.73 | ...,92-93,335-343 
  ...leCallback.ts |     100 |      100 |     100 |     100 |                   
  ...tateAndRef.ts |   59.09 |      100 |     100 |   59.09 | 23-31             
  ...oryRefresh.ts |     100 |      100 |     100 |     100 |                   
  ...rminalSize.ts |   10.34 |      100 |       0 |   10.34 | 15-44,49-85       
  ...emeCommand.ts |    4.29 |      100 |       0 |    4.29 | 25-122,125-199    
  useTimer.ts      |    87.5 |    85.71 |     100 |    87.5 | 44-45,50-52       
  ...ntinuation.ts |   91.28 |    89.74 |     100 |   91.28 | ...25-126,153-163 
  ...ePreserver.ts |   57.14 |      100 |      80 |   57.14 | 58-76             
  ...oolsDialog.ts |    3.44 |      100 |       0 |    3.44 | 23-106,109-193    
  ...Onboarding.ts |    1.92 |      100 |       0 |    1.92 | 77-402,405-486    
  ...eMigration.ts |   11.66 |      100 |       0 |   11.66 | 15-74             
  vim.ts           |   85.73 |    87.17 |    90.9 |   85.73 | ...09-718,834-836 
 ...s/geminiStream |   86.15 |     77.2 |   92.45 |   86.15 |                   
  ...ersistence.ts |   98.29 |    95.12 |     100 |   98.29 | 162-164           
  ...tProcessor.ts |   77.85 |    70.83 |      80 |   77.85 | ...48-159,162-164 
  index.ts         |     100 |      100 |     100 |     100 |                   
  queryPreparer.ts |   63.15 |    18.18 |     100 |   63.15 | ...26-127,130-143 
  ...Dispatcher.ts |   83.05 |    60.37 |     100 |   83.05 | ...04,389,438-440 
  streamUtils.ts   |   99.03 |    95.23 |     100 |   99.03 | 376-378           
  thoughtState.ts  |   93.33 |    61.53 |     100 |   93.33 | 71-72,77-78       
  ...ionHandler.ts |   73.83 |    89.18 |     100 |   73.83 | ...01-308,342-348 
  types.ts         |     100 |      100 |     100 |     100 |                   
  ...miniStream.ts |   99.33 |    88.23 |   85.71 |   99.33 | 87                
  ...mLifecycle.ts |   71.92 |    71.42 |   55.55 |   71.92 | ...21-231,248-253 
  ...hestration.ts |   99.51 |    88.88 |     100 |   99.51 | 213               
  ...ntHandlers.ts |   83.49 |    82.35 |     100 |   83.49 | ...32-438,447-456 
  ...treamState.ts |   79.76 |    52.17 |     100 |   79.76 | ...79,200,237-238 
  ...ubmitQuery.ts |   89.45 |    63.46 |   81.81 |   89.45 | ...49,388,455-457 
 src/ui/layouts    |   83.46 |    55.17 |   82.75 |   83.46 |                   
  ...AppLayout.tsx |   80.98 |    71.42 |   83.33 |   80.98 | ...88-202,318-356 
  ...utHelpers.tsx |    84.6 |    52.94 |    82.6 |    84.6 | ...02-803,824-852 
 ...noninteractive |      75 |      100 |    6.66 |      75 |                   
  ...eractiveUi.ts |      75 |      100 |    6.66 |      75 | 17-19,23-24,27-28 
 src/ui/privacy    |   19.41 |        0 |       0 |   19.41 |                   
  ...acyNotice.tsx |       0 |        0 |       0 |       0 | 1-139             
  ...acyNotice.tsx |       0 |        0 |       0 |       0 | 1-59              
  ...acyNotice.tsx |   12.19 |      100 |       0 |   12.19 | 16-62             
  ...acyNotice.tsx |   35.42 |      100 |       0 |   35.42 | 77-172,180-235    
  ...acyNotice.tsx |   19.35 |      100 |       0 |   19.35 | 21-52,55-57       
 src/ui/reducers   |    79.5 |    91.66 |      50 |    79.5 |                   
  appReducer.ts    |     100 |      100 |     100 |     100 |                   
  ...ionReducer.ts |       0 |        0 |       0 |       0 | 1-52              
 src/ui/state      |   54.34 |    30.76 |     100 |   54.34 |                   
  extensions.ts    |   54.34 |    30.76 |     100 |   54.34 | ...30,132-144,146 
 src/ui/themes     |   99.03 |    84.74 |   97.22 |   99.03 |                   
  ansi-light.ts    |     100 |      100 |     100 |     100 |                   
  ansi.ts          |     100 |      100 |     100 |     100 |                   
  atom-one-dark.ts |     100 |      100 |     100 |     100 |                   
  ayu-light.ts     |     100 |      100 |     100 |     100 |                   
  ayu.ts           |     100 |      100 |     100 |     100 |                   
  color-utils.ts   |     100 |      100 |     100 |     100 |                   
  default-light.ts |     100 |      100 |     100 |     100 |                   
  default.ts       |     100 |      100 |     100 |     100 |                   
  dracula.ts       |     100 |      100 |     100 |     100 |                   
  github-dark.ts   |     100 |      100 |     100 |     100 |                   
  github-light.ts  |     100 |      100 |     100 |     100 |                   
  googlecode.ts    |     100 |      100 |     100 |     100 |                   
  green-screen.ts  |     100 |      100 |     100 |     100 |                   
  no-color.ts      |     100 |      100 |     100 |     100 |                   
  ...c-resolver.ts |     100 |      100 |     100 |     100 |                   
  ...tic-tokens.ts |     100 |      100 |     100 |     100 |                   
  ...-of-purple.ts |     100 |      100 |     100 |     100 |                   
  theme-compat.ts  |     100 |       50 |     100 |     100 | 79                
  theme-manager.ts |   88.55 |    82.81 |     100 |   88.55 | ...03-312,317-318 
  theme.ts         |   98.96 |       80 |    90.9 |   98.96 | 284-285,642-643   
  xcode.ts         |     100 |      100 |     100 |     100 |                   
 src/ui/types      |       0 |        0 |       0 |       0 |                   
  ...ngMetadata.ts |       0 |        0 |       0 |       0 |                   
 src/ui/utils      |   53.61 |    86.94 |   66.22 |   53.61 |                   
  ...Colorizer.tsx |    5.64 |      100 |       0 |    5.64 | ...27-168,180-249 
  ...olePatcher.ts |   72.09 |      100 |   83.33 |   72.09 | 51-62             
  ...nRenderer.tsx |   10.77 |      100 |      10 |   10.77 | 28-210,213-278    
  ...wnDisplay.tsx |     3.4 |      100 |       0 |     3.4 | ...06-731,742-746 
  ...eRenderer.tsx |   10.46 |      100 |       0 |   10.46 | ...29-380,387-420 
  ...tGenerator.ts |    76.4 |    53.84 |      60 |    76.4 | ...63,69-72,84-85 
  ...ketedPaste.ts |      60 |      100 |       0 |      60 | 13-14,17-18       
  clipboard.ts     |   97.29 |    84.61 |     100 |   97.29 | 40                
  ...boardUtils.ts |   63.09 |    76.74 |   83.33 |   63.09 | ...52-264,334-336 
  commandUtils.ts  |   93.08 |     95.4 |   95.83 |   93.08 | ...36-240,321-329 
  computeStats.ts  |     100 |      100 |     100 |     100 |                   
  displayUtils.ts  |     100 |      100 |     100 |     100 |                   
  formatters.ts    |   90.47 |    95.23 |     100 |   90.47 | 57-60             
  fuzzyFilter.ts   |     100 |    96.55 |     100 |     100 | 84                
  highlight.ts     |   77.51 |    97.29 |      60 |   77.51 | 145-171,175-180   
  ...xportUtils.ts |   98.03 |    91.66 |     100 |   98.03 | 113-114           
  ...storyItems.ts |   99.04 |    94.44 |     100 |   99.04 | 72                
  input.ts         |   64.51 |    85.71 |   33.33 |   64.51 | 20-27,53-60       
  isNarrowWidth.ts |      50 |      100 |       0 |      50 | 13-14             
  ...nUtilities.ts |   66.66 |     87.5 |     100 |   66.66 | 75-94,103-104     
  mouse.ts         |   83.51 |    71.92 |     100 |   83.51 | ...01,208,221-222 
  ...mConstants.ts |     100 |      100 |     100 |     100 |                   
  ...opDetector.ts |       0 |        0 |       0 |       0 | 1-210             
  responsive.ts    |    69.9 |    73.33 |      80 |    69.9 | ...99-107,110-125 
  rewindFileOps.ts |   91.84 |    66.66 |     100 |   91.84 | ...15-218,262-266 
  ...putHandler.ts |   83.21 |    86.79 |     100 |   83.21 | ...32-141,235-236 
  ...ityManager.ts |    94.8 |    85.71 |    90.9 |    94.8 | ...24,348,376,387 
  ...alContract.ts |     100 |      100 |     100 |     100 |                   
  terminalLinks.ts |     100 |      100 |     100 |     100 |                   
  ...colCleanup.ts |   95.45 |       75 |     100 |   95.45 | 39                
  ...lSequences.ts |     100 |      100 |     100 |     100 |                   
  terminalSetup.ts |    3.69 |      100 |       0 |    3.69 | 44-398            
  textUtils.ts     |   95.27 |    92.15 |   88.88 |   95.27 | 20-25             
  ...Formatters.ts |       0 |        0 |       0 |       0 | 1-50              
  ...icsTracker.ts |     100 |    94.44 |     100 |     100 | 38                
  ui-sizing.ts     |      16 |      100 |       0 |      16 | 11-23,26-36       
  updateCheck.ts   |     100 |    94.11 |     100 |     100 | 34,45             
 src/utils         |   61.08 |    89.32 |   74.57 |   61.08 |                   
  ...ionContext.ts |   76.92 |       75 |     100 |   76.92 | 38-41,63-66,81-84 
  ...Formatting.ts |     100 |      100 |     100 |     100 |                   
  bootstrap.ts     |     100 |      100 |     100 |     100 |                   
  checks.ts        |   33.33 |      100 |       0 |   33.33 | 23-28             
  cleanup.ts       |   67.74 |       80 |      60 |   67.74 | ...66-68,71,85-94 
  commands.ts      |      50 |    63.63 |     100 |      50 | 25-26,45,57-85    
  commentJson.ts   |    92.3 |     92.5 |     100 |    92.3 | 94-102            
  ...ScopeUtils.ts |   27.58 |      100 |       0 |   27.58 | 24-41,58-86       
  ...icSettings.ts |   92.53 |    91.66 |     100 |   92.53 | 55-56,61-64,67-70 
  ...arResolver.ts |   96.66 |    96.29 |     100 |   96.66 | 116-117           
  errors.ts        |   94.87 |       88 |     100 |   94.87 | 54-55,96-97       
  events.ts        |     100 |      100 |     100 |     100 |                   
  ...lativeTime.ts |     100 |      100 |     100 |     100 |                   
  gitUtils.ts      |   93.54 |       85 |     100 |   93.54 | 63-64,79-82       
  ...AutoUpdate.ts |   69.25 |    80.76 |   77.77 |   69.25 | ...65-266,280-345 
  ...lationInfo.ts |   99.49 |     98.3 |     100 |   99.49 | 61                
  math.ts          |   66.66 |      100 |       0 |   66.66 | 15                
  ...stentState.ts |   95.31 |    84.21 |     100 |   95.31 | 42,63-64          
  readStdin.ts     |   81.03 |    91.66 |   83.33 |   81.03 | 32-39,51-53       
  relaunch.ts      |     100 |      100 |     100 |     100 |                   
  resolvePath.ts   |   66.66 |       25 |     100 |   66.66 | 12-13,16,18-19    
  sandbox.ts       |   27.99 |    88.13 |   41.89 |   27.99 | ...0-961,979-2425 
  ...ionCleanup.ts |   86.64 |       84 |     100 |   86.64 | ...48-249,332-333 
  sessionUtils.ts  |     8.1 |      100 |       0 |     8.1 | 51-118,125-139    
  settingsUtils.ts |   85.67 |    91.34 |   94.28 |   85.67 | ...61-489,528-529 
  ...ttingSaver.ts |    1.92 |      100 |       0 |    1.92 | 11-32,40-85       
  skillSettings.ts |   86.13 |       88 |     100 |   86.13 | 99-107,134-138    
  skillUtils.ts    |   64.51 |    63.33 |   83.33 |   64.51 | ...98-199,206-227 
  spawnWrapper.ts  |     100 |      100 |     100 |     100 |                   
  ...upWarnings.ts |     100 |      100 |     100 |     100 |                   
  stdinSafety.ts   |   91.39 |    86.48 |     100 |   91.39 | ...66-167,170,245 
  terminalTheme.ts |     100 |      100 |     100 |     100 |                   
  ...entEmitter.ts |     100 |      100 |     100 |     100 |                   
  ...upWarnings.ts |     100 |      100 |     100 |     100 |                   
  version.ts       |     100 |      100 |     100 |     100 |                   
  windowTitle.ts   |     100 |      100 |     100 |     100 |                   
 src/utils/privacy |   46.91 |    69.44 |      55 |   46.91 |                   
  ...taRedactor.ts |   60.96 |    71.42 |   57.89 |   60.96 | ...28-530,536-557 
  ...acyManager.ts |       0 |        0 |       0 |       0 | 1-176             
 ...ed-integration |    8.48 |     92.3 |   10.52 |    8.48 |                   
  ...temService.ts |     100 |      100 |     100 |     100 |                   
  ...ntegration.ts |    6.81 |     87.5 |    5.55 |    6.81 | ...2032,2047-2117 
-------------------|---------|----------|---------|---------|-------------------
Core Package - Full Text Report
-------------------|---------|----------|---------|---------|-------------------
File               | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s 
-------------------|---------|----------|---------|---------|-------------------
All files          |   75.87 |    82.69 |   71.97 |   75.87 |                   
 src               |     100 |      100 |     100 |     100 |                   
  ...-factories.ts |     100 |      100 |     100 |     100 |                   
  index.ts         |     100 |      100 |     100 |     100 |                   
 src/__mocks__/fs  |       0 |        0 |       0 |       0 |                   
  promises.ts      |       0 |        0 |       0 |       0 | 1-48              
 src/adapters      |     100 |      100 |     100 |     100 |                   
  ...eamAdapter.ts |     100 |      100 |     100 |     100 |                   
 src/code_assist   |   69.33 |    81.27 |   77.41 |   69.33 |                   
  codeAssist.ts    |   11.76 |      100 |       0 |   11.76 | 16-62,65-73,81-94 
  converter.ts     |   95.54 |    93.02 |     100 |   95.54 | 186-190,219-220   
  ...al-storage.ts |   97.39 |    76.31 |     100 |   97.39 | 76,103,132        
  oauth2.ts        |   65.16 |    79.59 |   81.81 |   65.16 | ...88-789,794-795 
  server.ts        |   48.16 |    72.72 |      50 |   48.16 | ...10-251,254-257 
  setup.ts         |   86.09 |    76.92 |     100 |   86.09 | ...60-162,187-193 
  types.ts         |     100 |      100 |     100 |     100 |                   
 src/commands      |     100 |      100 |     100 |     100 |                   
  extensions.ts    |     100 |      100 |     100 |     100 |                   
  types.ts         |     100 |      100 |     100 |     100 |                   
 src/config        |   70.56 |    77.46 |   57.23 |   70.56 |                   
  config.ts        |   65.21 |    74.25 |   60.52 |   65.21 | ...49-858,884-888 
  configBase.ts    |    66.5 |    70.45 |   72.72 |    66.5 | ...58-265,267-271 
  ...igBaseCore.ts |   70.13 |    94.28 |    45.2 |   70.13 | ...54-755,757-758 
  ...onstructor.ts |   96.56 |     88.7 |     100 |   96.56 | ...58-459,462-463 
  configTypes.ts   |      58 |      100 |      50 |      58 | 196-236           
  constants.ts     |     100 |      100 |     100 |     100 |                   
  endpoints.ts     |     100 |      100 |     100 |     100 |                   
  ...ngsHelpers.ts |   62.16 |       40 |     100 |   62.16 | ...31,35-36,42-43 
  index.ts         |       0 |        0 |       0 |       0 | 1-41              
  ...ntegration.ts |   61.51 |    73.46 |   68.75 |   61.51 | ...82,399,408,417 
  models.ts        |     100 |      100 |     100 |     100 |                   
  ...rSingleton.ts |   76.22 |    70.37 |   56.25 |   76.22 | ...94,397-400,408 
  ...entManager.ts |   51.36 |     67.5 |   65.21 |   51.36 | ...94-695,713-737 
  ...tryFactory.ts |   82.54 |    75.92 |   69.23 |   82.54 | ...89-505,515-525 
  types.ts         |       0 |        0 |       0 |       0 |                   
 ...nfirmation-bus |   83.33 |       50 |      50 |   83.33 |                   
  index.ts         |       0 |        0 |       0 |       0 | 1-2               
  message-bus.ts   |     100 |      100 |     100 |     100 |                   
  types.ts         |     100 |      100 |     100 |     100 |                   
 src/core          |   80.26 |     76.2 |   82.08 |   80.26 |                   
  ...ssionTypes.ts |   68.42 |      100 |      20 |   68.42 | ...05-107,112-113 
  ...ntContract.ts |     100 |      100 |     100 |     100 |                   
  ...tGenerator.ts |     100 |       96 |     100 |     100 | 96                
  ...okTriggers.ts |   43.27 |    55.55 |      60 |   43.27 | ...76-277,301-306 
  geminiRequest.ts |      60 |      100 |       0 |      60 | 18-19             
  ...nAIWrapper.ts |   77.77 |      100 |   66.66 |   77.77 | 58-61,64-67       
  ...okTriggers.ts |   96.21 |     87.5 |     100 |   96.21 | ...19,165,219,268 
  logger.ts        |   81.06 |    81.81 |     100 |   81.06 | ...70-385,432-446 
  prompts.ts       |   81.96 |    52.94 |   89.47 |   81.96 | ...23,526,587-588 
  subagentTypes.ts |     100 |      100 |   83.33 |     100 |                   
  tokenLimits.ts   |   88.76 |     75.4 |     100 |   88.76 | ...87,101,105,115 
  ...erContract.ts |     100 |      100 |     100 |     100 |                   
  turn.ts          |     100 |      100 |     100 |     100 |                   
 ...re/compression |   33.55 |       50 |   16.66 |   33.55 |                   
  ...nDirective.ts |    6.25 |      100 |       0 |    6.25 | 22-62             
  types.ts         |   41.02 |       50 |      20 |   41.02 | ...43-377,388-389 
 src/debug         |   61.53 |        0 |       0 |   61.53 |                   
  ...ionManager.ts |     100 |      100 |     100 |     100 |                   
  DebugLogger.ts   |     100 |      100 |     100 |     100 |                   
  FileOutput.ts    |     100 |      100 |     100 |     100 |                   
  ...ionManager.ts |       0 |        0 |       0 |       0 | 1-6               
  ...FileOutput.ts |       0 |        0 |       0 |       0 | 1-6               
  index.ts         |     100 |      100 |     100 |     100 |                   
  types.ts         |       0 |        0 |       0 |       0 | 1                 
 src/filters       |   99.19 |    98.78 |     100 |   99.19 |                   
  EmojiFilter.ts   |   99.19 |    98.78 |     100 |   99.19 | 208-209           
 src/hooks         |   83.28 |    84.44 |   80.12 |   83.28 |                   
  errors.ts        |     100 |      100 |     100 |     100 |                   
  ...Aggregator.ts |    90.4 |    81.33 |    87.5 |    90.4 | ...55,374,376,378 
  ...sContracts.ts |       0 |        0 |       0 |       0 | 1                 
  ...entHandler.ts |   91.45 |    84.73 |   93.75 |   91.45 | ...55,795-801,846 
  hookPlanner.ts   |   98.79 |    93.33 |     100 |   98.79 | 103               
  hookRegistry.ts  |   98.25 |    89.23 |     100 |   98.25 | 353,355,357,359   
  hookRunner.ts    |   86.34 |    88.23 |   90.47 |   86.34 | ...37-439,503-506 
  hookSystem.ts    |    64.2 |    88.88 |      65 |    64.2 | ...49-351,364-366 
  ...Translator.ts |   94.87 |    64.44 |     100 |   94.87 | ...01-302,313,362 
  ...Validators.ts |    92.4 |    89.83 |     100 |    92.4 | 57-59,78-80       
  index.ts         |     100 |      100 |     100 |     100 |                   
  ...ssion-hook.ts |   88.88 |    33.33 |     100 |   88.88 | 24,30             
  trustedHooks.ts  |   20.77 |      100 |       0 |   20.77 | ...6,82-90,96-109 
  types.ts         |   52.19 |    87.09 |      50 |   52.19 | ...21-422,433-434 
 ...oks/test-utils |       0 |        0 |       0 |       0 |                   
  ...igWithHook.ts |       0 |        0 |       0 |       0 | 1-137             
 src/interfaces    |       0 |        0 |       0 |       0 |                   
  index.ts         |       0 |        0 |       0 |       0 |                   
  ....interface.ts |       0 |        0 |       0 |       0 |                   
 src/models        |   83.46 |    92.41 |    87.5 |   83.46 |                   
  hydration.ts     |    4.76 |      100 |       0 |    4.76 | 65-131,153-233    
  index.ts         |     100 |      100 |     100 |     100 |                   
  profiles.ts      |     100 |      100 |     100 |     100 |                   
  ...ntegration.ts |   95.31 |    89.74 |     100 |   95.31 | ...35-136,199-200 
  registry.ts      |   90.58 |    88.88 |      92 |   90.58 | ...72-273,393-406 
  schema.ts        |     100 |      100 |     100 |     100 |                   
  transformer.ts   |     100 |      100 |     100 |     100 |                   
 src/parsers       |   71.13 |    73.39 |   88.57 |   71.13 |                   
  ...CallParser.ts |   71.55 |    76.92 |    86.2 |   71.55 | ...5,982,988-1003 
  ...rser-utils.ts |   66.15 |    42.85 |     100 |   66.15 | ...59,67-68,72-77 
 src/policy        |   75.17 |    77.41 |      92 |   75.17 |                   
  config.ts        |   70.84 |    77.19 |   90.47 |   70.84 | ...13,369,446-447 
  index.ts         |     100 |      100 |     100 |     100 |                   
  policy-engine.ts |     100 |      100 |     100 |     100 |                   
  ...cy-helpers.ts |   88.75 |       80 |     100 |   88.75 | 31-39             
  ...-stringify.ts |     100 |      100 |     100 |     100 |                   
  toml-loader.ts   |     100 |      100 |     100 |     100 |                   
  types.ts         |     100 |      100 |     100 |     100 |                   
  utils.ts         |     100 |      100 |     100 |     100 |                   
 src/prompt-config |   78.48 |    85.63 |   85.82 |   78.48 |                   
  ...lateEngine.ts |   93.83 |    87.36 |     100 |   93.83 | ...04-407,418-421 
  index.ts         |       0 |      100 |     100 |       0 | 5-41              
  prompt-cache.ts  |    99.1 |    97.46 |     100 |    99.1 | 227-228           
  ...-installer.ts |   87.87 |    84.04 |   97.61 |   87.87 | ...1266,1350-1351 
  prompt-loader.ts |   88.92 |       91 |   81.25 |   88.92 | ...30-447,457-458 
  ...t-resolver.ts |   40.42 |    74.11 |   57.69 |   40.42 | ...23-876,879-907 
  ...pt-service.ts |   85.28 |    83.18 |   80.95 |   85.28 | ...28,545-552,583 
  ...delegation.ts |   93.54 |     90.9 |     100 |   93.54 | 34-35             
  types.ts         |     100 |      100 |     100 |     100 |                   
 ...onfig/defaults |   56.45 |    45.74 |   85.41 |   56.45 |                   
  core-defaults.ts |      48 |     41.5 |   78.57 |      48 | ...65,375,381-389 
  index.ts         |     100 |      100 |     100 |     100 |                   
  ...est-loader.ts |   81.81 |    79.31 |     100 |   81.81 | ...02-108,116-120 
  ...t-warnings.ts |    92.3 |    33.33 |     100 |    92.3 | 18-19             
  ...r-defaults.ts |   52.51 |    35.29 |   84.61 |   52.51 | ...36,346,352-357 
  ...e-defaults.ts |     100 |      100 |     100 |     100 |                   
  tool-defaults.ts |   56.05 |     42.3 |   84.61 |   56.05 | ...92-293,305-310 
 src/prompts       |      30 |      100 |      25 |      30 |                   
  mcp-prompts.ts   |   28.57 |      100 |       0 |   28.57 | 11-15             
  ...t-registry.ts |   30.23 |      100 |   28.57 |   30.23 | ...43,49-56,69-74 
 src/recording     |   90.77 |    84.77 |   98.79 |   90.77 |                   
  ...ntegration.ts |    83.9 |    74.07 |     100 |    83.9 | ...31-132,143-144 
  ReplayEngine.ts  |    97.1 |     90.8 |     100 |    97.1 | 121-122,473-480   
  ...nDiscovery.ts |   92.12 |    84.53 |     100 |   92.12 | ...35,252-254,304 
  ...ockManager.ts |   89.41 |    81.25 |     100 |   89.41 | ...98,213,240-241 
  ...ingService.ts |   82.97 |    92.45 |   95.65 |   82.97 | ...57,390-391,395 
  index.ts         |     100 |      100 |     100 |     100 |                   
  resumeSession.ts |   93.19 |    89.65 |     100 |   93.19 | ...10-215,246-247 
  ...eanupUtils.ts |      90 |    69.23 |     100 |      90 | ...40-241,267,280 
  ...Management.ts |   88.23 |    85.71 |     100 |   88.23 | 94,108-112        
  types.ts         |       0 |        0 |       0 |       0 |                   
 src/resources     |   95.23 |     92.3 |     100 |   95.23 |                   
  ...e-registry.ts |   95.23 |     92.3 |     100 |   95.23 | 34-35             
 src/runtime       |   74.73 |    84.16 |   75.29 |   74.73 |                   
  ...imeContext.ts |     100 |      100 |     100 |     100 |                   
  ...timeLoader.ts |   84.37 |    71.18 |   83.33 |   84.37 | ...43,247,274-277 
  ...ntimeState.ts |   95.63 |    90.54 |     100 |   95.63 | ...01-502,542-543 
  ...ionContext.ts |   83.33 |    93.33 |   71.42 |   83.33 | ...51-152,163-170 
  ...imeContext.ts |   73.96 |    97.61 |   60.71 |   73.96 | ...60-265,267-274 
  index.ts         |       0 |        0 |       0 |       0 | 1-19              
  ...imeContext.ts |      70 |       90 |     100 |      70 | 88-108            
  ...meAdapters.ts |     4.8 |      100 |       0 |     4.8 | ...84-118,124-170 
  ...ateFactory.ts |   94.59 |    65.21 |     100 |   94.59 | 74,82,96,109      
  ...imeAdapter.ts |   80.55 |    86.66 |   88.88 |   80.55 | 52-59,67-68,71-76 
 ...time/contracts |       0 |        0 |       0 |       0 |                   
  ...lureReason.ts |       0 |        0 |       0 |       0 | 1                 
  ...kContracts.ts |       0 |        0 |       0 |       0 | 1                 
  ...ningOutput.ts |       0 |        0 |       0 |       0 | 1                 
  ...torFactory.ts |       0 |        0 |       0 |       0 | 1                 
  RuntimeModel.ts  |       0 |        0 |       0 |       0 | 1                 
  ...meProvider.ts |       0 |        0 |       0 |       0 | 1                 
  ...oviderChat.ts |       0 |        0 |       0 |       0 | 1                 
  ...derManager.ts |       0 |        0 |       0 |       0 | 1                 
  ...eTokenizer.ts |       0 |        0 |       0 |       0 | 1                 
  ...zerFactory.ts |       0 |        0 |       0 |       0 | 1                 
  ...tryContext.ts |       0 |        0 |       0 |       0 | 1                 
  index.ts         |       0 |        0 |       0 |       0 | 1                 
 ...runtime/errors |   94.87 |    85.71 |   66.66 |   94.87 |                   
  ...viderError.ts |     100 |      100 |     100 |     100 |                   
  index.ts         |       0 |        0 |       0 |       0 | 1-14              
 src/safety        |     100 |      100 |     100 |     100 |                   
  index.ts         |     100 |      100 |     100 |     100 |                   
  pathValidator.ts |     100 |      100 |     100 |     100 |                   
 src/scheduler     |       0 |        0 |       0 |       0 |                   
  types.ts         |       0 |        0 |       0 |       0 | 1                 
 src/services      |   82.74 |    85.71 |    87.7 |   82.74 |                   
  ...ardService.ts |   94.23 |    93.75 |     100 |   94.23 | 70,74-75          
  ...utoTrigger.ts |   97.33 |    95.83 |     100 |   97.33 | 127-128           
  ...askManager.ts |   95.81 |    93.93 |     100 |   95.81 | 151-157,365-366   
  ...derService.ts |   98.98 |    97.05 |     100 |   98.98 | 173               
  ...y-analyzer.ts |   76.32 |    81.17 |   77.77 |   76.32 | ...88-516,522-523 
  ...extManager.ts |     100 |    96.29 |     100 |     100 | 63                
  ...nitization.ts |   98.62 |    96.66 |     100 |   98.62 | 176-177           
  ...eryService.ts |     100 |      100 |     100 |     100 |                   
  ...temService.ts |     100 |      100 |     100 |     100 |                   
  ...ts-service.ts |      50 |      100 |       0 |      50 | 41-42,48-49       
  gitService.ts    |    86.6 |    86.95 |      80 |    86.6 | ...35-138,142-146 
  index.ts         |       0 |        0 |       0 |       0 | 1-23              
  ...ionService.ts |   95.86 |    93.05 |     100 |   95.86 | ...06-307,317-318 
  ...ionService.ts |   82.77 |     82.8 |   84.48 |   82.77 | ...1511,1520-1548 
  ...xt-tracker.ts |   94.87 |       90 |    87.5 |   94.87 | 54-55             
  ...er-service.ts |       0 |        0 |       0 |       0 | 1-161             
  ...er-service.ts |   68.47 |    48.48 |      80 |   68.47 | ...85-289,311-314 
 ...rvices/history |   81.17 |    83.77 |   84.78 |   81.17 |                   
  ...Converters.ts |   83.77 |    81.89 |   83.33 |   83.77 | ...45-446,552-575 
  HistoryEvents.ts |       0 |        0 |       0 |       0 |                   
  ...oryService.ts |   78.88 |    84.39 |   83.33 |   78.88 | ...1777,1839-1840 
  IContent.ts      |    89.7 |       76 |     100 |    89.7 | ...42,252-253,264 
  ...calToolIds.ts |   96.82 |     92.3 |     100 |   96.82 | 36-37             
 src/skills        |   74.27 |    86.17 |   73.07 |   74.27 |                   
  skillLoader.ts   |   55.55 |    86.11 |   71.42 |   55.55 | ...99-235,238-274 
  skillManager.ts  |   91.28 |     86.2 |   73.68 |   91.28 | ...58-359,365-366 
 src/storage       |    98.7 |    96.96 |     100 |    98.7 |                   
  ...FileWriter.ts |     100 |      100 |     100 |     100 |                   
  ...nceService.ts |   98.67 |    96.96 |     100 |   98.67 | 294-295           
  ...ey-storage.ts |     100 |      100 |     100 |     100 |                   
  secure-store.ts  |     100 |      100 |     100 |     100 |                   
  sessionTypes.ts  |     100 |      100 |     100 |     100 |                   
 src/telemetry     |   15.17 |        0 |       0 |   15.17 |                   
  constants.ts     |     100 |      100 |     100 |     100 |                   
  ...-exporters.ts |       0 |        0 |       0 |       0 | 1-6               
  index.ts         |     100 |      100 |     100 |     100 |                   
  ...t.circular.ts |       0 |        0 |       0 |       0 | 1-17              
  ...t.circular.ts |       0 |        0 |       0 |       0 | 1-115             
  loggers.ts       |     100 |      100 |     100 |     100 |                   
  metrics.ts       |     100 |      100 |     100 |     100 |                   
  sdk.ts           |     100 |      100 |     100 |     100 |                   
  ...l-decision.ts |     100 |      100 |     100 |     100 |                   
  types.ts         |     100 |      100 |     100 |     100 |                   
  uiTelemetry.ts   |     100 |      100 |     100 |     100 |                   
 src/test-utils    |      50 |       60 |   18.18 |      50 |                   
  config.ts        |   65.38 |      100 |   13.04 |   65.38 | ...,91-96,155-193 
  index.ts         |       0 |        0 |       0 |       0 | 1-9               
  mock-tool.ts     |       0 |        0 |       0 |       0 | 1-158             
  ...aceContext.ts |       0 |        0 |       0 |       0 | 1-32              
  ...allOptions.ts |   81.62 |    51.61 |   54.54 |   81.62 | ...83,196,225-228 
  runtime.ts       |   47.03 |    33.33 |    8.82 |   47.03 | ...13-276,284-347 
  tools.ts         |   43.02 |      100 |   31.25 |   43.02 | ...99-211,214-221 
 src/todo          |   13.04 |      100 |       0 |   13.04 |                   
  todoFormatter.ts |   13.04 |      100 |       0 |   13.04 | ...64,170-211,214 
 src/tools         |   79.33 |    83.33 |   91.66 |   79.33 |                   
  ...ey-storage.ts |   79.33 |    83.33 |   91.66 |   79.33 | ...05-310,319-324 
 ...tools-adapters |   35.88 |    47.87 |      26 |   35.88 |                   
  ...iceAdapter.ts |   61.22 |       80 |   57.14 |   61.22 | ...52,55-60,65-68 
  ...iceAdapter.ts |   27.58 |      100 |      25 |   27.58 | 21-26,29-37,40-45 
  ...iceAdapter.ts |   22.58 |      100 |      25 |   22.58 | 18-25,28-43,46-47 
  ...iceAdapter.ts |      30 |      100 |       0 |      30 | 16-18,21-22,25-33 
  ...BusAdapter.ts |   11.76 |      100 |      20 |   11.76 | ...07-120,123-129 
  ...iceAdapter.ts |      60 |      100 |       0 |      60 | ...27,36-37,40-41 
  ...iceAdapter.ts |   53.84 |      100 |      25 |   53.84 | 17-18,21-22,26-27 
  ...ostAdapter.ts |   19.88 |      100 |    4.76 |   19.88 | ...16-222,225-239 
  ...iceAdapter.ts |   15.58 |        0 |       0 |   15.58 | ...9,82-84,87-102 
  ...iceAdapter.ts |   52.94 |      100 |       0 |   52.94 | ...18,21-22,25-26 
  ...iceAdapter.ts |   39.72 |    37.03 |   60.86 |   39.72 | ...09-752,757-760 
  ...iceAdapter.ts |   68.18 |       50 |      50 |   68.18 | 32-36,39-40       
  ...ostAdapter.ts |    29.9 |      100 |    9.09 |    29.9 | ...48-154,157-158 
  ...ageAdapter.ts |   46.15 |      100 |       0 |   46.15 | ...33,36-37,40-41 
  ...ostAdapter.ts |   67.74 |      100 |      50 |   67.74 | ...57,60-61,64-65 
  ...iceAdapter.ts |      50 |      100 |      50 |      50 | 19-23             
  ...iceHelpers.ts |   36.79 |    35.29 |    37.5 |   36.79 | ...81-286,289-294 
  index.ts         |     100 |      100 |     100 |     100 |                   
 src/utils         |   82.52 |     86.7 |   82.94 |   82.52 |                   
  LruCache.ts      |    82.6 |      100 |   71.42 |    82.6 | 29-30,33-34       
  ...grep-utils.ts |   98.03 |     87.5 |     100 |   98.03 | 137-138           
  asyncIterator.ts |   73.07 |    84.61 |   66.66 |   73.07 | ...71,75-86,93-94 
  bfsFileSearch.ts |   93.61 |    92.85 |     100 |   93.61 | 36-44             
  browser.ts       |    8.69 |      100 |       0 |    8.69 | 17-53             
  channel.ts       |     100 |      100 |     100 |     100 |                   
  ...pointUtils.ts |   95.58 |    95.23 |     100 |   95.58 | 150-155           
  debugLogger.ts   |     100 |      100 |     100 |     100 |                   
  delay.ts         |     100 |      100 |     100 |     100 |                   
  editor.ts        |   96.46 |    90.38 |    90.9 |   96.46 | ...27-228,230-231 
  ...entContext.ts |     100 |      100 |     100 |     100 |                   
  errorParsing.ts  |   93.23 |    85.14 |   95.23 |   93.23 | ...73,213,297-298 
  ...rReporting.ts |   84.44 |    86.66 |     100 |   84.44 | 47-51,117-125     
  errors.ts        |   74.67 |       95 |   46.66 |   74.67 | ...27-128,189-213 
  events.ts        |   65.74 |      100 |    62.5 |   65.74 | ...04-309,315-318 
  exitCodes.ts     |     100 |      100 |     100 |     100 |                   
  ...sionLoader.ts |   80.98 |    62.85 |    92.3 |   80.98 | ...70-171,224-232 
  fetch.ts         |   24.32 |      100 |       0 |   24.32 | 23-28,32-86,89-90 
  fileDiffUtils.ts |     100 |      100 |     100 |     100 |                   
  fileUtils.ts     |    93.8 |    89.93 |      95 |    93.8 | ...82,452,486-492 
  formatters.ts    |   18.18 |      100 |       0 |   18.18 | 8-16              
  ...eUtilities.ts |   91.25 |       90 |   93.75 |   91.25 | ...95-299,347-357 
  ...rStructure.ts |   96.35 |       95 |     100 |   96.35 | 98-101,387-392    
  getPty.ts        |    12.5 |      100 |       0 |    12.5 | 21-36             
  ...noreParser.ts |   89.28 |    89.58 |      80 |   89.28 | ...30-231,236-250 
  ...ineChanges.ts |       0 |        0 |       0 |       0 | 1-276             
  gitUtils.ts      |   42.55 |    71.42 |      50 |   42.55 | 32-33,40-44,53-80 
  googleErrors.ts  |   77.24 |    72.72 |     100 |   77.24 | ...01,348,354-355 
  ...uotaErrors.ts |    95.5 |    86.59 |     100 |    95.5 | ...69-270,308-309 
  ide-trust.ts     |      60 |      100 |       0 |      60 | 14-15             
  ...rePatterns.ts |     100 |    96.55 |     100 |     100 | 249               
  ...ionManager.ts |     100 |    88.88 |     100 |     100 | 24                
  ...edit-fixer.ts |       0 |        0 |       0 |       0 | 1-156             
  ...yDiscovery.ts |    83.6 |    78.26 |    87.5 |    83.6 | ...60-761,764-765 
  ...tProcessor.ts |   95.79 |    89.41 |   93.75 |   95.79 | ...17-318,413-414 
  ...Inspectors.ts |       0 |        0 |       0 |       0 | 1-23              
  output-format.ts |   36.36 |      100 |       0 |   36.36 | ...53-154,164-185 
  package.ts       |     100 |      100 |     100 |     100 |                   
  ...erCoercion.ts |   86.66 |    82.89 |     100 |   86.66 | ...10-211,273-274 
  partUtils.ts     |   95.31 |    94.59 |     100 |   95.31 | 28,101-102        
  pathReader.ts    |   22.58 |      100 |       0 |   22.58 | ...22,28-29,41-60 
  paths.ts         |    87.5 |    85.18 |   92.85 |    87.5 | ...50-251,266-276 
  ...rDetection.ts |   53.62 |    83.33 |   83.33 |   53.62 | ...01-102,112-113 
  ...archTarget.ts |   89.58 |    69.23 |     100 |   89.58 | 45-47,65-66       
  retry.ts         |   82.24 |    86.82 |   91.66 |   82.24 | ...72-975,980-981 
  ...thResolver.ts |     100 |      100 |     100 |     100 |                   
  ...nStringify.ts |     100 |      100 |     100 |     100 |                   
  sanitization.ts  |     100 |      100 |     100 |     100 |                   
  ...aValidator.ts |   93.67 |    76.31 |     100 |   93.67 | ...95-296,313-324 
  ...r-launcher.ts |   88.88 |    79.48 |     100 |   88.88 | ...81-186,191-192 
  session.ts       |     100 |      100 |     100 |     100 |                   
  shell-parser.ts  |   23.82 |    45.45 |   42.85 |   23.82 | ...97-411,436-475 
  shell-utils.ts   |   84.74 |    88.88 |   95.45 |   84.74 | ...49-555,724-733 
  ...Completion.ts |   94.16 |     92.3 |     100 |   94.16 | 69-75             
  stdio.ts         |   84.21 |    59.09 |     100 |   84.21 | ...21-125,134-138 
  ...dleTimeout.ts |   98.57 |    92.59 |     100 |   98.57 | 79                
  summarizer.ts    |     100 |    88.88 |     100 |     100 | 91                
  ...emEncoding.ts |   97.16 |    91.42 |     100 |   97.16 | 116-117,169       
  terminal.ts      |   34.09 |      100 |       0 |   34.09 | ...55,58-59,62-66 
  ...Serializer.ts |   98.16 |    92.18 |     100 |   98.16 | ...,98-99,153-155 
  testUtils.ts     |      50 |      100 |   33.33 |      50 | ...47,53-58,64-66 
  textUtils.ts     |    12.5 |      100 |       0 |    12.5 | 15-34             
  thoughtUtils.ts  |     100 |      100 |     100 |     100 |                   
  tool-utils.ts    |   66.94 |    76.92 |      75 |   66.94 | ...36-137,158-182 
  ...putLimiter.ts |   95.14 |    81.63 |     100 |   95.14 | ...5-66,78-79,113 
  unicodeUtils.ts  |     100 |      100 |     100 |     100 |                   
  ...untManager.ts |   89.83 |    88.57 |     100 |   89.83 | ...0,78-83,99-101 
  version.ts       |     100 |      100 |     100 |     100 |                   
  ...aceContext.ts |   96.85 |    95.23 |    92.3 |   96.85 | 95-96,110-111     
 ...ils/filesearch |   88.24 |     89.8 |   93.54 |   88.24 |                   
  crawlCache.ts    |     100 |      100 |     100 |     100 |                   
  crawler.ts       |   83.15 |     82.6 |      60 |   83.15 | ...,97-99,111-116 
  fileSearch.ts    |   83.05 |     86.2 |     100 |   83.05 | ...06-307,309-310 
  ignore.ts        |     100 |      100 |     100 |     100 |                   
  result-cache.ts  |     100 |      100 |     100 |     100 |                   
-------------------|---------|----------|---------|---------|-------------------

For detailed HTML reports, please see the 'coverage-reports-24.x-ubuntu-latest' artifact from the main CI run.

@acoliver

Copy link
Copy Markdown
Collaborator Author

@CodeRabbit will this finally stop teh full suite from running for doc only changes (i.e. no reason to run all the tests etc)

@coderabbitai

coderabbitai Bot commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

Tip

For best results, initiate chat on the files or code changes.

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check the doc_change_filter logic in ci.yml
grep -n -A 60 "doc_change_filter\|doc.only\|documentation.only\|is_doc_only" .github/workflows/ci.yml | head -120

Length of output: 4552



@acoliver Yes — this PR is specifically designed to solve exactly that problem. Here's what it puts in place:

How it works:

  1. A new doc_change_filter job fetches the full list of changed files via the GitHub API.
  2. Every file is checked against documentation-only patterns:
    • docs/*, README.*, CHANGELOG.*, CONTRIBUTING.*, CODE_OF_CONDUCT.md, SECURITY.md
    • *.md, *.mdx, *.rst, *.txt, *.adoc
  3. If all changed files match those patterns → docs_only=true.
  4. All test suite jobs are then gated with:
    if: ${{ needs.doc_change_filter.outputs.docs_only != 'true' && ... }}
    — so the full suite is skipped entirely for doc-only PRs (CI and E2E).

The .gitignore edge case is handled conservatively: a .gitignore change only counts as "doc-only" if the diff exclusively touches !docs/reference/ unignore entries. Any other .gitignore modification triggers a full run.

One caveat: The doc-only detection only activates for pull_request events (not direct branch pushes), since it needs a PR number to call the GitHub API. But for standard docs PRs like #1563, it will work correctly and skip the full test matrix. 🐇

@acoliver acoliver merged commit 33467ef into main Jun 16, 2026
22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

maintainer:e2e:ok Trusted contributor; maintainer-approved E2E run

Projects

None yet

Development

Successfully merging this pull request may close these issues.

test still running on doc-only updates

1 participant