feat(import): write a listable session.State per imported session · Entire
feat(import): write a listable session.State per imported session
f65c471→main·
computermode·1w ago·2 files·+237 added/-0 removed
Kind-gated (KindImported), never sets BaseCommit (no HEAD pin), uses real
transcript timestamps — keeps a future commit-SHA link additive.
Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
Sessions
01KX49MZY55PJYNTEPSMG6VF9GView transcript
[?
Fix Imported Sessions Handling in CLIClaude Code·Opus 4.8·34 steps](/content/gh/entireio/cli/session/91fa7c44-6634-48ab-ae5f-d394502f50d5#timeline-01KX49MZY55PJYNTEPSMG6VF9G/index.html)
Changes
2
cmd/entire/cli/agentimport
Magentimport.go+95
Asession_state_test.go+142
21 unmodified lines
...
...
...
Code Example
writeSessionState
func writeSessionState(ctx context.Context, imp Importer, sf SessionFile, turns []Turn) error {
if len(turns) == 0 {
return nil
}
store, err := session.NewStateStore(ctx)
if err != nil {
return fmt.Errorf("open session state store: %w", err)
}
...
}
addTokenUsage
func addTokenUsage(dst, src *types.TokenUsage) *types.TokenUsage {
if src == nil {
return dst
}
...
}
Tests
TestWriteSessionState_CreatesListableImportedState
func TestWriteSessionState_CreatesListableImportedState(t *testing.T) {
// Not parallel: t.Chdir + git-cwd resolution.
dir := t.TempDir()
...
}
TestImportedSessionSurvivesListing
func TestImportedSessionSurvivesListing(t *testing.T) {
// Not parallel: t.Chdir.
dir := t.TempDir()
...
}