You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
pm duplicates silently accepts --status all and scans zero items instead of rejecting it or selecting all statuses #930
On @unbrained/pm-cli 2026.8.7, pm duplicates --status all exits successfully but silently scans zero items. The equivalent unfiltered command scans the complete tracker. This creates a false clean duplicate-audit result in the natural all-status workflow.
This is a core command issue and reproduces with project extensions enabled or disabled.
Reproduction
In a workspace containing 85 items across lifecycle statuses:
The result cluster count happens to be zero in this workspace, but the cost.item_count evidence shows that the --status all invocation did not inspect the tracker.
Contract inconsistency
pm contracts --command duplicates --json describes status as project-configurable and states:
Unknown statuses are rejected at runtime with a did-you-mean hint.
all is not one of this workspace's configured statuses, yet it is accepted and treated as a literal filter that matches nothing. By comparison, pm list --status all explicitly supports the natural all-status spelling.
Expected behavior
Either behavior would be safe and internally consistent:
Treat --status all as the explicit all-status alias, matching pm list; or
Reject all as an unknown status with a non-zero exit and remediation to omit --status or enumerate configured statuses.
The current exit-0 empty scan is unsafe because it looks exactly like a successful full-tracker duplicate check.
Duplicate search
Searched all open and closed issues for:
pm duplicates --status all
duplicates unknown status
duplicates status filter
zero items duplicates
Reviewed adjacent duplicate-command issues #705, #709, #739, #830, and #871. None covers silent zero-item scans for the all status value.
Check the box below or use the @coderabbitai plan command to generate an implementation plan and prompts that you can use with your favorite coding assistant.
Create Plan
🧪 Issue enrichment is currently in open beta.
You can configure auto-planning by selecting labels in the issue_enrichment configuration.
To disable automatic issue enrichment, add the following to your .coderabbit.yaml:
issue_enrichment:
auto_enrich:
enabled: false
💬 Have feedback or questions? Drop into our discord!
Canonical PM item: pm-sy24w2. This preserves the all-status duplicate check, reproduction, typed links to the earlier package-owned all-status fix and list/search contract, acceptance criteria, and future verification evidence.
Resolved by #940. Duplicate detection now supports truthful all-status scans plus bounded status/type/tag filters, canonical filter receipts, and fail-closed empty-filter validation. Full lineage and verification: pm-sy24w2.
Activity
coderabbitai commentedon Aug 7, 2026
🔗 Related PRs
#310 - Fix status-all context filters [merged]
#545 - SDK contract integrity: workspace paths, dependency truth, validation, and MCP parity [merged]
#712 - SDK context integrity: atomic Plans, batch similarity, sparse settings, and tombstones [merged]
#753 - feat(sdk): universal context, concurrency, and discovery primitives [merged]
#795 - SDK output budgets, exact dependency accounting, and portable merge contracts [merged]
📝 Issue Planner
Check the box below or use the
@coderabbitai plancommand to generate an implementation plan and prompts that you can use with your favorite coding assistant.🧪 Issue enrichment is currently in open beta.
You can configure auto-planning by selecting labels in the issue_enrichment configuration.
To disable automatic issue enrichment, add the following to your
.coderabbit.yaml:💬 Have feedback or questions? Drop into our discord!
unbraind commentedon Aug 7, 2026
Canonical PM item: pm-sy24w2. This preserves the all-status duplicate check, reproduction, typed links to the earlier package-owned all-status fix and list/search contract, acceptance criteria, and future verification evidence.
unbraind commentedon Aug 8, 2026
Resolved by #940. Duplicate detection now supports truthful all-status scans plus bounded status/type/tag filters, canonical filter receipts, and fail-closed empty-filter validation. Full lineage and verification: pm-sy24w2.