Skip to content

Persisted state corruption can leave T3 Code unusable with no clear recovery path #961

@copypasteitworks

Description

@copypasteitworks

Summary

Persisted state corruption can leave T3 Code unusable with no clear recovery path.

This should be treated as a separate reliability track, distinct from the already-open diff and version fixes.

Symptom

  • the app can become broken or unusable on startup
  • current bootstrap behavior does not clearly explain that persisted state load failed
  • one malformed persisted runtime row can poison list-based recovery paths
  • some Codex resume failures caused by state corruption are still treated as fatal even though a fresh thread start would be an acceptable fallback

Known workaround

In at least one repro, renaming state.sqlite allowed the app to recover.

That suggests persisted corruption can poison startup, but the mental model here should be broader than a single DB file.

Important

For this track, state should include all persisted surfaces that can poison startup or recovery:

  • T3CODE_STATE_DIR
  • state.sqlite
  • files under the state dir such as keybindings, logs, attachments, and runtime metadata
  • CODEX_HOME
  • persisted browser/Electron client state

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