fix(taskstoissues): widen task-ID regex to match IDs longer than 3 digits - #4101
Open
ira-at-work wants to merge 1 commit into
Open
fix(taskstoissues): widen task-ID regex to match IDs longer than 3 digits#4101ira-at-work wants to merge 1 commit into
ira-at-work wants to merge 1 commit into
Conversation
…gits
/speckit.converge assigns new IDs with T{M+1:03d}, where :03d is a
floor not a cap, so IDs already exceed three digits once a tasks.md
passes 999 entries. The dedup regex `\bT\d{3}\b` cannot match those
titles because the trailing \b can't fall between two digits, so
affected tasks are silently skipped instead of deduped or created.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
/speckit.convergeassigns new task IDs withT{M+1:03d}—:03dis a zero-pad floor, not a width cap, so oncetasks.mdhas more than 999 tasks the generated IDs are four digits or longer (e.g.T1000)./speckit.taskstoissuesmatches issue titles against\bT\d{3}\bto dedupe. That pattern requires exactly three digits followed by a word boundary, which can never fall between two digits — so a title containingT1000doesn't match at all, and that task is silently neither deduplicated nor created.\bT\d{3,}\band updates the accompanying explanation. Word boundaries still preventST001-style false positives, and the digit run is still consumed in full soT100can't match insideT1000.Split out of the discussion on #4065, which noted this bug is already reachable on
maintoday independent of that proposal (see also #3866).Test plan
/speckit.taskstoissuesagainst atasks.mdwith >999 tasks (or a converge-appended ID pastT999) and confirm the regex now matches and dedupes correctly.T001) still match as before.🤖 Generated with Claude Code