Skip to content

[codex] Fix remote semantic status reporting and Windows path tests#98

Draft
PROJECT-OCULUS wants to merge 1 commit intobartolli:mainfrom
PROJECT-OCULUS:codex/v0.9.18-prclean
Draft

[codex] Fix remote semantic status reporting and Windows path tests#98
PROJECT-OCULUS wants to merge 1 commit intobartolli:mainfrom
PROJECT-OCULUS:codex/v0.9.18-prclean

Conversation

@PROJECT-OCULUS
Copy link
Copy Markdown

Summary

This PR fixes two related v0.9.18 issues around remote semantic indexing status/reporting, and also hardens a few Windows-sensitive tests that were failing because of non-portable fixtures.

The runtime fixes make mcp get_index_info report persisted remote semantic metadata correctly after index-parallel, and ensure index-parallel persists normal index metadata so a follow-up MCP status read does not trigger an unnecessary sync/reindex on stderr.

The test fixes are limited to portability: they replace Unix-only path assumptions and TOML string escaping pitfalls in a few parser tests without changing production parser behavior.

Changes

Remote semantic status and metadata

  • Preserve semantic metadata for lite facade loads so status reads can reflect the persisted semantic index even when semantic search is not loaded live.
  • Make mcp get_index_info report persisted remote semantic metadata instead of incorrectly claiming semantic search is disabled.
  • Persist index.meta after index-parallel, including indexed paths, so the next MCP status call does not perform a compensating sync.
  • Report the effective remote embedding model in remote semantic status messaging instead of implying the local default model.

Windows test portability

  • Replace a Java test's TOML path-string construction with direct Settings setup so Windows paths do not break TOML parsing.
  • Replace hard-coded Unix absolute paths in Lua/path tests with real temp-directory-based absolute paths.

Why

On v0.9.18, a remote semantic index could be successfully created on disk while:

  • mcp get_index_info --json still reported semantic_search.enabled = false
  • remote runs still printed a misleading local model name
  • the first MCP status call after index-parallel could emit indexing/progress noise on stderr because index.meta had not been persisted

Separately, three tests were failing on Windows because they used Unix-only path fixtures or inserted raw Windows paths into TOML basic strings.

Verification

Passed targeted checks:

  • cargo test test_load_facade_lite_preserves_semantic_metadata_snapshot -- --nocapture
  • cargo test mcp_get_index_info_reports_remote_semantic_status_and_model -- --nocapture
  • cargo test parsing::java::behavior::tests::test_module_path_from_file_uses_provider -- --nocapture
  • cargo test parsing::lua::behavior::tests::test_module_path_from_file -- --nocapture
  • cargo test parsing::paths::tests::test_normalize_relative_path -- --nocapture
  • cargo test parsing::paths::tests::test_normalize_absolute_path -- --nocapture
  • cargo fmt --all -- --check
  • cargo clippy --all-targets --all-features -- -D warnings

Live validation:

  • rebuilt the patched binary and ran it against a real Ollama endpoint serving snowflake-arctic-embed:latest
  • confirmed index-parallel reported backend: remote, model: snowflake-arctic-embed:latest
  • confirmed persisted semantic metadata recorded remote backend/model/dimension correctly
  • confirmed mcp get_index_info --json reported semantic search enabled with the persisted remote model
  • confirmed the follow-up MCP status read no longer emitted sync/progress noise on stderr

Known limitation

cargo test is still not fully green because tests/parsers/typescript/test_pipeline_resolution.rs::test_behavior_pipeline_cache_isolated already fails on clean upstream 236b402. That failure reproduces in a clean worktree at the exact upstream commit, so it is not introduced by this patch.

Notes for reviewers

  • This repo does not appear to have a checked-in PR template; .github/ contains workflow files only.
  • This branch intentionally excludes unrelated contributing/parsers/* document churn so the diff stays reviewable.

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.

1 participant