Open merge dialog instantly from pushed merge facts

This commit is contained in:
Ian Gulliver
2026-10-21 11:48:21 -07:00
parent 4bb6f1fa11
commit 890fb6b691
15 changed files with 736 additions and 678 deletions
+10
View File
@@ -76,6 +76,11 @@ type Manager struct {
pokes chan struct{}
factsMu sync.Mutex
factsRun sync.Mutex
factsDirty map[string]bool
factsPoke chan struct{}
reviewMu sync.Mutex
usageMu map[api.AgentSessionVendor]*sync.Mutex
@@ -169,11 +174,14 @@ func New(st *store.Store, worktreeRoot, leadRoot, handsRoot, codexHome, antigrav
signals: make(chan []api.Event, 1024),
snaps: map[string]*snapState{},
pokes: make(chan struct{}, 1),
factsDirty: map[string]bool{},
factsPoke: make(chan struct{}, 1),
previewListeners: map[int]*previewListener{},
bad: newBadLines(),
watchStop: make(chan struct{}),
}
go m.signalLoop()
go m.factsLoop()
go m.loadUsage()
return m
}
@@ -469,6 +477,7 @@ func (m *Manager) Recover(ctx context.Context) error {
go m.deliverAllQueued(context.Background())
go m.coordinate()
m.poke()
m.MarkFacts(allTasks)
go m.recoverMergeAfterReviews(context.Background())
go m.auditAll(context.Background())
return nil
@@ -1232,6 +1241,7 @@ func (m *Manager) turnEnded(ctx context.Context, l *live, res endResult) error {
}
}
}
m.refreshFacts(ctx, l.taskID)
handoff := compacting && finished
if sha != "" {
payload["commit"] = sha