Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
079f431
fix(ci): add PipedreamConfig to AppConfig interface
VictorGjn Mar 29, 2026
f547149
fix(ci): import PipedreamConfig from types.ts
VictorGjn Mar 29, 2026
e2ede54
fix(ci): use FileNode.treeIndex instead of .content (property does no…
VictorGjn Mar 29, 2026
b9efa0f
fix(ci): transport type http -> streamable-http to match McpServerConfig
VictorGjn Mar 29, 2026
f0ddfa1
fix(ci): correct import paths + remove unused import + type annotations
VictorGjn Mar 29, 2026
d8f5cbd
fix(ci): remove unused handleSave function
VictorGjn Mar 29, 2026
01198df
fix(ci): remove unused discoveredToolsResult variable
VictorGjn Mar 29, 2026
77c2536
fix(ci): remove ALL file.content refs from packer.ts (FileNode has no…
VictorGjn Mar 29, 2026
44fa7f2
fix(ci): import PipedreamConfig from types.ts instead of pipedreamClient
VictorGjn Mar 29, 2026
ccfbe88
fix(packer): add missing imports and helper functions
VictorGjn Mar 29, 2026
cba22b8
fix(tool-discovery): replace typeof window with globalThis check
VictorGjn Mar 29, 2026
42dd56a
fix(depthFilter): add .js extension to treeIndexer import
VictorGjn Mar 29, 2026
d4ecbe5
fix(test): remove tool_discovery from expected pipeline phases
VictorGjn Mar 29, 2026
ecc2924
fix(test): provide array mock data for graphStore scan test
VictorGjn Mar 29, 2026
e0548e7
fix(repoIndexer): fallback to 'unnamed' for empty feature slugs
VictorGjn Mar 29, 2026
be13cca
fix(test): add type field to expected syncFromConfig request body
VictorGjn Mar 29, 2026
bbe50ee
fix(e2e): graph-pipeline field names + scan resilience
VictorGjn Mar 30, 2026
d40b6fe
fix(e2e): knowledge-pipeline endpoint + UI selectors
VictorGjn Mar 30, 2026
70bc33e
fix(e2e): memory-pipeline endpoints + payload + response path
VictorGjn Mar 30, 2026
310a6ba
fix(e2e): metaprompt tool_discovery decoupled from pipeline
VictorGjn Mar 30, 2026
a8ad567
fix(e2e): wizard-complete-flow Playwright API + resilience
VictorGjn Mar 30, 2026
4d17e1a
fix(e2e): wizard Library test strict mode violation
VictorGjn Mar 30, 2026
9ac7d21
fix(e2e): metaprompt pipeline phases test resilient without LLM
VictorGjn Mar 30, 2026
1c05fd4
fix(e2e): skip pipeline phases test when Generate is disabled
VictorGjn Mar 30, 2026
a2618c3
fix(e2e): knowledge Review tab assertion resilient
VictorGjn Mar 30, 2026
2272849
feat: add embedding-based entry point resolver
VictorGjn Mar 27, 2026
ec29f84
feat: add HybridEntryPoint and EmbeddingCacheData types
VictorGjn Mar 27, 2026
56bee0f
feat: wire embedding resolver into ContextGraphEngine
VictorGjn Mar 27, 2026
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
4 changes: 1 addition & 3 deletions server/routes/metaprompt-v2.ts
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,7 @@ router.post("/generate", async (req: Request, res: Response) => {

// Track tool discovery separately so we can emit its SSE event independently
let toolDiscoveryDone = false;
let discoveredToolsResult: unknown[] = [];


const result = await runV2Pipeline(prompt, {
providerId: effectiveProvider,
sonnetModel: effectiveModel,
Expand All @@ -71,7 +70,6 @@ router.post("/generate", async (req: Request, res: Response) => {
onToolDiscoveryComplete: (tools: unknown[]) => {
if (!toolDiscoveryDone) {
toolDiscoveryDone = true;
discoveredToolsResult = tools;
sendEvent({
phase: "tool_discovery",
status: "complete",
Expand Down
2 changes: 1 addition & 1 deletion server/routes/pipedream.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@ import {
listAccounts,
deleteAccount,
proxyRequest,
type PipedreamConfig,
} from '../services/pipedreamClient.js';
import type { PipedreamConfig } from '../types.js';

const router = Router();

Expand Down
8 changes: 2 additions & 6 deletions server/services/pipedreamClient.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,11 @@
*/

import { readConfig, writeConfig } from '../config.js';
import type { PipedreamConfig } from '../types.js';

// ── Types ──

export interface PipedreamConfig {
projectId: string;
clientId: string;
clientSecret: string;
environment: 'development' | 'production';
}
// PipedreamConfig imported from ../types.js

export interface PipedreamAccount {
id: string; // Pipedream account ID (apn_xxx)
Expand Down
2 changes: 1 addition & 1 deletion server/services/repoIndexer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -801,7 +801,7 @@ export function generateKnowledgeBase(scan: RepoScan): Map<string, string> {
// Per-feature docs
for (let i = 0; i < scan.features.length; i++) {
const feature = scan.features[i];
const slug = feature.name.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-|-$/g, '');
const slug = feature.name.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-|-$/g, '') || 'unnamed';
const filename = `${String(i + 1).padStart(2, '0')}-${slug}.md`;
docs.set(filename, generateFeatureDoc(scan, feature));
}
Expand Down
8 changes: 8 additions & 0 deletions server/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,18 @@ export interface MemoryConfig {
connectionString?: string;
}

export interface PipedreamConfig {
projectId: string;
clientId: string;
clientSecret: string;
environment: 'development' | 'production';
}

export interface AppConfig {
providers: ProviderConfig[];
mcpServers: McpServerConfig[];
memory?: MemoryConfig;
pipedream?: PipedreamConfig;
}

export interface ApiResponse<T = unknown> {
Expand Down
2 changes: 1 addition & 1 deletion src/components/McpPicker.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ export function McpPicker() {
id: serverId,
name: registryEntry?.name ?? serverId,
type: registryEntry?.transport === 'sse' ? 'sse' as const :
registryEntry?.transport === 'http' ? 'http' as const : 'stdio' as const,
registryEntry?.transport === 'streamable-http' ? 'sse' as const : 'stdio' as const,
command: registryEntry?.command ?? 'npx',
args: registryEntry?.defaultArgs ?? [],
env,
Expand Down
4 changes: 2 additions & 2 deletions src/components/PipedreamPicker.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { useState, useEffect, useCallback } from 'react';
import { usePipedreamStore, type PipedreamApp } from '../../store/pipedreamStore';
import { useTheme } from '../../theme';
import { usePipedreamStore } from '../store/pipedreamStore';
import { useTheme } from '../theme';
import { Search, Plus, Trash2, Settings } from 'lucide-react';

export function PipedreamPicker() {
Expand All @@ -8,8 +8,8 @@
const [query, setQuery] = useState('');
const t = useTheme();

useEffect(() => { checkStatus(); }, []);

Check warning on line 11 in src/components/PipedreamPicker.tsx

View workflow job for this annotation

GitHub Actions / build-and-test

React Hook useEffect has a missing dependency: 'checkStatus'. Either include it or remove the dependency array
useEffect(() => { if (configured) loadAccounts(); }, [configured]);

Check warning on line 12 in src/components/PipedreamPicker.tsx

View workflow job for this annotation

GitHub Actions / build-and-test

React Hook useEffect has a missing dependency: 'loadAccounts'. Either include it or remove the dependency array

const handleSearch = useCallback(async () => {
if (query.trim()) await searchApps(query.trim());
Expand Down
5 changes: 0 additions & 5 deletions src/components/SaveAgentModal.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -196,11 +196,6 @@ export function SaveAgentModal() {
downloadAgentFile(preview, safeName, meta.ext);
};

// Legacy: combined save + download
const handleSave = () => {
handleSaveToLibrary();
handleDownload();
};

const handleCopy = async () => {
await navigator.clipboard.writeText(preview);
Expand Down
Loading
Loading