Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

feat(telemetry): give users explicit journal lifecycle controls

Aperta
#657 5 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
35/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
typescript
Ambito
cli, tooling

Direzione di ricerca

Start by tracing .aidd/, aidd_docs/runs/, runs/*.json, metadata.json, and the aidd telemetry disable command; review the related constraints in #620, #646, and #647. Define the version-control policy, retention path, schema compatibility behavior, and disable semantics. Done means rotation and pruning are tested, schema v2 and additive-key fixtures remain readable, and existing telemetry behavior is stated and matches the command.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Outcome

Users explicitly manage the lifecycle of project run journals without an automatic retention policy deleting or moving their data.

Scope

Run journals remain project data under aidd_docs/runs/. User-level telemetry reports remain separate under the user configuration directory.

No lifecycle action runs from a hook or in the background. The user chooses when it runs, which age boundary applies, and where an archive goes.

Archive

aidd telemetry archive --before <duration> --to <path> selects older journal files, compresses them into the chosen destination, verifies the archive, then removes only the archived source files.

Archives are not merged into user reports and are not read automatically. They remain recoverable data under the user's control.

Selective deletion

aidd telemetry prune --before <duration> previews the exact journal files that qualify and changes nothing.

aidd telemetry prune --before <duration> --yes deletes only the previewed files. The command states that deletion is irreversible before acting.

Boundaries

  • No automatic retention or default deletion window.
  • No shell commands: file selection, compression and deletion must be cross-platform Node behavior.
  • No change to the user-level telemetry report store.
  • No change to aidd telemetry off.
  • No change to aidd telemetry forget, which remains the explicit full-removal command.
  • No rewriting Git history; project journals are already explicitly git-ignored.

Done When

  • Archive selects only journal files older than the required --before boundary.
  • Archive writes to the required --to destination and removes no source until the archive is verified readable.
  • A failed or partial archive leaves every unverified source file intact and reports what happened.
  • Prune without --yes previews the exact selection and deletes nothing.
  • Prune with --yes deletes only that selection.
  • Path handling, age boundaries and file operations pass on Linux, macOS and Windows.
  • Existing off, forget, journal reading and report behavior remain unchanged.

Completion Evidence

Cross-platform tests archive and prune a mixed-age journal directory, prove that recent and non-journal files remain untouched, and restore/read an archived journal successfully.

Relations

Field Value
parent #631
related #620, #646, #647
Lingua principale
TypeScript
Stelle
481
Fork
45
Merge medio
10h 31m
PR unite (30g)
98

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ai-driven-dev/framework

Tutte le issue di ai-driven-dev/framework

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.