Skip to content

Commit 843f795

Browse files
authored
towards schema based prompt file validation (#299067)
1 parent 240196b commit 843f795

12 files changed

Lines changed: 467 additions & 90 deletions

src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ import { askForPromptSourceFolder } from './pickers/askForPromptSourceFolder.js'
2727
import { IQuickInputService } from '../../../../../platform/quickinput/common/quickInput.js';
2828
import { getCleanPromptName, SKILL_FILENAME } from '../../common/promptSyntax/config/promptFileLocations.js';
2929
import { PromptsStorage } from '../../common/promptSyntax/service/promptsService.js';
30-
import { getTarget } from '../../common/promptSyntax/languageProviders/promptValidator.js';
30+
import { getTarget } from '../../common/promptSyntax/languageProviders/promptFileAttributes.js';
3131

3232
/**
3333
* Options to override the default folder-picker and editor-open behaviour

src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@ import { registerEditorFeature } from '../../../../../editor/common/editorFeatur
2020
import { PromptFileRewriter } from './promptFileRewriter.js';
2121
import { Range } from '../../../../../editor/common/core/range.js';
2222
import { IEditorModel } from '../../../../../editor/common/editorCommon.js';
23-
import { isTarget, parseCommaSeparatedList, PromptHeaderAttributes } from '../../common/promptSyntax/promptFileParser.js';
24-
import { getTarget, isVSCodeOrDefaultTarget } from '../../common/promptSyntax/languageProviders/promptValidator.js';
23+
import { parseCommaSeparatedList, PromptHeaderAttributes } from '../../common/promptSyntax/promptFileParser.js';
2524
import { isBoolean } from '../../../../../base/common/types.js';
25+
import { getTarget, isTarget, isVSCodeOrDefaultTarget } from '../../common/promptSyntax/languageProviders/promptFileAttributes.js';
2626

2727
class PromptToolsCodeLensProvider extends Disposable implements CodeLensProvider {
2828

src/vs/workbench/contrib/chat/common/chatModes.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,14 @@ import { IStorageService, StorageScope, StorageTarget } from '../../../../platfo
1919
import { IChatAgentService } from './participants/chatAgents.js';
2020
import { ChatContextKeys } from './actions/chatContextKeys.js';
2121
import { ChatConfiguration, ChatModeKind } from './constants.js';
22-
import { IHandOff, isTarget } from './promptSyntax/promptFileParser.js';
22+
import { IHandOff } from './promptSyntax/promptFileParser.js';
2323
import { ExtensionAgentSourceType, IAgentSource, ICustomAgent, ICustomAgentVisibility, IPromptsService, isCustomAgentVisibility, PromptsStorage } from './promptSyntax/service/promptsService.js';
2424
import { Target } from './promptSyntax/promptTypes.js';
2525
import { ThemeIcon } from '../../../../base/common/themables.js';
2626
import { Codicon } from '../../../../base/common/codicons.js';
2727
import { hash } from '../../../../base/common/hash.js';
2828
import { isString } from '../../../../base/common/types.js';
29+
import { isTarget } from './promptSyntax/languageProviders/promptFileAttributes.js';
2930

3031
export const IChatModeService = createDecorator<IChatModeService>('chatModeService');
3132
export interface IChatModeService {

src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ import { Range } from '../../../../../../editor/common/core/range.js';
99
import { Definition, DefinitionProvider } from '../../../../../../editor/common/languages.js';
1010
import { ITextModel } from '../../../../../../editor/common/model.js';
1111
import { IChatModeService } from '../../chatModes.js';
12-
import { getPromptsTypeForLanguageId } from '../promptTypes.js';
1312
import { PromptHeaderAttributes } from '../promptFileParser.js';
13+
import { getPromptsTypeForLanguageId } from '../promptTypes.js';
1414
import { IPromptsService } from '../service/promptsService.js';
1515

1616
export class PromptHeaderDefinitionProvider implements DefinitionProvider {

src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,10 @@ import { Selection } from '../../../../../../editor/common/core/selection.js';
1616
import { Lazy } from '../../../../../../base/common/lazy.js';
1717
import { LEGACY_MODE_FILE_EXTENSION } from '../config/promptFileLocations.js';
1818
import { IFileService } from '../../../../../../platform/files/common/files.js';
19-
import { getTarget, isVSCodeOrDefaultTarget, MARKERS_OWNER_ID } from './promptValidator.js';
19+
import { MARKERS_OWNER_ID } from './promptValidator.js';
2020
import { IMarkerData, IMarkerService } from '../../../../../../platform/markers/common/markers.js';
2121
import { CodeActionKind } from '../../../../../../editor/contrib/codeAction/common/types.js';
22+
import { getTarget, isVSCodeOrDefaultTarget } from './promptFileAttributes.js';
2223

2324
export class PromptCodeActionProvider implements CodeActionProvider {
2425
/**

src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { DocumentSemanticTokensProvider, ProviderResult, SemanticTokens, Semanti
88
import { ITextModel } from '../../../../../../editor/common/model.js';
99
import { getPromptsTypeForLanguageId } from '../promptTypes.js';
1010
import { IPromptsService } from '../service/promptsService.js';
11-
import { getTarget, isVSCodeOrDefaultTarget } from './promptValidator.js';
11+
import { getTarget, isVSCodeOrDefaultTarget } from './promptFileAttributes.js';
1212

1313
export class PromptDocumentSemanticTokensProvider implements DocumentSemanticTokensProvider {
1414
/**

0 commit comments

Comments
 (0)