voidzero-dev / voidzero-dev/vite-task
Proposal: task metadata (description) + aliases/groups for discoverability at scale
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
commandwithout rich metadata fields.
Ref:
Proposed behavior (Unspecified)
- Add optional fields:
description?: stringaliases?: 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
descriptionfirst and show it in listings/output. - Add
aliasesresolution later, thengroupsorting/printing.
Prior art
- just aliases: https://just.systems/man/en/aliases.html
- just groups: https://just.systems/man/en/groups.html
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Ö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