eslint-error-handling

Resolves TypeScript and ESLint errors in OpenObserve Vue 3 frontend codebase.

20.6k|992|Updated Feb 2, 2023
One-click install
npx skills add https://github.com/openobserve/openobserve --skill eslint-error-handling
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: eslint-error-handling
Source: https://github.com/openobserve/openobserve/tree/main/.claude/skills/eslint-error-handling
Command: npx skills add https://github.com/openobserve/openobserve --skill eslint-error-handling

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill addresses the technical debt and inconsistency in the OpenObserve web frontend by providing a structured, rule-by-rule playbook for resolving TypeScript and ESLint errors while maintaining strict codebase standards.

Core Features & Use Cases

  • Type Safety Enforcement: Provides clear conventions for avoiding the any type, preferring declaration-site typing, and mirroring backend Rust structs as TypeScript interfaces.
  • Vue 3 Best Practices: Offers specific guidance on Vue-specific linting rules, including prop mutation, component naming, and template-scoped variable usage.
  • Gradual Rollout Strategy: Includes workflows for ratcheting up linting strictness from warning to error without breaking the CI pipeline.

Quick Start

Use the eslint-error-handling skill to identify and fix all untyped API calls in the web service layer by tracing them to their corresponding Rust structs.

Frequently Asked Questions about eslint-error-handling

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I resolve TypeScript and ESLint errors in a Vue 3 frontend codebase?▼

Resolve TypeScript and ESLint errors in a Vue 3 frontend by enforcing declaration-site type definitions, mirroring backend Rust structs as TypeScript interfaces, and systematically removing unused code.

What is the best way to avoid the any type when refactoring TypeScript code?▼

Avoid the any type during TypeScript refactoring by enforcing type safety conventions, defining declaration-site types, and tracing untyped API calls to their corresponding backend Rust structs.

How do I enforce Vue 3 linting rules for component naming and prop mutation?▼

Enforce Vue 3 linting rules for component naming and prop mutation by applying specific linting playbooks that restrict prop mutation, standardize component naming, and regulate template-scoped variable usage.

Can I gradually increase ESLint strictness from warning to error without breaking CI?▼

Increase ESLint strictness from warning to error without breaking CI by implementing a ratcheting rollout strategy that systematically enforces linting rules across the codebase.

Do I need to mirror backend Rust structs as TypeScript interfaces for type checking?▼

Mirroring backend Rust structs as TypeScript interfaces is required for strict type checking to resolve untyped API calls and maintain type safety consistency across the web service layer.