tftsr-devops_investigation/node_modules/yaml/util.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

87 lines
2.0 KiB
TypeScript

import { Document } from './index'
import { CST } from './parse-cst'
import { AST, Pair, Scalar, Schema } from './types'
export function findPair(items: any[], key: Scalar | any): Pair | undefined
export function parseMap(doc: Document, cst: CST.Map): AST.BlockMap
export function parseMap(doc: Document, cst: CST.FlowMap): AST.FlowMap
export function parseSeq(doc: Document, cst: CST.Seq): AST.BlockSeq
export function parseSeq(doc: Document, cst: CST.FlowSeq): AST.FlowSeq
export function stringifyNumber(item: Scalar): string
export function stringifyString(
item: Scalar,
ctx: Schema.StringifyContext,
onComment?: () => void,
onChompKeep?: () => void
): string
export function toJSON(
value: any,
arg?: any,
ctx?: Schema.CreateNodeContext
): any
export enum Type {
ALIAS = 'ALIAS',
BLANK_LINE = 'BLANK_LINE',
BLOCK_FOLDED = 'BLOCK_FOLDED',
BLOCK_LITERAL = 'BLOCK_LITERAL',
COMMENT = 'COMMENT',
DIRECTIVE = 'DIRECTIVE',
DOCUMENT = 'DOCUMENT',
FLOW_MAP = 'FLOW_MAP',
FLOW_SEQ = 'FLOW_SEQ',
MAP = 'MAP',
MAP_KEY = 'MAP_KEY',
MAP_VALUE = 'MAP_VALUE',
PLAIN = 'PLAIN',
QUOTE_DOUBLE = 'QUOTE_DOUBLE',
QUOTE_SINGLE = 'QUOTE_SINGLE',
SEQ = 'SEQ',
SEQ_ITEM = 'SEQ_ITEM'
}
interface LinePos {
line: number
col: number
}
export class YAMLError extends Error {
name:
| 'YAMLReferenceError'
| 'YAMLSemanticError'
| 'YAMLSyntaxError'
| 'YAMLWarning'
message: string
source?: CST.Node
nodeType?: Type
range?: CST.Range
linePos?: { start: LinePos; end: LinePos }
/**
* Drops `source` and adds `nodeType`, `range` and `linePos`, as well as
* adding details to `message`. Run automatically for document errors if
* the `prettyErrors` option is set.
*/
makePretty(): void
}
export class YAMLReferenceError extends YAMLError {
name: 'YAMLReferenceError'
}
export class YAMLSemanticError extends YAMLError {
name: 'YAMLSemanticError'
}
export class YAMLSyntaxError extends YAMLError {
name: 'YAMLSyntaxError'
}
export class YAMLWarning extends YAMLError {
name: 'YAMLWarning'
}