Protected ReadonlyfileProtected ReadonlymaxA file grown past this is not read to compare, so a flagged one stays reported as changed. The read tools hand an agent far less.
Protected ReadonlymaxProtected ReadonlymaxArbitrary bounds. Sessions are never disposed here, as that would mean depending on the ChatService
that owns the agents using this service, so the least recently used are evicted; that only loses a notice.
Protected ReadonlymonacoProtected ReadonlysessionsSession id -> tracked file uri -> state. Both levels are insertion ordered and bounded.
Protected ReadonlyworkspaceProtecteddocumentUris of documents whose unsaved content changed, which never reaches the file system.
ProtectedfileProtectedevictDrops entries from the front, which insertion order makes the least recently used ones.
Files changed since the session's agent read them, reported again until it reads them anew so an ignored notice cannot get lost.
ProtectedgetA path the agent can pass back to getFileContent, which takes <rootName>/<relativePath> as well as a uri.
ProtectedhandleFlags the tracked files the event touched, by uri lookup rather than FileChangesEvent.contains, which scans the whole change list. A deleted parent folder is therefore only noticed on the next read.
ProtectedinitOnly flags entries; reading and hashing happens in isStale and getChangedFiles.
ProtectedinvalidateProtectedisWhether uri differs from what the session's agent last saw. false if never read or gone: neither holds content a write could discard.
ProtectedreadThe content the agent would be handed now, preferring the open editor document as getFileContent does.
ProtectedrecheckCompares a flagged file against what the agent saw, clearing the flag when the contents match again.
Snapshots uri as the session's agent just saw it, or forgets it if it is gone. Pass content when at hand to save a read.
Optionalcontent: stringProtectedresolveundefined when the content cannot be read at all.
Protectedtouch
Tracks the content an agent has seen per chat session, so that changes by anyone else can be reported back to it.