Skip to content

[deep-report] Make cacheMemoryDirFor return an error instead of panicking on invalid cache-memory ID #65083

Description

@github-actions

Description

cacheMemoryDirFor (pkg/workflow/cache_config.go:37) panics on an invalid cache-memory ID instead of returning an error, forcing a string-returning API shape onto what is really a fallible operation. It's called from 8 sites across cache_memory.go and sandbox.go. Validation currently happens at parse time so the practical risk is low, but any future caller that skips that validation step (or a validation gap) turns into an uncaught panic rather than a handled error.

Expected Impact

Removes the last of the four reachable-panic sites flagged in this audit, making the cache-memory path consistent with the rest of the compiler's error-returning conventions.

Suggested Agent

GitHub Copilot coding agent — change cacheMemoryDirFor to return (string, error), update all 8 callers in cache_memory.go/sandbox.go to propagate the error, and update TestCacheMemoryDirFor_InvalidIDPanics (in cache_id_validation_test.go) to assert an error instead of a panic.

Estimated Effort

Quick (<1 hour)

Data Source

DeepReport Intelligence Briefing — 2026-10-02, sourced from Repository Quality Improvement Report #65022 ("Compiler Panic Containment"), Task 4.

Generated by 🔬 Deep Report · claude · agent · 212 AIC · ⌖ 7.99 AIC · ⊞ 7.3K · ◷

  • expires on Oct 4, 2026, 10:42 AM UTC-08:00

Activity

  1. github-actions commented on Oct 2, 2026

    @github-actions
    ContributorAuthor

    🍪 Issue Monster selected this for Copilot

    Ive identified this issue as a good candidate for automated resolution and requested assignment to the Copilot coding agent.

    If assignment succeeds, the Copilot coding agent will analyze the issue and create a pull request with the fix.

    Om nom nom! 🍪

    🍪 Om nom nom by Issue Monster · pi · gpt54 · 10.2 AIC · ⌖ 11 AIC · ⊞ 13.9K · ◷

  2. github-actions commented on Oct 4, 2026

    @github-actions
    ContributorAuthor

    This issue was automatically closed because it expired on 2026-10-04T18:42:38.112Z.

    Closed by Workflow

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions