Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 1 addition & 11 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -130,16 +130,6 @@
"command": "commandtree.makeExecutable",
"title": "Make Executable",
"icon": "$(unlock)"
},
{
"command": "commandtree.generateSummaries",
"title": "Generate AI Summaries",
"icon": "$(sparkle)"
},
{
"command": "commandtree.selectModel",
"title": "CommandTree: Select AI Model",
"icon": "$(hubot)"
}
],
"menus": {
Expand Down Expand Up @@ -371,7 +361,7 @@
},
"commandtree.enableAiSummaries": {
"type": "boolean",
"default": true,
"default": false,
"description": "Use GitHub Copilot to generate plain-language summaries of scripts, enabling semantic search"
},
"commandtree.aiModel": {
Expand Down
33 changes: 4 additions & 29 deletions src/extension.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,12 @@ import { TaskRunner } from "./runners/TaskRunner";
import { QuickTasksProvider } from "./QuickTasksProvider";
import { logger } from "./utils/logger";
import { initDb, disposeDb } from "./db/lifecycle";
import { forceSelectModel } from "./semantic/summariser";
import { syncTagsFromConfig } from "./tags/tagSync";
import { setupFileWatchers } from "./watchers";
import { PrivateTaskDecorationProvider } from "./tree/PrivateTaskDecorationProvider";
import { appState } from "./state";
import {
initAiSummaries,
registerDiscoveredCommands,
runSummarisation,
syncAndSummarise,
} from "./summaryOrchestration";
import type { SummaryDeps } from "./summaryOrchestration";
Expand Down Expand Up @@ -87,15 +84,11 @@ export async function activate(context: vscode.ExtensionContext): Promise<Extens
}

function runBackgroundStartup(workspaceRoot: string): void {
initialDiscovery(workspaceRoot)
.then(() => {
initAiSummaries(getSummaryDeps(workspaceRoot));
})
.catch((e: unknown) => {
logger.error("Initial discovery failed", {
error: e instanceof Error ? e.message : String(e),
});
initialDiscovery(workspaceRoot).catch((e: unknown) => {
logger.error("Initial discovery failed", {
error: e instanceof Error ? e.message : String(e),
});
});
}

async function initDatabaseSafe(workspaceRoot: string): Promise<void> {
Expand Down Expand Up @@ -201,24 +194,6 @@ function registerFilterCommands(context: vscode.ExtensionContext): void {
vscode.commands.registerCommand("commandtree.clearFilter", () => {
getTreeProvider().clearFilters();
updateFilterContext();
}),
vscode.commands.registerCommand("commandtree.generateSummaries", async () => {
const workspaceRoot = vscode.workspace.workspaceFolders?.[0]?.uri.fsPath;
if (workspaceRoot !== undefined) {
await runSummarisation(getSummaryDeps(workspaceRoot));
}
}),
vscode.commands.registerCommand("commandtree.selectModel", async () => {
const result = await forceSelectModel();
if (result.ok) {
vscode.window.showInformationMessage(`CommandTree: AI model set to ${result.value}`);
const workspaceRoot = vscode.workspace.workspaceFolders?.[0]?.uri.fsPath;
if (workspaceRoot !== undefined) {
await runSummarisation(getSummaryDeps(workspaceRoot));
}
} else {
vscode.window.showWarningMessage(`CommandTree: ${result.error}`);
}
})
);
}
Expand Down
176 changes: 0 additions & 176 deletions src/test/e2e/aisummaries.e2e.test.ts

This file was deleted.

18 changes: 0 additions & 18 deletions src/test/e2e/treeview.e2e.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ import {
getCommandTreeProvider,
getLabelString,
collectLeafItems,
collectLeafTasks,
refreshTasks,
writeFile,
deleteFile,
Expand Down Expand Up @@ -232,23 +231,6 @@ suite("TreeView E2E Tests", () => {
});
});

suite("AI Summaries", () => {
test("@exclude-ci Copilot summarisation produces summaries for discovered tasks", async function () {
this.timeout(15000);
const provider = getCommandTreeProvider();
// AI summaries: extension activation triggers summarisation via Copilot.
// If Copilot auth fails (GitHubLoginFailed), tasks will have no summaries.
// This MUST fail if the integration is broken.
const allTasks = await collectLeafTasks(provider);
const withSummary = allTasks.filter((t) => t.summary !== undefined && t.summary !== "");
assert.ok(
withSummary.length > 0,
`Copilot summarisation must produce summaries — got 0 out of ${allTasks.length} tasks. ` +
"Check for GitHubLoginFailed errors above."
);
});
});

suite("Private Make And Mise Tasks", () => {
const makeRelativePath = "private-targets/Makefile";
const miseRelativePath = "private-targets/mise.toml";
Expand Down
Loading
Loading