Context
The isSessionInvalidError function in internal/orbit/orbit.go uses hardcoded string patterns to detect session-related errors:
sessionErrors := []string{
"session not found",
"invalid session",
"session expired",
"no such session",
}
If Claude CLI changes its error messages, detection could break silently.
Proposed Change
Options:
- Minimal: Extract patterns to a package-level variable with documentation
- Full: Make patterns configurable via
.orbit.yaml
Minimal example:
// sessionErrorPatterns contains error message substrings that indicate
// a session-related error from Claude CLI. If Claude changes its error
// messages, these patterns may need updating.
var sessionErrorPatterns = []string{
"session not found",
"invalid session",
"session expired",
"no such session",
}
Affected Files
internal/orbit/orbit.go:492-498
Priority
Low - The current patterns work. This is a maintainability improvement.
Context
The
isSessionInvalidErrorfunction ininternal/orbit/orbit.gouses hardcoded string patterns to detect session-related errors:If Claude CLI changes its error messages, detection could break silently.
Proposed Change
Options:
.orbit.yamlMinimal example:
Affected Files
internal/orbit/orbit.go:492-498Priority
Low - The current patterns work. This is a maintainability improvement.