tftsr-devops_investigation/src-tauri/target/debug/.fingerprint/tftsr-f1da2ece815fb48d/lib-tftsr_lib.json
Shaun Arman 8839075805 feat: initial implementation of TFTSR IT Triage & RCA application
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>
2026-03-14 22:36:25 -05:00

1 line
2.0 KiB
JSON

{"rustc":9435880562281667341,"features":"[]","declared_features":"[]","target":9461119619372818194,"profile":17672942494452627365,"path":10763286916239946207,"deps":[[511378585800432286,"tauri_plugin_stronghold",false,15009774175972398686],[530211389790465181,"hex",false,14091109973000251093],[1497337015631716659,"tauri_plugin_cli",false,8760630665760283192],[3856126590694406759,"chrono",false,10077479474220867303],[4093251733041599906,"futures",false,2096022364369501134],[5380358770761950913,"tracing_subscriber",false,17466701048219715548],[6804519996442711849,"uuid",false,7484211793556699926],[8008191657135824715,"thiserror",false,4586594838562516920],[9857275760291862238,"sha2",false,776339899796038703],[10109271232940425330,"tauri_plugin_dialog",false,5519228398577859517],[11968910597431257436,"tauri_plugin_shell",false,15138124920469780534],[12478428894219133322,"anyhow",false,11668834652967039845],[13077212702700853852,"base64",false,1724586486040521648],[13298363700532491723,"tokio",false,15662614361045245662],[13548984313718623784,"serde",false,535738971094763500],[13795362694956882968,"serde_json",false,13758373779650404829],[13853631059051463864,"build_script_build",false,11862057410168159056],[14074621041967118326,"printpdf",false,13648893627387649685],[14173322034500918072,"tauri_plugin_updater",false,7868886784770331818],[14261240476176424521,"tauri",false,17787493014070117887],[14508109296445423596,"tauri_plugin_fs",false,13277973121930888209],[14757622794040968908,"tracing",false,15861861103483316527],[15299814984394074821,"rusqlite",false,15301071208103530429],[15324871377471570981,"aho_corasick",false,578709376101423321],[16611674984963787466,"async_trait",false,5535852451931006902],[17096086488572562914,"tauri_plugin_http",false,9667254928675312369],[17109794424245468765,"regex",false,11446939082009847678],[17325453097244291330,"reqwest",false,335513607427005649]],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/tftsr-f1da2ece815fb48d/dep-lib-tftsr_lib","checksum":false}}],"rustflags":[],"config":8247474407144887393,"compile_kind":0}