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.7 KiB
WDIO Globals
A helper utility for importing global variables directly
In your test files, WebdriverIO puts each of these methods and objects into the global environment. You don't have to import anything to use them. However, if you prefer explicit imports, you can do import { browser, $, $$, expect } from '@wdio/globals' and set injectGlobals: false in your WDIO configuration.
The following global objects are set if not configured otherwise:
browser: WebdriverIO Browser objectdriver: alias to browser (used when running mobile tests)multiRemoteBrowser: alias to browser or driver but only set for Multiremote sessions$: command to fetch an element (see more in API docs)$$: command to fetch elements (see more in API docs)expect: assertion framework for WebdriverIO (see API docs)
Note: WebdriverIO has no control of used frameworks (e.g. Mocha or Jasmine) setting global variables when bootstrapping their environment.
Install
To install the package, run:
npm i @wdio/globals --save-dev
Usage
You can implicitly import WebdriverIO primitives as following:
import { browser, $, $$, expect } from '@wdio/globals'
describe('my test', () => {
// ...
it('can do something', async () => {
// ...
})
// ...
})
TypeScript
If you have a TypeScript project you can propagate the WebdriverIO namespace by adding this package to the types list, e.g.:
{
"compilerOptions": {
"types": ["node", "@wdio/globals/types"]
}
}
For more information on WebdriverIO Globals, check out the docs.