@theia/ai-chat 1.75.0-next.21 → 1.75.0-next.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/lib/browser/ai-chat-frontend-module.d.ts.map +1 -1
  2. package/lib/browser/ai-chat-frontend-module.js +4 -0
  3. package/lib/browser/ai-chat-frontend-module.js.map +1 -1
  4. package/lib/browser/change-set-file-element.d.ts +2 -0
  5. package/lib/browser/change-set-file-element.d.ts.map +1 -1
  6. package/lib/browser/change-set-file-element.js +10 -4
  7. package/lib/browser/change-set-file-element.js.map +1 -1
  8. package/lib/browser/file-read-tracker-impl.d.ts +55 -0
  9. package/lib/browser/file-read-tracker-impl.d.ts.map +1 -0
  10. package/lib/browser/file-read-tracker-impl.js +200 -0
  11. package/lib/browser/file-read-tracker-impl.js.map +1 -0
  12. package/lib/browser/file-read-tracker-impl.spec.d.ts +2 -0
  13. package/lib/browser/file-read-tracker-impl.spec.d.ts.map +1 -0
  14. package/lib/browser/file-read-tracker-impl.spec.js +251 -0
  15. package/lib/browser/file-read-tracker-impl.spec.js.map +1 -0
  16. package/lib/common/chat-agents.d.ts +7 -0
  17. package/lib/common/chat-agents.d.ts.map +1 -1
  18. package/lib/common/chat-agents.js +28 -0
  19. package/lib/common/chat-agents.js.map +1 -1
  20. package/lib/common/chat-agents.spec.js +53 -0
  21. package/lib/common/chat-agents.spec.js.map +1 -1
  22. package/lib/common/file-read-tracker.d.ts +12 -0
  23. package/lib/common/file-read-tracker.d.ts.map +1 -0
  24. package/lib/common/file-read-tracker.js +20 -0
  25. package/lib/common/file-read-tracker.js.map +1 -0
  26. package/lib/common/index.d.ts +1 -0
  27. package/lib/common/index.d.ts.map +1 -1
  28. package/lib/common/index.js +1 -0
  29. package/lib/common/index.js.map +1 -1
  30. package/package.json +9 -9
  31. package/src/browser/ai-chat-frontend-module.ts +5 -0
  32. package/src/browser/change-set-file-element.ts +8 -5
  33. package/src/browser/file-read-tracker-impl.spec.ts +318 -0
  34. package/src/browser/file-read-tracker-impl.ts +208 -0
  35. package/src/common/chat-agents.spec.ts +74 -0
  36. package/src/common/chat-agents.ts +25 -0
  37. package/src/common/file-read-tracker.ts +29 -0
  38. package/src/common/index.ts +1 -0
@@ -0,0 +1,251 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 Ehab Younes.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const jsdom_1 = require("@theia/core/lib/browser/test/jsdom");
19
+ const disableJSDOM = (0, jsdom_1.enableJSDOM)();
20
+ const frontend_application_config_provider_1 = require("@theia/core/lib/browser/frontend-application-config-provider");
21
+ frontend_application_config_provider_1.FrontendApplicationConfigProvider.set({});
22
+ const core_1 = require("@theia/core");
23
+ const buffer_1 = require("@theia/core/lib/common/buffer");
24
+ const files_1 = require("@theia/filesystem/lib/common/files");
25
+ const chai_1 = require("chai");
26
+ const file_read_tracker_impl_1 = require("./file-read-tracker-impl");
27
+ disableJSDOM();
28
+ const SESSION = 'session-1';
29
+ const OTHER_SESSION = 'session-2';
30
+ const ROOT = new core_1.URI('file:///workspace');
31
+ const FILE = ROOT.resolve('a.ts');
32
+ /** As `resolveRelativePath` expects it back: root name plus path within that root. */
33
+ const FILE_LABEL = 'workspace/a.ts';
34
+ /** Drives the tracker against in-memory content: `contents` stands in for the files on disk. */
35
+ class TestFileReadTracker extends file_read_tracker_impl_1.FileReadTrackerImpl {
36
+ constructor() {
37
+ super();
38
+ this.contents = new Map([[FILE.toString(), 'original']]);
39
+ /** Makes reading fail as a file too large to compare would, rather than as a missing one. */
40
+ this.readFails = false;
41
+ /** The encoding the files are stored in: `read` decodes with it, `readFile` hands back their bytes. */
42
+ this.encoding = 'utf8';
43
+ this.maxFilesPerSession = 2;
44
+ /** The workspace roots labels are built against. */
45
+ this.roots = [ROOT];
46
+ this.workspaceService = {
47
+ tryGetRoots: () => this.roots.map(resource => ({ resource }))
48
+ };
49
+ this.monacoWorkspace = { getTextDocument: () => undefined };
50
+ /** Both decoders, so that a test can tell which one the tracker reads through. */
51
+ this.fileService = {
52
+ read: async (uri) => ({ value: this.contentOf(uri) }),
53
+ readFile: async (uri) => ({ value: buffer_1.BinaryBuffer.wrap(Buffer.from(this.contentOf(uri), this.encoding)) })
54
+ };
55
+ this.fileChangeEmitter = new core_1.Emitter();
56
+ this.documentChangeEmitter = new core_1.Emitter();
57
+ // `@postConstruct` only runs on container resolution, so wire the listeners here.
58
+ this.init();
59
+ }
60
+ get fileChanges() {
61
+ return this.fileChangeEmitter.event;
62
+ }
63
+ get documentChanges() {
64
+ return this.documentChangeEmitter.event;
65
+ }
66
+ /** Stands in for the file on disk, failing the way the file service would. */
67
+ contentOf(uri) {
68
+ if (this.readFails) {
69
+ throw new files_1.FileOperationError(`${uri} is too large`, 7 /* FileOperationResult.FILE_TOO_LARGE */);
70
+ }
71
+ const content = this.contents.get(uri.toString());
72
+ if (content === undefined) {
73
+ throw new files_1.FileOperationError(`${uri} does not exist`, 1 /* FileOperationResult.FILE_NOT_FOUND */);
74
+ }
75
+ const during = this.duringNextRead;
76
+ this.duringNextRead = undefined;
77
+ during?.();
78
+ return content;
79
+ }
80
+ /** Records what the agent saw, as `getFileContent` does. */
81
+ agentRead(uri = FILE, sessionId = SESSION) {
82
+ return this.recordRead(sessionId, uri, this.contents.get(uri.toString()));
83
+ }
84
+ /** Changes content behind the agent's back and notifies the tracker, as the workspace would. */
85
+ somebodyElseChanges(content, uri = FILE) {
86
+ this.contents.set(uri.toString(), content);
87
+ this.fileChanged(uri);
88
+ }
89
+ somebodyElseDeletes(uri = FILE) {
90
+ this.contents.delete(uri.toString());
91
+ this.fileChanged(uri);
92
+ }
93
+ fileChanged(...uris) {
94
+ this.fileChangeEmitter.fire(new files_1.FileChangesEvent(uris.map(resource => ({ resource, type: 0 /* FileChangeType.UPDATED */ }))));
95
+ }
96
+ documentChanged(uri = FILE) {
97
+ this.documentChangeEmitter.fire(uri.toString());
98
+ }
99
+ }
100
+ describe('FileReadTrackerImpl', () => {
101
+ it('reports a file that changed after it was read', async () => {
102
+ const tracker = new TestFileReadTracker();
103
+ await tracker.agentRead();
104
+ tracker.somebodyElseChanges('changed');
105
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.deep.equal([FILE_LABEL]);
106
+ (0, chai_1.expect)(await tracker.isStale(SESSION, FILE)).to.be.true;
107
+ });
108
+ it('reports a file whose unsaved document changed', async () => {
109
+ const tracker = new TestFileReadTracker();
110
+ await tracker.agentRead();
111
+ tracker.contents.set(FILE.toString(), 'the user typed something');
112
+ tracker.documentChanged();
113
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.deep.equal([FILE_LABEL]);
114
+ });
115
+ it('keeps reporting a change until the file is read again', async () => {
116
+ const tracker = new TestFileReadTracker();
117
+ await tracker.agentRead();
118
+ tracker.somebodyElseChanges('changed');
119
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.have.lengthOf(1);
120
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.have.lengthOf(1);
121
+ await tracker.agentRead();
122
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.be.empty;
123
+ (0, chai_1.expect)(await tracker.isStale(SESSION, FILE)).to.be.false;
124
+ });
125
+ it('ignores files that were never read', async () => {
126
+ const tracker = new TestFileReadTracker();
127
+ tracker.somebodyElseChanges('changed');
128
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.be.empty;
129
+ (0, chai_1.expect)(await tracker.isStale(SESSION, FILE)).to.be.false;
130
+ });
131
+ it('ignores a change that left the content untouched', async () => {
132
+ const tracker = new TestFileReadTracker();
133
+ await tracker.agentRead();
134
+ // e.g. saving an unmodified document, or a formatter that had nothing to do
135
+ tracker.fileChanged(FILE);
136
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.be.empty;
137
+ (0, chai_1.expect)(await tracker.isStale(SESSION, FILE)).to.be.false;
138
+ });
139
+ it('stops reporting once an edit is undone', async () => {
140
+ const tracker = new TestFileReadTracker();
141
+ await tracker.agentRead();
142
+ tracker.somebodyElseChanges('changed');
143
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.have.lengthOf(1);
144
+ tracker.somebodyElseChanges('original');
145
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.be.empty;
146
+ });
147
+ it('reports a deleted file once, then forgets it and allows writing it', async () => {
148
+ const tracker = new TestFileReadTracker();
149
+ await tracker.agentRead();
150
+ tracker.somebodyElseDeletes();
151
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.deep.equal([FILE_LABEL]);
152
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.be.empty;
153
+ (0, chai_1.expect)(await tracker.isStale(SESSION, FILE)).to.be.false;
154
+ });
155
+ it('forgets a file that no longer exists when it is recorded', async () => {
156
+ const tracker = new TestFileReadTracker();
157
+ await tracker.agentRead();
158
+ tracker.somebodyElseDeletes();
159
+ // as the change set element does after applying a deletion
160
+ await tracker.recordRead(SESSION, FILE);
161
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.be.empty;
162
+ });
163
+ it('keeps reporting a file it cannot read, and does not allow overwriting it', async () => {
164
+ const tracker = new TestFileReadTracker();
165
+ await tracker.agentRead();
166
+ tracker.fileChanged(FILE);
167
+ tracker.readFails = true;
168
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.deep.equal([FILE_LABEL]);
169
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.deep.equal([FILE_LABEL]);
170
+ (0, chai_1.expect)(await tracker.isStale(SESSION, FILE)).to.be.true;
171
+ });
172
+ it('reports a change made while the read recording it was still in flight', async () => {
173
+ const tracker = new TestFileReadTracker();
174
+ tracker.duringNextRead = () => {
175
+ tracker.contents.set(FILE.toString(), 'the user typed something');
176
+ tracker.documentChanged();
177
+ };
178
+ // no content handed in, so the tracker reads it itself
179
+ await tracker.recordRead(SESSION, FILE);
180
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.deep.equal([FILE_LABEL]);
181
+ (0, chai_1.expect)(await tracker.isStale(SESSION, FILE)).to.be.true;
182
+ });
183
+ it('records nothing when the content cannot be read', async () => {
184
+ const tracker = new TestFileReadTracker();
185
+ tracker.readFails = true;
186
+ await tracker.recordRead(SESSION, FILE);
187
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.be.empty;
188
+ });
189
+ it('treats a write by another session as an external change', async () => {
190
+ const tracker = new TestFileReadTracker();
191
+ await tracker.agentRead();
192
+ await tracker.agentRead(FILE, OTHER_SESSION);
193
+ tracker.somebodyElseChanges('written by the other session');
194
+ await tracker.recordRead(OTHER_SESSION, FILE);
195
+ (0, chai_1.expect)(await tracker.getChangedFiles(OTHER_SESSION)).to.be.empty;
196
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.deep.equal([FILE_LABEL]);
197
+ });
198
+ it('compares a file the read tools decode as UTF-16, not as UTF-8', async () => {
199
+ const tracker = new TestFileReadTracker();
200
+ tracker.encoding = 'utf16le'; // as a Windows-written `.ps1` is stored
201
+ await tracker.agentRead();
202
+ tracker.fileChanged(FILE);
203
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.be.empty;
204
+ });
205
+ describe('naming changed files', () => {
206
+ /** How the notice names `file` after it changed, in a workspace with the given extra roots. */
207
+ async function nameOf(file, ...extraRoots) {
208
+ const tracker = new TestFileReadTracker();
209
+ tracker.roots.push(...extraRoots);
210
+ tracker.contents.set(file.toString(), 'original');
211
+ await tracker.agentRead(file);
212
+ tracker.somebodyElseChanges('changed', file);
213
+ return tracker.getChangedFiles(SESSION);
214
+ }
215
+ it('names a file by the root it is in', async () => {
216
+ (0, chai_1.expect)(await nameOf(new core_1.URI('file:///elsewhere/lib/b.ts'), new core_1.URI('file:///elsewhere/lib'))).to.deep.equal(['lib/b.ts']);
217
+ });
218
+ it('names a file by its root when that root is listed twice', async () => {
219
+ (0, chai_1.expect)(await nameOf(FILE, ROOT)).to.deep.equal([FILE_LABEL]);
220
+ });
221
+ it('names a file by uri when two roots share the name it would use', async () => {
222
+ (0, chai_1.expect)(await nameOf(FILE, new core_1.URI('file:///elsewhere/workspace'))).to.deep.equal([FILE.toString()]);
223
+ });
224
+ it('names a file by uri when it is outside every root', async () => {
225
+ (0, chai_1.expect)(await nameOf(new core_1.URI('file:///etc/hosts'))).to.deep.equal(['file:///etc/hosts']);
226
+ });
227
+ });
228
+ it('evicts the least recently recorded file beyond the per-session limit', async () => {
229
+ const tracker = new TestFileReadTracker();
230
+ const files = ['a', 'b', 'c'].map(name => new core_1.URI(`file:///workspace/${name}.ts`));
231
+ for (const uri of files) {
232
+ tracker.contents.set(uri.toString(), 'original');
233
+ await tracker.agentRead(uri);
234
+ }
235
+ files.forEach(uri => tracker.somebodyElseChanges('changed', uri));
236
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.deep.equal(['workspace/b.ts', 'workspace/c.ts']);
237
+ });
238
+ it('keeps a re-read file tracked, evicting the one untouched for longest', async () => {
239
+ const tracker = new TestFileReadTracker();
240
+ const [a, b, c] = ['a', 'b', 'c'].map(name => new core_1.URI(`file:///workspace/${name}.ts`));
241
+ [a, b, c].forEach(uri => tracker.contents.set(uri.toString(), 'original'));
242
+ await tracker.agentRead(a);
243
+ await tracker.agentRead(b);
244
+ await tracker.agentRead(a);
245
+ await tracker.agentRead(c);
246
+ tracker.somebodyElseChanges('changed', a);
247
+ tracker.somebodyElseChanges('changed', b);
248
+ (0, chai_1.expect)(await tracker.getChangedFiles(SESSION)).to.deep.equal(['workspace/a.ts']);
249
+ });
250
+ });
251
+ //# sourceMappingURL=file-read-tracker-impl.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-read-tracker-impl.spec.js","sourceRoot":"","sources":["../../src/browser/file-read-tracker-impl.spec.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { AgentSpecificVariables, AIVariableContext, AIVariableResolutionRequest,
2
2
  import { Agent, LanguageModelRegistry, LanguageModelStreamResponsePart } from '@theia/ai-core/lib/common';
3
3
  import { ContributionProvider, ILogger } from '@theia/core';
4
4
  import { ChatAgentService } from './chat-agent-service';
5
+ import { FileReadTracker } from './file-read-tracker';
5
6
  import { ChatModel, ChatRequestModel, ChatResponseContent, CommonChatSessionSettings, MutableChatRequestModel, ResponseTokenUsage } from './chat-model';
6
7
  import { ChatToolRequestService } from './chat-tool-request-service';
7
8
  import { DefaultResponseContentFactory, ResponseContentMatcher, ResponseContentMatcherProvider } from './response-content-matcher';
@@ -77,6 +78,7 @@ export declare abstract class AbstractChatAgent implements ChatAgent {
77
78
  protected contentMatcherProviders: ContributionProvider<ResponseContentMatcherProvider>;
78
79
  protected defaultContentFactory: DefaultResponseContentFactory;
79
80
  protected tokenUsageService: TokenUsageService | undefined;
81
+ protected fileReadTracker: FileReadTracker | undefined;
80
82
  readonly abstract id: string;
81
83
  readonly abstract name: string;
82
84
  readonly abstract languageModelRequirements: LanguageModelRequirement[];
@@ -95,6 +97,11 @@ export declare abstract class AbstractChatAgent implements ChatAgent {
95
97
  init(): void;
96
98
  protected initializeContentMatchers(): void;
97
99
  invoke(request: MutableChatRequestModel): Promise<void>;
100
+ /**
101
+ * Tells the agent which files it read were meanwhile changed by somebody else. A trailing user message
102
+ * rather than the cached system message; providers requiring alternating roles merge same-role runs.
103
+ */
104
+ protected appendExternalFileChangeNotice(request: MutableChatRequestModel, messages: LanguageModelMessage[]): Promise<void>;
98
105
  protected parseContents(text: string, request: MutableChatRequestModel): ChatResponseContent[];
99
106
  protected handleError(request: MutableChatRequestModel, error: Error): void;
100
107
  protected getLanguageModelSelector(languageModelPurpose: string): LanguageModelRequirement;
@@ -1 +1 @@
1
- {"version":3,"file":"chat-agents.d.ts","sourceRoot":"","sources":["../../src/common/chat-agents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-agents.d.ts","sourceRoot":"","sources":["../../src/common/chat-agents.ts"],"names":[],"mappings":"AAqBA,OAAO,EACH,sBAAsB,EACtB,iBAAiB,EACjB,2BAA2B,EAE3B,sBAAsB,EAUtB,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,wBAAwB,EACxB,qBAAqB,EACrB,oBAAoB,EACpB,2BAA2B,EAC3B,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAChB,cAAc,EAEd,QAAQ,EACR,WAAW,EACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACH,KAAK,EAKL,qBAAqB,EACrB,+BAA+B,EAClC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AAE1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EACH,SAAS,EACT,gBAAgB,EAChB,mBAAmB,EACnB,yBAAyB,EAIzB,uBAAuB,EAOvB,kBAAkB,EAErB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,6BAA6B,EAAE,sBAAsB,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAGnI;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,oBAAoB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAChD;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAClC,iCAAiC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,+CAA+C;IAC/C,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACvC;AACD,yBAAiB,wBAAwB,CAAC;IACtC,SAAgB,0BAA0B,CACtC,cAAc,EAAE,sBAAsB,EACtC,eAAe,CAAC,EAAE,MAAM,EACxB,yBAAyB,CAAC,EAAE,OAAO,GACpC,wBAAwB,CAQ1B;CACJ;AAED,MAAM,WAAW,kBAAmB,SAAQ,sBAAsB;IAC9D,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,KAAK,EAAE,SAAS,CAAC;CACpB;AAED,yBAAiB,kBAAkB,CAAC;IAChC,SAAgB,EAAE,CAAC,SAAS,EAAE,OAAO,GAAG,SAAS,IAAI,kBAAkB,CAEtE;IAED,SAAgB,YAAY,CAAC,OAAO,EAAE,kBAAkB,GAAG,SAAS,2BAA2B,EAAE,CAEhG;CACJ;AAED;;;GAGG;AACH,oBAAY,iBAAiB;IACzB,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,MAAM,WAAW;CACpB;AAED,yBAAiB,iBAAiB,CAAC;IACxB,MAAM,GAAG,EAAE,iBAAiB,EAAgH,CAAC;IAEpJ,SAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,CAQxD;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;CAChC;AAED,eAAO,MAAM,SAAS,eAAsB,CAAC;AAC7C;;GAEG;AACH,MAAM,WAAW,SAAU,SAAQ,KAAK;IACpC,SAAS,EAAE,iBAAiB,EAAE,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC;IACnB,MAAM,CAAC,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAChG;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,SAAS,CAE5D;AAED,8BACsB,iBAAkB,YAAW,SAAS;IACzB,SAAS,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IACrE,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IACX,SAAS,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAC3D,SAAS,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAC5D,SAAS,CAAC,aAAa,EAAE,aAAa,CAAC;IAG9D,SAAS,CAAC,uBAAuB,EAAE,oBAAoB,CAAC,8BAA8B,CAAC,CAAC;IAGxF,SAAS,CAAC,qBAAqB,EAAE,6BAA6B,CAAC;IAExB,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAE7D,SAAS,CAAC,eAAe,EAAE,eAAe,GAAG,SAAS,CAAC;IAE5F,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,yBAAyB,EAAE,wBAAwB,EAAE,CAAC;IACxE,SAAS,EAAE,MAAM,CAA6B;IAC9C,SAAS,EAAE,iBAAiB,EAAE,CAAyB;IACvD,IAAI,EAAE,MAAM,EAAE,CAAmC;IACjD,WAAW,EAAE,MAAM,CAAM;IACzB,SAAS,EAAE,MAAM,EAAE,CAAM;IACzB,OAAO,EAAE,gBAAgB,EAAE,CAAM;IACjC,sBAAsB,EAAE,sBAAsB,EAAE,CAAM;IACtD,SAAS,EAAE,MAAM,EAAE,CAAM;IACzB,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,2BAA2B,EAAE,MAAM,CAAC;IAChE,SAAS,CAAC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAa;IACzD,SAAS,CAAC,sBAAsB,EAAE,WAAW,EAAE,CAAM;IACrD,SAAS,CAAC,eAAe,EAAE,sBAAsB,EAAE,CAAM;IAGzD,IAAI,IAAI,IAAI;IAIZ,SAAS,CAAC,yBAAyB,IAAI,IAAI;IAKrC,MAAM,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAsE7D;;;OAGG;cACa,8BAA8B,CAAC,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBjI,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB,GAAG,mBAAmB,EAAE;IAS9F,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,uBAAuB,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;IAM3E,SAAS,CAAC,wBAAwB,CAAC,oBAAoB,EAAE,MAAM,GAAG,wBAAwB;cAI1E,gBAAgB,CAAC,oBAAoB,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAItF;;;;OAIG;cACa,0BAA0B,CAAC,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAclI,0GAA0G;cAC1F,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;cAUrE,mBAAmB,CAAC,QAAQ,EAAE,wBAAwB,GAAG,OAAO,CAAC,aAAa,CAAC;cAQ/E,2BAA2B,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC;IAetH;;;OAGG;cACa,yBAAyB,CACrC,aAAa,EAAE,wBAAwB,EACvC,OAAO,EAAE,sBAAsB,GAChC,OAAO,CAAC,wBAAwB,CAAC;cA4DpB,WAAW,CACvB,KAAK,EAAE,SAAS,EAAE,yBAAyB,UAAQ,GACpD,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAiFlC;;OAEG;IACH,SAAS,CAAC,gBAAgB,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE;IAatE;;;;;;OAMG;IACH,SAAS,CAAC,kBAAkB,CAAC,OAAO,EAAE,uBAAuB,GAAG;QAC5D,cAAc,EAAE,yBAAyB,GAAG,SAAS,CAAC;QACtD,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC7C;cAKe,cAAc,CAC1B,OAAO,EAAE,uBAAuB,EAChC,QAAQ,EAAE,oBAAoB,EAAE,EAChC,YAAY,EAAE,WAAW,EAAE,EAC3B,eAAe,EAAE,MAAM,EAAE,GAAG,SAAS,EACrC,aAAa,EAAE,aAAa,EAC5B,eAAe,CAAC,EAAE,MAAM,EACxB,yBAAyB,CAAC,EAAE,OAAO,GACpC,OAAO,CAAC,qBAAqB,CAAC;IAiCjC;;OAEG;IACH,SAAS,CAAC,cAAc,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KAAE,GAAG,SAAS;IAInE;;;;;OAKG;cACa,kBAAkB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAInF,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,iBAAiB,GAAG,kBAAkB;cAS5D,4BAA4B,CAAC,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB3H,SAAS,CAAC,QAAQ,CAAC,qBAAqB,CAAC,qBAAqB,EAAE,qBAAqB,EAAE,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;CAC1I;AAED,8BACsB,mCAAmC,CAAC,CAAC,CAAE,SAAQ,iBAAiB;cAElE,qBAAqB,CAAC,qBAAqB,EAAE,qBAAqB,EAAE,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAUpI,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAE9D,SAAS,CAAC,QAAQ,CAAC,qBAAqB,CAAC,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,uBAAuB,GAAG,mBAAmB;CAClH;AAED;;GAEG;AACH,qBACa,kCAAkC;IAC3C,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,mBAAmB;CAqBlD;AAED;;GAEG;AACH,qBACa,oCAAoC;IAC7C,MAAM,CAAC,cAAc,EAAE,cAAc,GAAG,mBAAmB;CAU9D;AAED,8BACsB,8BAA+B,SAAQ,iBAAiB;IAE1E,SAAS,CAAC,8BAA8B,EAAE,kCAAkC,CAAC;IAG7E,SAAS,CAAC,oCAAoC,EAAE,oCAAoC,CAAC;cAE5D,qBAAqB,CAAC,qBAAqB,EAAE,qBAAqB,EAAE,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;cA+B7H,iBAAiB,CAAC,qBAAqB,EAAE,2BAA2B,EAAE,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAqCtI,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,+BAA+B,EAAE,OAAO,EAAE,uBAAuB,GAAG,mBAAmB,GAAG,mBAAmB,EAAE;IA0CtI;;;;;;;;OAQG;IACH,SAAS,CAAC,6BAA6B,CAAC,QAAQ,EAAE,QAAQ,GAAG,mBAAmB;IAIhF;;;OAGG;IACH,SAAS,CAAC,mCAAmC,CAAC,cAAc,EAAE,cAAc,GAAG,mBAAmB;CAGrG"}
@@ -27,6 +27,7 @@ const ai_core_1 = require("@theia/ai-core");
27
27
  const common_1 = require("@theia/ai-core/lib/common");
28
28
  const core_1 = require("@theia/core");
29
29
  const inversify_1 = require("@theia/core/shared/inversify");
30
+ const file_read_tracker_1 = require("./file-read-tracker");
30
31
  const chat_model_1 = require("./chat-model");
31
32
  const chat_tool_request_service_1 = require("./chat-tool-request-service");
32
33
  const parse_contents_1 = require("./parse-contents");
@@ -128,6 +129,7 @@ let AbstractChatAgent = class AbstractChatAgent {
128
129
  request.response.setPromptVariantInfo(systemMessageDescription.promptVariantId, systemMessageDescription.isPromptVariantCustomized ?? false);
129
130
  }
130
131
  const messages = await this.getMessages(request.session);
132
+ await this.appendExternalFileChangeNotice(request, messages);
131
133
  if (systemMessageDescription) {
132
134
  const systemMsg = {
133
135
  actor: 'system',
@@ -156,6 +158,27 @@ let AbstractChatAgent = class AbstractChatAgent {
156
158
  this.handleError(request, e);
157
159
  }
158
160
  }
161
+ /**
162
+ * Tells the agent which files it read were meanwhile changed by somebody else. A trailing user message
163
+ * rather than the cached system message; providers requiring alternating roles merge same-role runs.
164
+ */
165
+ async appendExternalFileChangeNotice(request, messages) {
166
+ try {
167
+ const changedFiles = await this.fileReadTracker?.getChangedFiles(request.session.id);
168
+ if (changedFiles?.length) {
169
+ messages.push({
170
+ actor: 'user',
171
+ type: 'text',
172
+ text: `The following files changed since you last read them: ${changedFiles.join(', ')}. ` +
173
+ 'Read them again before relying on their content or overwriting them.'
174
+ });
175
+ }
176
+ }
177
+ catch (error) {
178
+ // Advisory, so failing to determine it must not fail the request.
179
+ this.logger.warn('Could not determine externally changed files.', error);
180
+ }
181
+ }
159
182
  parseContents(text, request) {
160
183
  return (0, parse_contents_1.parseContents)(text, request, this.contentMatchers, this.defaultContentFactory?.create.bind(this.defaultContentFactory));
161
184
  }
@@ -477,6 +500,11 @@ tslib_1.__decorate([
477
500
  (0, inversify_1.optional)(),
478
501
  tslib_1.__metadata("design:type", Object)
479
502
  ], AbstractChatAgent.prototype, "tokenUsageService", void 0);
503
+ tslib_1.__decorate([
504
+ (0, inversify_1.inject)(file_read_tracker_1.FileReadTracker),
505
+ (0, inversify_1.optional)(),
506
+ tslib_1.__metadata("design:type", Object)
507
+ ], AbstractChatAgent.prototype, "fileReadTracker", void 0);
480
508
  tslib_1.__decorate([
481
509
  (0, inversify_1.postConstruct)(),
482
510
  tslib_1.__metadata("design:type", Function),
@@ -1 +1 @@
1
- {"version":3,"file":"chat-agents.js","sourceRoot":"","sources":["../../src/common/chat-agents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-agents.js","sourceRoot":"","sources":["../../src/common/chat-agents.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ const ai_core_1 = require("@theia/ai-core");
21
21
  const chat_agents_1 = require("./chat-agents");
22
22
  const chat_model_1 = require("./chat-model");
23
23
  const parsed_chat_request_1 = require("./parsed-chat-request");
24
+ const mock_logger_1 = require("@theia/core/lib/common/test/mock-logger");
24
25
  class TestChatAgent extends chat_agents_1.AbstractChatAgent {
25
26
  constructor() {
26
27
  super(...arguments);
@@ -44,6 +45,15 @@ class TestChatAgent extends chat_agents_1.AbstractChatAgent {
44
45
  setLanguageModelRegistry(registry) {
45
46
  this.languageModelRegistry = registry;
46
47
  }
48
+ exposeAppendExternalFileChangeNotice(request, messages) {
49
+ return this.appendExternalFileChangeNotice(request, messages);
50
+ }
51
+ setFileReadTracker(tracker) {
52
+ this.fileReadTracker = tracker;
53
+ }
54
+ setLogger(logger) {
55
+ this.logger = logger;
56
+ }
47
57
  }
48
58
  function createParsedRequest(text, request) {
49
59
  return {
@@ -241,4 +251,47 @@ describe('AbstractChatAgent.getLanguageModelForRequest', () => {
241
251
  (0, chai_1.expect)(error).to.be.an('error');
242
252
  });
243
253
  });
254
+ describe('AbstractChatAgent.appendExternalFileChangeNotice', () => {
255
+ function createAgent(getChangedFiles) {
256
+ const agent = new TestChatAgent();
257
+ agent.setLogger(new mock_logger_1.MockLogger());
258
+ agent.setFileReadTracker({
259
+ recordRead: async () => { },
260
+ isStale: async () => false,
261
+ getChangedFiles
262
+ });
263
+ return agent;
264
+ }
265
+ function createRequest() {
266
+ return new chat_model_1.MutableChatModel(chat_agents_1.ChatAgentLocation.Panel).addRequest(createParsedRequest('Hello'));
267
+ }
268
+ function textsOf(messages) {
269
+ return messages.flatMap(message => message.type === 'text' ? [message.text] : []);
270
+ }
271
+ it('appends a trailing user message listing the changed files', async () => {
272
+ const agent = createAgent(async () => ['/workspace/a.ts', '/workspace/b.ts']);
273
+ const messages = [];
274
+ await agent.exposeAppendExternalFileChangeNotice(createRequest(), messages);
275
+ (0, chai_1.expect)(messages).to.have.lengthOf(1);
276
+ (0, chai_1.expect)(messages[0].actor).to.equal('user');
277
+ (0, chai_1.expect)(textsOf(messages)[0]).to.contain('/workspace/a.ts').and.to.contain('/workspace/b.ts');
278
+ });
279
+ it('appends nothing when no file changed', async () => {
280
+ const agent = createAgent(async () => []);
281
+ const messages = [];
282
+ await agent.exposeAppendExternalFileChangeNotice(createRequest(), messages);
283
+ (0, chai_1.expect)(messages).to.be.empty;
284
+ });
285
+ it('appends nothing when no tracker is bound', async () => {
286
+ const messages = [];
287
+ await new TestChatAgent().exposeAppendExternalFileChangeNotice(createRequest(), messages);
288
+ (0, chai_1.expect)(messages).to.be.empty;
289
+ });
290
+ it('does not fail the request when the changed files cannot be determined', async () => {
291
+ const agent = createAgent(async () => { throw new Error('tracker unavailable'); });
292
+ const messages = [];
293
+ await agent.exposeAppendExternalFileChangeNotice(createRequest(), messages);
294
+ (0, chai_1.expect)(messages).to.be.empty;
295
+ });
296
+ });
244
297
  //# sourceMappingURL=chat-agents.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chat-agents.spec.js","sourceRoot":"","sources":["../../src/common/chat-agents.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-agents.spec.js","sourceRoot":"","sources":["../../src/common/chat-agents.spec.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAEhF,4BAA0B;AAE1B,+BAA8B;AAC9B,4CAGwB;AACxB,+CAAqG;AACrG,6CASsB;AACtB,+DAAqF;AAGrF,yEAAqE;AAErE,MAAM,aAAc,SAAQ,+BAAiB;IAA7C;;QACa,OAAE,GAAG,YAAY,CAAC;QAClB,SAAI,GAAG,YAAY,CAAC;QACpB,8BAAyB,GAA+B,EAAE,CAAC;QACjD,gCAA2B,GAAG,MAAM,CAAC;IAiC5D,CAAC;IA/Ba,qBAAqB;QAC3B,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAAC,KAAgB,EAAE,yBAAyB,GAAG,KAAK;QAC9E,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,yBAAyB,CAAC,CAAC;IAC9D,CAAC;IAEM,oBAAoB,CAAC,OAAgC,EAAE,aAA4B;QACtF,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IAC1E,CAAC;IAEM,gCAAgC,CAAC,OAAgC,EAAE,OAAO,GAAG,MAAM;QACtF,OAAO,IAAI,CAAC,0BAA0B,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IAEM,wBAAwB,CAAC,QAA+B;QAC3D,IAAI,CAAC,qBAAqB,GAAG,QAAQ,CAAC;IAC1C,CAAC;IAEM,oCAAoC,CAAC,OAAgC,EAAE,QAAgC;QAC1G,OAAO,IAAI,CAAC,8BAA8B,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAClE,CAAC;IAEM,kBAAkB,CAAC,OAAwB;QAC9C,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;IACnC,CAAC;IAEM,SAAS,CAAC,MAAe;QAC5B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;CACJ;AAED,SAAS,mBAAmB,CAAC,IAAY,EAAE,OAA8B;IACrE,OAAO;QACH,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE;QAC7B,KAAK,EAAE;YACH,IAAI,+CAAyB,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC;SAC/E;QACD,YAAY,EAAE,IAAI,GAAG,EAAE;QACvB,SAAS,EAAE,EAAE;KAChB,CAAC;AACN,CAAC;AAED,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;IAE3C,IAAI,KAAoB,CAAC;IAEzB,UAAU,CAAC,GAAG,EAAE;QACZ,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,SAAS,mBAAmB,CAAC,OAAgC,EAAE,OAAe,EAAE,SAAiB;QAC7F,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,4CAA+B,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;IAClG,CAAC;IAED,SAAS,eAAe,CAAC,OAAgC,EAAE,IAAY;QACnE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,wCAA2B,CAAC,IAAI,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,EAAE,CAAC,kFAAkF,EAAE,KAAK,IAAI,EAAE;QAC9F,MAAM,KAAK,GAAG,IAAI,6BAAgB,CAAC,+BAAiB,CAAC,KAAK,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;QAE/D,mBAAmB,CAAC,OAAO,EAAE,kCAAkC,EAAE,EAAE,CAAC,CAAC;QACrE,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAE1B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAEtD,IAAA,aAAM,EAAC,QAAQ,CAAC,MAAM,CAAC,8BAAoB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACpF,iDAAiD;QACjD,MAAM,gBAAgB,GAAG,QAAQ;aAC5B,MAAM,CAAC,8BAAoB,CAAC,aAAa,CAAC;aAC1C,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC;QACrC,IAAA,aAAM,EAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC1D,MAAM,KAAK,GAAG,IAAI,6BAAgB,CAAC,+BAAiB,CAAC,KAAK,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;QAE/D,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,EAAE,SAAS,CAAC,CAAC;QAC5D,eAAe,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAE5B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAEtD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,8BAAoB,CAAC,iBAAiB,CAAC,CAAC;QACjF,IAAA,aAAM,EAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAA,aAAM,EAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAClE,IAAA,aAAM,EAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,KAAK,IAAI,EAAE;QACrG,MAAM,KAAK,GAAG,IAAI,6BAAgB,CAAC,+BAAiB,CAAC,KAAK,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;QAE/D,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,EAAE,EAAE,CAAC,CAAC;QACtD,eAAe,CAAC,OAAO,EAAE,6BAA6B,CAAC,CAAC;QACxD,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAE1B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAEtD,IAAA,aAAM,EAAC,QAAQ,CAAC,MAAM,CAAC,8BAAoB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAEpF,MAAM,cAAc,GAAG,QAAQ;aAC1B,MAAM,CAAC,8BAAoB,CAAC,aAAa,CAAC;aAC1C,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;QACnC,IAAA,aAAM,EAAC,cAAc,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC3C,IAAA,aAAM,EAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,+CAA+C,EAAE,GAAG,EAAE;IAE3D,MAAM,sBAAsB,GAA2B;QACnD,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE;QACtC,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE;KAC3C,CAAC;IAEF,SAAS,WAAW,CAAC,MAAc,EAAE,WAAoC;QACrE,OAAO;YACH,EAAE,EAAE,GAAG,MAAM,QAAQ;YACrB,MAAM;YACN,MAAM,EAAE,EAAE,MAAM,EAAE,OAAgB,EAAE;YACpC,WAAW;YACX,KAAK,CAAC,OAAO,KAAqC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;SAC/C,CAAC;IAClC,CAAC;IAED,SAAS,KAAK,CAAC,aAA4B,EAAE,oBAA+C;QACxF,MAAM,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;QAClC,IAAI,eAAwC,CAAC;QAC7C,8DAA8D;QAC7D,KAAa,CAAC,oBAAoB,GAAG;YAClC,QAAQ,EAAE,EAAE;YACZ,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;YAChD,KAAK,CAAC,WAAW,CAAC,MAAqB,EAAE,WAAwB;gBAC7D,eAAe,GAAG,WAAW,CAAC;gBAC9B,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;YACxB,CAAC;SAC+B,CAAC;QAErC,MAAM,SAAS,GAAG,IAAI,6BAAgB,CAAC,+BAAiB,CAAC,KAAK,CAAC,CAAC;QAChE,MAAM,OAAO,GAAG,SAAS,CAAC,UAAU,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC;QAC7F,KAAK,CAAC,oBAAoB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QACnD,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,eAAe,EAAE,CAAC;IACtD,CAAC;IAED,EAAE,CAAC,gGAAgG,EAAE,GAAG,EAAE;QACtG,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC;QAC/D,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC;QAChF,IAAA,aAAM,EAAC,QAAQ,EAAG,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAC9D,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC;QAClF,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAChE,IAAA,aAAM,EAAC,QAAQ,EAAG,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACjE,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC;QAC/D,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC7C,IAAA,aAAM,EAAC,QAAQ,EAAG,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,MAAM,0BAA2B,SAAQ,4CAA8B;IAAvE;;QACa,OAAE,GAAG,mBAAmB,CAAC;QACzB,SAAI,GAAG,mBAAmB,CAAC;QAC3B,8BAAyB,GAA+B,EAAE,CAAC;QACjD,gCAA2B,GAAG,MAAM,CAAC;IAK5D,CAAC;IAHG,WAAW,CAAC,KAAsC;QAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,SAAkB,CAAC,CAAC;IACjD,CAAC;CACJ;AAED,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;IAChD,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QAClE,MAAM,KAAK,GAAG,IAAI,0BAA0B,EAAE,CAAC;QAC/C,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAC3G,IAAA,aAAM,EAAC,gCAAmB,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACvD,IAAA,aAAM,EAAC,0CAA6B,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjE,MAAM,UAAU,GAAG,OAAwC,CAAC;QAC5D,IAAA,aAAM,EAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAClD,IAAA,aAAM,EAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAChD,IAAA,aAAM,EAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,8CAA8C,EAAE,GAAG,EAAE;IAE1D,MAAM,aAAa,GAAG,eAAe,CAAC;IACtC,MAAM,cAAc,GAAG,gBAAgB,CAAC;IAExC,IAAI,KAAoB,CAAC;IACzB,IAAI,oBAA4C,CAAC;IAEjD,SAAS,SAAS,CAAC,EAAU;QACzB,OAAO,EAAE,EAAE,EAAmB,CAAC;IACnC,CAAC;IAED,UAAU,CAAC,GAAG,EAAE;QACZ,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;QAC5B,KAAK,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;QACrF,oBAAoB,GAAG,EAAE,CAAC;QAC1B,0GAA0G;QAC1G,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAC;QACvD,KAAK,CAAC,wBAAwB,CAAC;YAC3B,uEAAuE;YACvE,KAAK,CAAC,mBAAmB,CAAC,OAA8B;gBACpD,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBAC9C,OAAO,OAAO,CAAC,UAAU,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3G,CAAC;YACD,sFAAsF;YACtF,KAAK,CAAC,qBAAqB,CAAC,SAAiB;gBACzC,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACrC,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACnE,CAAC;SACgC,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,SAAS,aAAa,CAAC,aAAsB;QACzC,MAAM,KAAK,GAAG,IAAI,6BAAgB,CAAC,+BAAiB,CAAC,KAAK,CAAC,CAAC;QAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/D,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAC9B,KAAK,CAAC,WAAW,CAAC,EAAE,cAAc,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;QACpE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,gCAAgC,CAAC,aAAa,EAAE,CAAC,CAAC;QAC/E,IAAA,aAAM,EAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,gCAAgC,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC;QAC7F,IAAA,aAAM,EAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC7C,iDAAiD;QACjD,IAAA,aAAM,EAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;QACxF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,gCAAgC,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC,CAAC;QAC9F,IAAA,aAAM,EAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC5C,uEAAuE;QACvE,IAAA,aAAM,EAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC,CAAC;IACjF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QACvE,KAAK,CAAC,yBAAyB,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3C,KAAK,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAC,CAAC;QACzF,IAAI,KAAwB,CAAC;QAC7B,IAAI,CAAC;YACD,MAAM,KAAK,CAAC,gCAAgC,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,CAAC;QAChF,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,KAAK,GAAG,CAAU,CAAC;QACvB,CAAC;QACD,IAAA,aAAM,EAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,kDAAkD,EAAE,GAAG,EAAE;IAE9D,SAAS,WAAW,CAAC,eAAwC;QACzD,MAAM,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;QAClC,KAAK,CAAC,SAAS,CAAC,IAAI,wBAAU,EAAE,CAAC,CAAC;QAClC,KAAK,CAAC,kBAAkB,CAAC;YACrB,UAAU,EAAE,KAAK,IAAI,EAAE,GAAG,CAAC;YAC3B,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;YAC1B,eAAe;SAClB,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,SAAS,aAAa;QAClB,OAAO,IAAI,6BAAgB,CAAC,+BAAiB,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;IAClG,CAAC;IAED,SAAS,OAAO,CAAC,QAAgC;QAC7C,OAAO,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACtF,CAAC;IAED,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QACvE,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAC9E,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAE5C,MAAM,KAAK,CAAC,oCAAoC,CAAC,aAAa,EAAE,EAAE,QAAQ,CAAC,CAAC;QAE5E,IAAA,aAAM,EAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACrC,IAAA,aAAM,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3C,IAAA,aAAM,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACjG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAE5C,MAAM,KAAK,CAAC,oCAAoC,CAAC,aAAa,EAAE,EAAE,QAAQ,CAAC,CAAC;QAE5E,IAAA,aAAM,EAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACtD,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAE5C,MAAM,IAAI,aAAa,EAAE,CAAC,oCAAoC,CAAC,aAAa,EAAE,EAAE,QAAQ,CAAC,CAAC;QAE1F,IAAA,aAAM,EAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IACjC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;QACnF,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE,GAAG,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnF,MAAM,QAAQ,GAA2B,EAAE,CAAC;QAE5C,MAAM,KAAK,CAAC,oCAAoC,CAAC,aAAa,EAAE,EAAE,QAAQ,CAAC,CAAC;QAE5E,IAAA,aAAM,EAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;IACjC,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { URI } from '@theia/core';
2
+ export declare const FileReadTracker: unique symbol;
3
+ /** Tracks the content an agent has seen per chat session, so that changes by anyone else can be reported back to it. */
4
+ export interface FileReadTracker {
5
+ /** 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. */
6
+ recordRead(sessionId: string, uri: URI, content?: string): Promise<void>;
7
+ /** Whether `uri` differs from what the session's agent last saw. `false` if never read or gone: neither holds content a write could discard. */
8
+ isStale(sessionId: string, uri: URI): Promise<boolean>;
9
+ /** Files changed since the session's agent read them, reported again until it reads them anew so an ignored notice cannot get lost. */
10
+ getChangedFiles(sessionId: string): Promise<string[]>;
11
+ }
12
+ //# sourceMappingURL=file-read-tracker.d.ts.map