voidzero-dev / voidzero-dev/vite-task

Proposal: task metadata (description) + aliases/groups for discoverability at scale

Offen
#277 2 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Rust
Sterne
466
Forks
42
Ø Merge
1 T. 15 Std.
Gemergte PRs (30 T.)
19

Beschreibung

Problem

As task count grows, discoverability becomes a major UX issue.
just provides aliases and groups; it also has strong listing/help UX. Vite Tasks appears command-centric and does not expose first-class description/alias/group metadata in the task schema (based on the public schema file).

Evidence (primary)

  • Task schema appears centered around command without rich metadata fields.

Ref:

Proposed behavior (Unspecified)

  • Add optional fields:
    • description?: string
    • aliases?: string[]
    • group?: string
  • Display description/group in task listing and error messages.
  • Allow running a task via any alias, with clear conflict handling (unspecified).

Use cases

  • Provide “human intent” descriptions for tasks (deploy, release, verify, etc.)
  • Create short entry points via aliases
  • Organize tasks into groups (lint/test/build/release) for large monorepos

Backward compatibility

  • Purely additive; tasks without metadata behave exactly the same.

Minimal implementation suggestion (MVP)

  • Implement description first and show it in listings/output.
  • Add aliases resolution later, then group sorting/printing.

Prior art

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit dem Task-Schema in crates/vite_task_graph/run-config.ts und vergleiche die bestehende Struktur, die nur Befehle unterstützt, mit den vorgeschlagenen Metadaten. Kläre das Verhalten für das Auflisten, die Ausgabe, die Alias-Auflösung, Konflikte und die Reihenfolge von Gruppen, bevor du den Implementierungsumfang festlegst. Als erledigt gilt die Aufgabe, wenn die vereinbarten Metadaten unterstützt werden, ohne das Verhalten für Tasks zu ändern, die sie nicht angeben, und eine Abdeckung für das ausgewählte MVP vorhanden ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
rust, typescript
Bereich
cli, developer-experience
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Ruhig
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
38/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.