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>
1 line
2.7 KiB
JSON
1 line
2.7 KiB
JSON
{"rustc":9435880562281667341,"features":"[\"common-controls-v6\", \"compression\", \"default\", \"dynamic-acl\", \"tauri-runtime-wry\", \"webkit2gtk\", \"webview2-com\", \"wry\", \"x11\"]","declared_features":"[\"common-controls-v6\", \"compression\", \"config-json5\", \"config-toml\", \"custom-protocol\", \"data-url\", \"default\", \"devtools\", \"dynamic-acl\", \"http-range\", \"image\", \"image-ico\", \"image-png\", \"isolation\", \"linux-libxdo\", \"macos-private-api\", \"macos-proxy\", \"native-tls\", \"native-tls-vendored\", \"objc-exception\", \"process-relaunch-dangerous-allow-symlink-macos\", \"protocol-asset\", \"rustls-tls\", \"specta\", \"tauri-runtime-wry\", \"test\", \"tracing\", \"tray-icon\", \"unstable\", \"uuid\", \"webkit2gtk\", \"webview-data-url\", \"webview2-com\", \"wry\", \"x11\"]","target":12223948975794516716,"profile":2241668132362809309,"path":14299375118719223782,"deps":[[776188902721909695,"tauri_utils",false,12251151536353590809],[1260461579271933187,"serialize_to_javascript",false,1961226778894784128],[1528297757488249563,"url",false,1525208535990980354],[1967864351173319501,"muda",false,6928481535284636605],[2448563160050429386,"thiserror",false,12306110916211109163],[2620434475832828286,"http",false,9556541628456486345],[4052690969609167974,"gtk",false,12558398585254794043],[4143744114649553716,"raw_window_handle",false,13356969486201052105],[6111127215204891552,"tauri_runtime",false,397610969610875124],[6803352382179706244,"percent_encoding",false,10826645319054063446],[6937133435259274751,"tauri_macros",false,4367052123495199648],[9293239362693504808,"glob",false,12636584806469067565],[10229185211513642314,"mime",false,12888514149790648463],[10347147913401555331,"tauri_runtime_wry",false,4929427155508081243],[10630857666389190470,"log",false,5933974529767802847],[11989259058781683633,"dunce",false,12434732825075851043],[12478428894219133322,"anyhow",false,11668834652967039845],[12986574360607194341,"serde_repr",false,2472130875735919496],[13077543566650298139,"heck",false,8660456135419352587],[13298363700532491723,"tokio",false,15662614361045245662],[13548984313718623784,"serde",false,535738971094763500],[13795362694956882968,"serde_json",false,13758373779650404829],[14261240476176424521,"build_script_build",false,4557812112007771009],[16092542839092148581,"webkit2gtk",false,9179476634489067871],[16727543399706004146,"cookie",false,8350083850166457599],[16928111194414003569,"dirs",false,16022515060525312248],[18408407127522236545,"getrandom",false,10127637722566871979]],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/tauri-2e0c434037cb26a3/dep-lib-tauri","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0} |