Skip to content

Accept negative-score search cursors as option values - #4699

Merged
Widthdom merged 6 commits into
mainfrom
fix-issue4664
Jul 20, 2026
Merged

Accept negative-score search cursors as option values#4699
Widthdom merged 6 commits into
mainfrom
fix-issue4664

Conversation

@Widthdom

@Widthdom Widthdom commented Jul 20, 2026

Copy link
Copy Markdown
Owner

Summary

  • accept syntactically valid negative-score search cursors as separated --cursor values
  • keep recognized short options such as -q from being consumed as cursor data
  • extend the bounded shared test-session timeout from 60 to 75 minutes so the slower Windows lane can finish within the existing 90-minute job bound
  • document both contracts in English and Japanese and add bilingual changelog fragments
  • merge the latest origin/main through b72ebf595

Root cause

Issue #4664: the shared string-option reader rejected every separated value beginning with -. Recipe search scores are commonly negative, so replay commands generated from next_cursor were interpreted as a missing --cursor value followed by an unsupported option.

Issue #4705: the Windows net8.0 lane reached the repository-wide 3,600,000 ms test-session timeout with 9,347 passed, 0 failed, and 3 skipped tests. Restore and build took about 90 seconds, leaving sufficient room under the 90-minute job timeout for a bounded 75-minute test session.

Impact

Generated recipe/audit pagination commands can replay negative-score cursors unchanged and return the next result page. Other dash-prefixed tokens retain their prior option-parsing behavior. The Windows CI suite remains bounded but is no longer aborted exactly at 60 minutes before completing.

Validation

  • dotnet restore CodeIndex.sln --locked-mode
  • final Debug solution build: succeeded with 0 warnings and 0 errors
  • final Release solution build: succeeded with 0 warnings and 0 errors
  • Issue Accept negative-score search cursors as option values #4664 plus CiWorkflowTests: 12 passed on net8.0
  • cursor regression suite: 38 passed on net8.0 during adversarial review
  • Issue Accept negative-score search cursors as option values #4664 tests: 2 passed on net8.0 and 2 passed on net9.0 before the final no-conflict main merge
  • QueryCommandRunnerTests: 1,539 passed and 1 documented platform-specific test skipped on net8.0 before the final no-conflict main merge
  • make lint
  • dotnet run --project tools/CodeIndex.Changelog --no-restore -- check (98 fragments)
  • Codex adversarial review round 1 found one stale 45-minute documentation reference; it was fixed in both language sections
  • Codex adversarial review round 2: No blocking/actionable issues found.

Documentation and changelog

  • README.md
  • TESTING_GUIDE.md
  • changelog.d/unreleased/4664.fixed.md
  • changelog.d/unreleased/4705.internal.md

Fixes #4664
Fixes #4705

@Widthdom
Widthdom marked this pull request as ready for review July 20, 2026 08:10
@Widthdom
Widthdom merged commit 99d92ee into main Jul 20, 2026
9 checks passed
@Widthdom
Widthdom deleted the fix-issue4664 branch July 20, 2026 08:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Allow the Windows CI test lane to finish beyond the 60-minute session timeout Accept negative-score search cursors as option values

1 participant