Skip to content

backlog-triage: replace judgment heuristics with prompt guidance (Option B) #358

Description

@sungjunlee

Summary

Adopted spike Option B from the backlog-triage simplification spike (measure-only): replace the ~265 judgment/heuristic lines in triage-relate.js, triage-stale.js, and triage-report.js with prompt-level rubric guidance. Deterministic computation stays in scripts; semantic judgment moves to the model.

Changes

  • triage-relate.js: removed phrase-based blocks / depends-on (scanPhraseEdges/scanBlocks/scanDependsOn) and title-Jaccard duplicates (tokenizeTitle/jaccardSimilarity/findDuplicateCandidates). Script now emits deterministic edges only: mentions, comment-mentions, merged-pr-link. Dropped the now-unused readTriageConfig/resolveBacklogDir/DEFAULT_CONFIG_PATH.
  • triage-stale.js: removed scanDuplicateOfClosed/closedIssueMatches/jaccardSimilarity and SIGNALS.DUPLICATE_OF_CLOSED; duplicate-of-closed is now a model judgment. Script keeps date/label signals: inactive, wontfix, invalid, merged-closing-pr.
  • triage-report.js: removed buildThemeStats/buildRelationshipCounts/buildPriorityActions/buildMilestoneActions (and getIsoWeek/nextSprintName). Added --model-actions PATH — the model's judged priority/milestone actions are rendered deterministically (anchors, dedupe, Apply Checklist unchanged).
  • Rubric docs: references/relationships.md (model-judged blocks/depends-on/duplicate rubric), references/stale.md (model-judged duplicate-of-closed), references/decision-review.md (priority/milestone proposal rubric), SKILL.md (--model-actions JSON format + judgment distribution).

Verification

  • 453 pass / 0 fail (unit + integration), smoke-test 190 pass / 0 fail.
  • Net script/test delta: ~-454 lines (195 insertions / 649 deletions across 11 files).

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions