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>
68 lines
1.7 KiB
JSON
68 lines
1.7 KiB
JSON
{
|
|
"name": "jszip",
|
|
"version": "3.10.1",
|
|
"author": "Stuart Knightley <stuart@stuartk.com>",
|
|
"description": "Create, read and edit .zip files with JavaScript http://stuartk.com/jszip",
|
|
"scripts": {
|
|
"test": "npm run test-node && npm run test-browser && tsc",
|
|
"test-node": "qunit --require ./test/helpers/test-utils.js --require ./test/helpers/node-test-utils.js test/asserts/",
|
|
"test-browser": "grunt build && node test/run.js --test",
|
|
"benchmark": "npm run benchmark-node && npm run benchmark-browser",
|
|
"benchmark-node": "node test/benchmark/node.js",
|
|
"benchmark-browser": "node test/run.js --benchmark",
|
|
"lint": "eslint ."
|
|
},
|
|
"contributors": [
|
|
{
|
|
"name": "Franz Buchinger"
|
|
},
|
|
{
|
|
"name": "António Afonso"
|
|
},
|
|
{
|
|
"name": "David Duponchel"
|
|
},
|
|
{
|
|
"name": "yiminghe"
|
|
}
|
|
],
|
|
"main": "./lib/index",
|
|
"browser": {
|
|
"./lib/index": "./dist/jszip.min.js",
|
|
"readable-stream": "./lib/readable-stream-browser.js"
|
|
},
|
|
"types": "./index.d.ts",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/Stuk/jszip.git"
|
|
},
|
|
"keywords": [
|
|
"zip",
|
|
"deflate",
|
|
"inflate"
|
|
],
|
|
"devDependencies": {
|
|
"benchmark": "^2.1.4",
|
|
"browserify": "~13.0.0",
|
|
"eslint": "^8.18.0",
|
|
"grunt": "~0.4.1",
|
|
"grunt-browserify": "~5.0.0",
|
|
"grunt-cli": "~1.1.0",
|
|
"grunt-contrib-uglify": "~4.0.1",
|
|
"http-server": "^13.0.2",
|
|
"jszip-utils": "~0.0.2",
|
|
"package-json-versionify": "1.0.2",
|
|
"playwright": "^1.15.2",
|
|
"qunit": "~2.9.2",
|
|
"tmp": "0.0.28",
|
|
"typescript": "^4.6.3"
|
|
},
|
|
"dependencies": {
|
|
"lie": "~3.3.0",
|
|
"pako": "~1.0.2",
|
|
"readable-stream": "~2.3.6",
|
|
"setimmediate": "^1.0.5"
|
|
},
|
|
"license": "(MIT OR GPL-3.0-or-later)"
|
|
}
|