Skip to content

Cross-contamination of cache data across analysis modes in Developer extension #5074

@wpfleger96

Description

@wpfleger96

Describe the bug

When using the analyze tool in the Developer extension, the analysis results cache keys on (path, modified_time) but does not include the analysis mode, causing an order-dependent bug: when directory analysis runs before focused analysis in the same session, the cached Structure-mode data is incorrectly returned for subsequent Semantic-mode requests, resulting in incomplete results bc of missing call chains and references.

To Reproduce
Steps to reproduce the behavior:

  1. Start a fresh Goose session with the Developer extension
  2. Prompt the model to analyze the current directory in Structure mode (default mode for directories)
    • This caches all files with Structure mode data (basic counts only, no calls/references)
  3. Then prompt the model to run focused analysis on any arbitrary symbol you know exists in those files in the codebase

Expected behavior
Focused analysis of the symbol should show incoming/outgoing call chains and detailed references.

Instead, the focused analysis will return missing or incomplete call chains and references for the given symbol.

Please provide following information:

  • OS & Arch: Darwin (Sequoia 15.6.1) arm64
  • Interface: CLI
  • Version: unreleased, built off latest main
  • Extensions enabled: computercontroller, developer
  • Provider & Model: Databricks + Claude Sonnet 4

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions