Skip to content

inspect with outline cursor + matchIndex returns metadata only, no source block (v1.0.1) #96

Description

@connieli326

On sift-light 1.0.1 (macOS, arm64, MCP host), inspecting via a cursor returned by mode=outline plus matchIndex returns only the metadata line with structure=provider-unavailable, and no source excerpt:

Inspection metadata (complete; 1 target(s); 1 file(s)).
#1 <file>.py:542 — returned; structure=provider-unavailable

The same location inspected via explicit path+line, or via a cursor from an ordinary search, returns the full bounded source window with correct function boundaries (structure: available via universal-ctags).

universal-ctags 6.2.1 is installed and is detected on the path+line route. The behavior persists after restarting the MCP host, so it does not look like a stale provider-availability cache from before ctags was installed.

Repro

  1. {"mode":"outline","path":"some/python_file.py"} → returns symbols and an .analysis.0 cursor with the hint Inspect item #N: mode="inspect", cursor=..., matchIndex=N.
  2. {"mode":"inspect","cursor":"<that cursor>","matchIndex":N} → metadata-only response, no source block.
  3. {"mode":"inspect","path":"some/python_file.py","line":<same line>} → full bounded source window, function boundary resolved via universal-ctags.

Expected: step 2 returns the same bounded source window as step 3, as the outline result's own inspect hint suggests.

Config: {"locale":"zh-CN","enforceSearch":"prefer","vectorSearchEnabled":true}. Also reproduced with a search-cursor inspect working fine on the same file in the same session, so it seems specific to the outline analysis cursor route.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions