{ "schemaVersion": "1.0", "telemetryVersion": "1.1.0", "principles": { "purpose": "ux-improvement-and-operational-diagnosis", "noRawBusinessData": true, "noSensitiveData": true, "noDomClickSpying": true, "semanticEventsOnly": true, "rawRetentionDays": 90, "dailyAggregateRetentionMonths": 13 }, "events": [ { "name": "screen.open", "category": "navigation", "description": "화면 진입", "allowedAttributes": [ "module", "launchMode" ] }, { "name": "screen.close", "category": "navigation", "description": "화면 종료", "allowedAttributes": [ "module", "closeReason" ] }, { "name": "task.start", "category": "task", "description": "측정 가능한 업무 Task 시작", "allowedAttributes": [ "taskType" ] }, { "name": "task.complete", "category": "task", "description": "업무 Task 정상 완료", "allowedAttributes": [ "taskType", "result" ], "requiresDuration": true }, { "name": "task.abandon", "category": "task", "description": "업무 Task 중단", "allowedAttributes": [ "taskType", "reasonCode" ], "requiresDuration": true }, { "name": "interaction.execute", "category": "interaction", "description": "KBX 의미 단위 업무 조작 실행", "allowedAttributes": [ "interactionType", "commandId" ] }, { "name": "search.execute", "category": "interaction", "description": "조회 실행", "allowedAttributes": [ "resultBucket" ] }, { "name": "command.execute", "category": "command", "description": "업무 Command 실행 시도", "allowedAttributes": [ "commandId", "operationKind" ] }, { "name": "command.succeeded", "category": "command", "description": "업무 Command 성공", "allowedAttributes": [ "commandId", "operationKind" ], "requiresDuration": true }, { "name": "command.failed", "category": "command", "description": "업무 Command 실패", "allowedAttributes": [ "commandId", "problemType", "reasonCode" ], "requiresDuration": true }, { "name": "lookup.open", "category": "lookup", "description": "Lookup 열기", "allowedAttributes": [ "entityType" ] }, { "name": "lookup.select", "category": "lookup", "description": "Lookup 선택 완료", "allowedAttributes": [ "entityType", "selectionSource" ] }, { "name": "grid.bulk_action", "category": "interaction", "description": "Grid 일괄처리 실행", "allowedAttributes": [ "commandId", "countBucket" ] }, { "name": "validation.failed", "category": "quality", "description": "저장/업무 실행 전후 검증 실패", "allowedAttributes": [ "stage", "errorCountBucket", "reasonCode" ] }, { "name": "excel.import.start", "category": "excel", "description": "Excel Import 시작", "allowedAttributes": [ "importType", "rowCountBucket" ] }, { "name": "excel.import.completed", "category": "excel", "description": "Excel Import 완료", "allowedAttributes": [ "importType", "result", "rowCountBucket" ], "requiresDuration": true }, { "name": "excel.import.failed", "category": "excel", "description": "Excel Import 실패", "allowedAttributes": [ "importType", "reasonCode", "rowCountBucket" ], "requiresDuration": true }, { "name": "exception.open", "category": "exception", "description": "업무 예외 생성/노출", "allowedAttributes": [ "exceptionType", "severity" ] }, { "name": "exception.resolved", "category": "exception", "description": "업무 예외 해결", "allowedAttributes": [ "exceptionType", "resolutionType" ], "requiresDuration": true }, { "name": "ai.proposal.open", "category": "ai", "description": "AI 제안 확인", "allowedAttributes": [ "proposalType" ] }, { "name": "ai.proposal.accept", "category": "ai", "description": "AI 제안 승인", "allowedAttributes": [ "proposalType" ] }, { "name": "ai.proposal.reject", "category": "ai", "description": "AI 제안 거절", "allowedAttributes": [ "proposalType", "reasonCode" ] }, { "name": "manual.intervention", "category": "outcome", "description": "정상 자동처리 대신 사람의 확인/수정/판단이 필요했던 업무", "allowedAttributes": [ "workType", "reasonCode", "exceptionType" ] }, { "name": "experiment.exposed", "category": "experiment", "description": "실험 Variant가 실제 화면에 렌더링되어 사용자에게 노출됨", "allowedAttributes": [ "surface" ] } ], "metrics": [ { "key": "task_completion_time_ms", "label": "Task Completion Time", "numerator": "task.complete.duration_ms", "aggregation": "p50,p95", "unit": "ms" }, { "key": "semantic_interactions_per_task", "label": "Interactions / Task", "numerator": "interaction.execute", "denominator": "task.complete", "aggregation": "ratio", "unit": "count" }, { "key": "manual_intervention_rate", "label": "Manual Intervention Rate", "numerator": "ux_business_outcomes.manual_intervention_count", "denominator": "ux_business_outcomes.observed_count", "aggregation": "ratio", "unit": "percent" }, { "key": "validation_failure_rate", "label": "Validation Failure Rate", "numerator": "validation.failed", "denominator": "command.execute", "aggregation": "ratio", "unit": "percent" }, { "key": "import_failure_rate", "label": "Import Failure Rate", "numerator": "excel.import.failed", "denominator": "excel.import.start", "aggregation": "ratio", "unit": "percent" }, { "key": "exception_resolution_time_ms", "label": "Exception Resolution Time", "numerator": "exception.resolved.duration_ms", "aggregation": "p50,p95", "unit": "ms" }, { "key": "ai_proposal_acceptance_rate", "label": "AI Proposal Acceptance Rate", "numerator": "ai.proposal.accept", "denominator": "ai.proposal.open", "aggregation": "ratio", "unit": "percent" } ] }