[Bug]: /speckit-converge is not idempotent — re-runs append duplicate remediation tasks
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Ambito
- developer-experience, tooling
Direzione di ricerca
Inizia leggendo .claude/skills/speckit-converge/SKILL.md e analizza come legge tasks.md, come gestisce le attività non spuntate e come aggiunge le attività di remediation. Confronta questo flusso con /speckit-implement e con il lavoro di rilevamento dei duplicati in #2968, quindi riproduci converge due volte. L’attività è completata quando lo stato dei prerequisiti viene verificato o segnalato, il lavoro esistente non spuntato viene riutilizzato o aggiornato e solo le nuove lacune ricevono nuovi ID.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Version
spec-kit v1.0.1 (.claude/skills/speckit-converge/SKILL.md)
Description
/speckit-converge only checks that tasks.md exists before assessing the codebase and appending remediation tasks. It keeps no persisted evidence that /speckit-implement actually ran against the current task list, and it does not map its findings onto existing unchecked tasks before appending.
Two consequences:
- Invoked early (before implement has run, or after a partial implementation), it appends remediation tasks for work that is already represented by existing unchecked tasks — now under new IDs, splitting traceability for the same work across two task entries.
- Invoked twice (e.g. converge → partial fix → converge again), gaps found both times are appended both times.
Expected behavior
- Converge verifies prerequisite state (an implementation checkpoint, or at minimum warns loudly when
tasks.mdcontains unchecked tasks that overlap its findings). - Before appending, each finding is compared against existing unchecked tasks; covered work is reused/updated rather than duplicated, and only genuinely new gaps get new IDs.
Context
Found while upgrading a template fleet from 0.5.0 to v1.0.1 and reviewing the newly vendored command. Related in spirit to the duplicate-detection work in #2968, but on the tasks.md side rather than GitHub issues.
- Lingua principale
- Python
- Stelle
- 138k
- Fork
- 12.4k
- Merge medio
- 3g 6h
- PR unite (30g)
- 145
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di github/spec-kit
-
enhancement needs-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
enhancement needs-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
-
enhancement needs-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
-
enhancement needs-triage triage-can-wait
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
Tutte le issue di github/spec-kit
Issue simili
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
canonical/paas-charm#368 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
tech debt
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
addition to tracking list Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
StevenBlack/hosts#3256 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
qualcomm/qai-appbuilder#275 ·