tftsr-devops_investigation/node_modules/@wdio/cli/build/commands/run.d.ts
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

236 lines
8.8 KiB
TypeScript

import type { Argv } from 'yargs';
import type { RunCommandArguments } from '../types.js';
export declare const command = "run <configPath>";
export declare const desc = "Run your WDIO configuration file to initialize your tests. (default)";
export declare const cmdArgs: {
readonly watch: {
readonly desc: "Run WebdriverIO in watch mode";
readonly type: "boolean";
};
readonly hostname: {
readonly alias: "h";
readonly desc: "automation driver host address";
readonly type: "string";
};
readonly port: {
readonly alias: "p";
readonly desc: "automation driver port";
readonly type: "number";
};
readonly path: {
readonly type: "string";
readonly desc: "path to WebDriver endpoints (default \"/\")";
};
readonly user: {
readonly alias: "u";
readonly desc: "username if using a cloud service as automation backend";
readonly type: "string";
};
readonly key: {
readonly alias: "k";
readonly desc: "corresponding access key to the user";
readonly type: "string";
};
readonly logLevel: {
readonly alias: "l";
readonly desc: "level of logging verbosity";
readonly choices: readonly ["trace", "debug", "info", "warn", "error", "silent"];
};
readonly bail: {
readonly desc: "stop test runner after specific amount of tests have failed";
readonly type: "number";
};
readonly baseUrl: {
readonly desc: "shorten url command calls by setting a base url";
readonly type: "string";
};
readonly waitforTimeout: {
readonly alias: "w";
readonly desc: "timeout for all waitForXXX commands";
readonly type: "number";
};
readonly updateSnapshots: {
readonly alias: "s";
readonly desc: "update DOM, image or test snapshots";
readonly type: "string";
readonly coerce: (value: string) => string;
};
readonly framework: {
readonly alias: "f";
readonly desc: "defines the framework (Mocha, Jasmine or Cucumber) to run the specs";
readonly type: "string";
};
readonly reporters: {
readonly alias: "r";
readonly desc: "reporters to print out the results on stdout";
readonly type: "array";
};
readonly suite: {
readonly desc: "overwrites the specs attribute and runs the defined suite";
readonly type: "array";
};
readonly spec: {
readonly desc: "run only a certain spec file or wildcard - overrides specs piped from stdin";
readonly type: "array";
};
readonly exclude: {
readonly desc: "exclude certain spec file or wildcard from the test run - overrides exclude piped from stdin";
readonly type: "array";
};
readonly repeat: {
readonly desc: "Repeat specific specs and/or suites N times";
readonly type: "number";
};
readonly mochaOpts: {
readonly desc: "Mocha options";
readonly coerce: (opts: {
[x: string]: string | number | boolean | (string | number | boolean)[];
}) => {
[x: string]: string | number | boolean | (string | number | boolean)[];
};
};
readonly jasmineOpts: {
readonly desc: "Jasmine options";
readonly coerce: (opts: {
[x: string]: string | number | boolean | (string | number | boolean)[];
}) => {
[x: string]: string | number | boolean | (string | number | boolean)[];
};
};
readonly cucumberOpts: {
readonly desc: "Cucumber options";
readonly coerce: (opts: {
[x: string]: string | number | boolean | (string | number | boolean)[];
}) => {
[x: string]: string | number | boolean | (string | number | boolean)[];
};
};
readonly coverage: {
readonly desc: "Enable coverage for browser runner";
};
readonly shard: {
readonly desc: "Shard tests and execute only the selected shard. Specify in the one-based form like `--shard x/y`, where x is the current and y the total shard.";
readonly coerce: (shard: string) => {
current: number;
total: number;
};
};
};
export declare const builder: (yargs: Argv) => Argv<import("yargs").Omit<{}, "exclude" | "bail" | "updateSnapshots" | "framework" | "reporters" | "watch" | "shard" | "mochaOpts" | "jasmineOpts" | "cucumberOpts" | "baseUrl" | "waitforTimeout" | "logLevel" | "hostname" | "port" | "path" | "user" | "key" | "coverage" | "suite" | "spec" | "repeat"> & import("yargs").InferredOptionTypes<{
readonly watch: {
readonly desc: "Run WebdriverIO in watch mode";
readonly type: "boolean";
};
readonly hostname: {
readonly alias: "h";
readonly desc: "automation driver host address";
readonly type: "string";
};
readonly port: {
readonly alias: "p";
readonly desc: "automation driver port";
readonly type: "number";
};
readonly path: {
readonly type: "string";
readonly desc: "path to WebDriver endpoints (default \"/\")";
};
readonly user: {
readonly alias: "u";
readonly desc: "username if using a cloud service as automation backend";
readonly type: "string";
};
readonly key: {
readonly alias: "k";
readonly desc: "corresponding access key to the user";
readonly type: "string";
};
readonly logLevel: {
readonly alias: "l";
readonly desc: "level of logging verbosity";
readonly choices: readonly ["trace", "debug", "info", "warn", "error", "silent"];
};
readonly bail: {
readonly desc: "stop test runner after specific amount of tests have failed";
readonly type: "number";
};
readonly baseUrl: {
readonly desc: "shorten url command calls by setting a base url";
readonly type: "string";
};
readonly waitforTimeout: {
readonly alias: "w";
readonly desc: "timeout for all waitForXXX commands";
readonly type: "number";
};
readonly updateSnapshots: {
readonly alias: "s";
readonly desc: "update DOM, image or test snapshots";
readonly type: "string";
readonly coerce: (value: string) => string;
};
readonly framework: {
readonly alias: "f";
readonly desc: "defines the framework (Mocha, Jasmine or Cucumber) to run the specs";
readonly type: "string";
};
readonly reporters: {
readonly alias: "r";
readonly desc: "reporters to print out the results on stdout";
readonly type: "array";
};
readonly suite: {
readonly desc: "overwrites the specs attribute and runs the defined suite";
readonly type: "array";
};
readonly spec: {
readonly desc: "run only a certain spec file or wildcard - overrides specs piped from stdin";
readonly type: "array";
};
readonly exclude: {
readonly desc: "exclude certain spec file or wildcard from the test run - overrides exclude piped from stdin";
readonly type: "array";
};
readonly repeat: {
readonly desc: "Repeat specific specs and/or suites N times";
readonly type: "number";
};
readonly mochaOpts: {
readonly desc: "Mocha options";
readonly coerce: (opts: {
[x: string]: string | number | boolean | (string | number | boolean)[];
}) => {
[x: string]: string | number | boolean | (string | number | boolean)[];
};
};
readonly jasmineOpts: {
readonly desc: "Jasmine options";
readonly coerce: (opts: {
[x: string]: string | number | boolean | (string | number | boolean)[];
}) => {
[x: string]: string | number | boolean | (string | number | boolean)[];
};
};
readonly cucumberOpts: {
readonly desc: "Cucumber options";
readonly coerce: (opts: {
[x: string]: string | number | boolean | (string | number | boolean)[];
}) => {
[x: string]: string | number | boolean | (string | number | boolean)[];
};
};
readonly coverage: {
readonly desc: "Enable coverage for browser runner";
};
readonly shard: {
readonly desc: "Shard tests and execute only the selected shard. Specify in the one-based form like `--shard x/y`, where x is the current and y the total shard.";
readonly coerce: (shard: string) => {
current: number;
total: number;
};
};
}>>;
export declare function launchWithStdin(wdioConfPath: string, params: Partial<RunCommandArguments>): void;
export declare function launch(wdioConfPath: string, params: Partial<RunCommandArguments>): Promise<void>;
export declare function handler(argv: RunCommandArguments): Promise<void>;
//# sourceMappingURL=run.d.ts.map