1package backend
2
3import (
4 "context"
5 "time"
6)
7
8// FileTrackerRecordRead records a file read for a session.
9func (b *Backend) FileTrackerRecordRead(ctx context.Context, workspaceID, sessionID, path string) error {
10 ws, err := b.GetWorkspace(workspaceID)
11 if err != nil {
12 return err
13 }
14
15 ws.FileTracker.RecordRead(ctx, sessionID, path)
16 return nil
17}
18
19// FileTrackerLastReadTime returns the last read time for a file in a session.
20func (b *Backend) FileTrackerLastReadTime(ctx context.Context, workspaceID, sessionID, path string) (time.Time, error) {
21 ws, err := b.GetWorkspace(workspaceID)
22 if err != nil {
23 return time.Time{}, err
24 }
25
26 return ws.FileTracker.LastReadTime(ctx, sessionID, path), nil
27}
28
29// FileTrackerListReadFiles returns the list of read files for a session.
30func (b *Backend) FileTrackerListReadFiles(ctx context.Context, workspaceID, sessionID string) ([]string, error) {
31 ws, err := b.GetWorkspace(workspaceID)
32 if err != nil {
33 return nil, err
34 }
35
36 return ws.FileTracker.ListReadFiles(ctx, sessionID)
37}