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
{"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.
{"mode":"inspect","cursor":"<that cursor>","matchIndex":N} → metadata-only response, no source block.
{"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.
On sift-light 1.0.1 (macOS, arm64, MCP host), inspecting via a cursor returned by
mode=outlineplusmatchIndexreturns only the metadata line withstructure=provider-unavailable, and no source excerpt: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
{"mode":"outline","path":"some/python_file.py"}→ returns symbols and an.analysis.0cursor with the hintInspect item #N: mode="inspect", cursor=..., matchIndex=N.{"mode":"inspect","cursor":"<that cursor>","matchIndex":N}→ metadata-only response, no source block.{"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.