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>
52 lines
1.8 KiB
TypeScript
52 lines
1.8 KiB
TypeScript
/**
|
|
* Character classes and associated utilities for the 5th edition of XML 1.0.
|
|
*
|
|
* @author Louis-Dominique Dubeau
|
|
* @license MIT
|
|
* @copyright Louis-Dominique Dubeau
|
|
*/
|
|
export declare const CHAR = "\t\n\r -\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF";
|
|
export declare const S = " \t\r\n";
|
|
export declare const NAME_START_CHAR = ":A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\uD800\uDC00-\uDB7F\uDFFF";
|
|
export declare const NAME_CHAR: string;
|
|
export declare const CHAR_RE: RegExp;
|
|
export declare const S_RE: RegExp;
|
|
export declare const NAME_START_CHAR_RE: RegExp;
|
|
export declare const NAME_CHAR_RE: RegExp;
|
|
export declare const NAME_RE: RegExp;
|
|
export declare const NMTOKEN_RE: RegExp;
|
|
/** All characters in the ``S`` production. */
|
|
export declare const S_LIST: number[];
|
|
/**
|
|
* Determines whether a codepoint matches the ``CHAR`` production.
|
|
*
|
|
* @param c The code point.
|
|
*
|
|
* @returns ``true`` if the codepoint matches ``CHAR``.
|
|
*/
|
|
export declare function isChar(c: number): boolean;
|
|
/**
|
|
* Determines whether a codepoint matches the ``S`` (space) production.
|
|
*
|
|
* @param c The code point.
|
|
*
|
|
* @returns ``true`` if the codepoint matches ``S``.
|
|
*/
|
|
export declare function isS(c: number): boolean;
|
|
/**
|
|
* Determines whether a codepoint matches the ``NAME_START_CHAR`` production.
|
|
*
|
|
* @param c The code point.
|
|
*
|
|
* @returns ``true`` if the codepoint matches ``NAME_START_CHAR``.
|
|
*/
|
|
export declare function isNameStartChar(c: number): boolean;
|
|
/**
|
|
* Determines whether a codepoint matches the ``NAME_CHAR`` production.
|
|
*
|
|
* @param c The code point.
|
|
*
|
|
* @returns ``true`` if the codepoint matches ``NAME_CHAR``.
|
|
*/
|
|
export declare function isNameChar(c: number): boolean;
|