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>
107 lines
3.0 KiB
JSON
107 lines
3.0 KiB
JSON
{
|
|
"name": "yaml",
|
|
"version": "1.10.2",
|
|
"license": "ISC",
|
|
"author": "Eemeli Aro <eemeli@gmail.com>",
|
|
"repository": "github:eemeli/yaml",
|
|
"description": "JavaScript parser and stringifier for YAML",
|
|
"keywords": [
|
|
"YAML",
|
|
"parser",
|
|
"stringifier"
|
|
],
|
|
"homepage": "https://eemeli.org/yaml/v1/",
|
|
"files": [
|
|
"browser/",
|
|
"dist/",
|
|
"types/",
|
|
"*.d.ts",
|
|
"*.js",
|
|
"*.mjs",
|
|
"!*config.js"
|
|
],
|
|
"type": "commonjs",
|
|
"main": "./index.js",
|
|
"browser": {
|
|
"./index.js": "./browser/index.js",
|
|
"./map.js": "./browser/map.js",
|
|
"./pair.js": "./browser/pair.js",
|
|
"./parse-cst.js": "./browser/parse-cst.js",
|
|
"./scalar.js": "./browser/scalar.js",
|
|
"./schema.js": "./browser/schema.js",
|
|
"./seq.js": "./browser/seq.js",
|
|
"./types.js": "./browser/types.js",
|
|
"./types.mjs": "./browser/types.js",
|
|
"./types/binary.js": "./browser/types/binary.js",
|
|
"./types/omap.js": "./browser/types/omap.js",
|
|
"./types/pairs.js": "./browser/types/pairs.js",
|
|
"./types/set.js": "./browser/types/set.js",
|
|
"./types/timestamp.js": "./browser/types/timestamp.js",
|
|
"./util.js": "./browser/util.js",
|
|
"./util.mjs": "./browser/util.js"
|
|
},
|
|
"exports": {
|
|
".": "./index.js",
|
|
"./parse-cst": "./parse-cst.js",
|
|
"./types": [
|
|
{
|
|
"import": "./types.mjs"
|
|
},
|
|
"./types.js"
|
|
],
|
|
"./util": [
|
|
{
|
|
"import": "./util.mjs"
|
|
},
|
|
"./util.js"
|
|
],
|
|
"./": "./"
|
|
},
|
|
"scripts": {
|
|
"build": "npm run build:node && npm run build:browser",
|
|
"build:browser": "rollup -c rollup.browser-config.js",
|
|
"build:node": "rollup -c rollup.node-config.js",
|
|
"clean": "git clean -fdxe node_modules",
|
|
"lint": "eslint src/",
|
|
"prettier": "prettier --write .",
|
|
"start": "cross-env TRACE_LEVEL=log npm run build:node && node -i -e 'YAML=require(\".\")'",
|
|
"test": "jest",
|
|
"test:browsers": "cd playground && npm test",
|
|
"test:dist": "npm run build:node && jest",
|
|
"test:types": "tsc --lib ES2017 --noEmit tests/typings.ts",
|
|
"docs:install": "cd docs-slate && bundle install",
|
|
"docs:deploy": "cd docs-slate && ./deploy.sh",
|
|
"docs": "cd docs-slate && bundle exec middleman server",
|
|
"preversion": "npm test && npm run build",
|
|
"prepublishOnly": "npm run clean && npm test && npm run build"
|
|
},
|
|
"browserslist": "> 0.5%, not dead",
|
|
"prettier": {
|
|
"arrowParens": "avoid",
|
|
"semi": false,
|
|
"singleQuote": true,
|
|
"trailingComma": "none"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/core": "^7.12.10",
|
|
"@babel/plugin-proposal-class-properties": "^7.12.1",
|
|
"@babel/preset-env": "^7.12.11",
|
|
"@rollup/plugin-babel": "^5.2.3",
|
|
"babel-eslint": "^10.1.0",
|
|
"babel-jest": "^26.6.3",
|
|
"babel-plugin-trace": "^1.1.0",
|
|
"common-tags": "^1.8.0",
|
|
"cross-env": "^7.0.3",
|
|
"eslint": "^7.19.0",
|
|
"eslint-config-prettier": "^7.2.0",
|
|
"fast-check": "^2.12.0",
|
|
"jest": "^26.6.3",
|
|
"prettier": "^2.2.1",
|
|
"rollup": "^2.38.2",
|
|
"typescript": "^4.1.3"
|
|
},
|
|
"engines": {
|
|
"node": ">= 6"
|
|
}
|
|
}
|