Implements Phases 1-8 of the TFTSR implementation plan. Rust backend (Tauri 2.x, src-tauri/): - Multi-provider AI: OpenAI-compatible, Anthropic, Gemini, Mistral, Ollama - PII detection engine: 11 regex patterns with overlap resolution - SQLCipher AES-256 encrypted database with 10 versioned migrations - 28 Tauri IPC commands for triage, analysis, document, and system ops - Ollama: hardware probe, model recommendations, pull/delete with events - RCA and blameless post-mortem Markdown document generators - PDF export via printpdf - Audit log: SHA-256 hash of every external data send - Integration stubs for Confluence, ServiceNow, Azure DevOps (v0.2) Frontend (React 18 + TypeScript + Vite, src/): - 9 pages: full triage workflow NewIssue→LogUpload→Triage→Resolution→RCA→Postmortem→History+Settings - 7 components: ChatWindow, TriageProgress, PiiDiffViewer, DocEditor, HardwareReport, ModelSelector, UI primitives - 3 Zustand stores: session, settings (persisted), history - Type-safe tauriCommands.ts matching Rust backend types exactly - 8 IT domain system prompts (Linux, Windows, Network, K8s, DB, Virt, HW, Obs) DevOps: - .woodpecker/test.yml: rustfmt, clippy, cargo test, tsc, vitest on every push - .woodpecker/release.yml: linux/amd64 + linux/arm64 builds, Gogs release upload Verified: - cargo check: zero errors - tsc --noEmit: zero errors - vitest run: 13/13 unit tests passing Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
62 lines
2.6 KiB
TypeScript
62 lines
2.6 KiB
TypeScript
import { TransformResult, ViteDevServer } from 'vite';
|
|
import { D as DebuggerOptions, c as DepsHandlingOptions, V as ViteNodeServerOptions, d as ViteNodeResolveId, F as FetchResult } from './index-z0R8hVRu.js';
|
|
import { E as EncodedSourceMap } from './trace-mapping.d-DLVdEqOp.js';
|
|
|
|
declare class Debugger {
|
|
options: DebuggerOptions;
|
|
dumpDir: string | undefined;
|
|
initPromise: Promise<void> | undefined;
|
|
externalizeMap: Map<string, string>;
|
|
constructor(root: string, options: DebuggerOptions);
|
|
clearDump(): Promise<void>;
|
|
encodeId(id: string): string;
|
|
recordExternalize(id: string, path: string): Promise<void>;
|
|
dumpFile(id: string, result: TransformResult | null): Promise<void>;
|
|
loadDump(id: string): Promise<TransformResult | null>;
|
|
writeInfo(): Promise<void>;
|
|
}
|
|
|
|
declare function guessCJSversion(id: string): string | undefined;
|
|
declare function shouldExternalize(id: string, options?: DepsHandlingOptions, cache?: Map<string, Promise<string | false>>): Promise<string | false>;
|
|
|
|
interface FetchCache {
|
|
duration?: number;
|
|
timestamp: number;
|
|
result: FetchResult;
|
|
}
|
|
declare class ViteNodeServer {
|
|
server: ViteDevServer;
|
|
options: ViteNodeServerOptions;
|
|
private fetchPromiseMap;
|
|
private transformPromiseMap;
|
|
private durations;
|
|
private existingOptimizedDeps;
|
|
fetchCaches: {
|
|
ssr: Map<string, FetchCache>;
|
|
web: Map<string, FetchCache>;
|
|
};
|
|
fetchCache: Map<string, FetchCache>;
|
|
externalizeCache: Map<string, Promise<string | false>>;
|
|
debugger?: Debugger;
|
|
constructor(server: ViteDevServer, options?: ViteNodeServerOptions);
|
|
shouldExternalize(id: string): Promise<string | false>;
|
|
getTotalDuration(): number;
|
|
private ensureExists;
|
|
resolveId(id: string, importer?: string, transformMode?: 'web' | 'ssr'): Promise<ViteNodeResolveId | null>;
|
|
getSourceMap(source: string): EncodedSourceMap | null;
|
|
private assertMode;
|
|
fetchModule(id: string, transformMode?: 'web' | 'ssr'): Promise<FetchResult>;
|
|
fetchResult(id: string, mode: 'web' | 'ssr'): Promise<FetchResult>;
|
|
transformRequest(id: string, filepath?: string, transformMode?: 'web' | 'ssr'): Promise<TransformResult | null | undefined>;
|
|
transformModule(id: string, transformMode?: 'web' | 'ssr'): Promise<{
|
|
code: string | undefined;
|
|
}>;
|
|
getTransformMode(id: string): "web" | "ssr";
|
|
private getChangedModule;
|
|
private _fetchModule;
|
|
protected processTransformResult(filepath: string, result: TransformResult): Promise<TransformResult>;
|
|
private _transformRequest;
|
|
}
|
|
|
|
export { ViteNodeServer, guessCJSversion, shouldExternalize };
|