| 651 | } |
| 652 | |
| 653 | func (e *forkedMemoryExtractor) stopChild(parentCtx context.Context, id string) { |
| 654 | stopCtx, cancel := context.WithTimeout(context.WithoutCancel(parentCtx), memoryExtractorStopTimeout) |
| 655 | defer cancel() |
| 656 | if err := e.sessions.StopWithCause(stopCtx, id, session.CauseCompleted, "memory extractor completed"); err != nil && |
| 657 | e.logger != nil { |
| 658 | e.logger.Warn("daemon: stop memory extractor child failed", "session_id", id, "error", err) |
| 659 | } |
| 660 | } |
| 661 | |
| 662 | func (e *forkedMemoryExtractor) workspaceRoot(sessionID string) string { |
| 663 | if e == nil || e.workspaceRoots == nil { |