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.