Skip to content

task: Stability — crashes, segfaults, and memory safety during indexing (14 issues) #390

@DeusData

Description

@DeusData

Scope

Umbrella tracker for reported segfaults, heap corruption, hangs, and out-of-bounds reads observed during indexing. Many of these surface only at scale (large repos, deep ASTs, big all_defs[] arrays) or on specific code patterns (C++ template substitution, recovery-mode parses, deeply-nested DFS).

v0.7.0 shipped major LSP and parser-stack hardening (`1b9d9c1`, `82d5c84`) that likely already addresses several of these — reporters are encouraged to re-test on the latest release.

Additionally tracked: open PRs that target subsets of this work — PR #322 (template-call guards), PR #323 (expression eval steps), PR #339 (extract_channels growable stacks), PR #360 (C++ template call segfault).

Sub-issues

Acceptance

  1. Each linked issue is reproduced against the latest release; reporters confirm whether it still occurs.
  2. For any remaining crash, root cause is identified and either fixed or replaced with a graceful error.
  3. Soak/ASan tests cover the scale regimes that previously crashed (≥1500 files, ≥1500 defs, deep ASTs, C++ template patterns).
  4. No "Segmentation fault" path in the binary — all unexpected conditions surface a logged error.

Why one task

These cluster around the parallel extract → LSP-cross → C++ template resolution paths. Treating them together avoids regressing one while fixing another, and lets us close several at once when the underlying lifecycle bug is fixed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingstability/performanceServer crashes, OOM, hangs, high CPU/memorytaskUmbrella task grouping multiple related issues

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions