Skip to content

Reduce failed-attempts.md hook-debt backlog and class-count clustering drift #266

Description

@DrumRobot

Problem

cleanup's failed-attempts.md corpus has two escalating backlog signals that a recent fa-classify.py --relaxed run confirmed are not resolvable via the normal archive/dedup pass:

  • Class count drift: total recorded failure-pattern classes have grown to 161-165, well past the escalation threshold of 50. COLD candidates (safe to archive) are 0, so a normal archive pass cannot shrink this — the classes are still active/relevant, just too numerous and likely contain near-duplicates or overly narrow splits that should be merged.
  • Hook-debt backlog: 9 classes are marked status=hook-pending (a hook was proposed as the fix but never implemented/verified), above the threshold of 8. This has crossed the threshold twice recently (dropped to 7 after one promotion, then rose back to 9 as new patterns were registered faster than hooks were implemented).

Both signals point to the same underlying issue: pattern registration is outpacing implementation/consolidation work on this corpus.

Scope

  1. Class-count clustering review: review the ~161-165 recorded classes for merge/split candidates — classes that describe the same underlying failure mode with different wording, or classes that were split too finely and should be recombined. Reduce the total count meaningfully (target: closer to the 50-class threshold, though full compliance may take multiple passes).
  2. Hook-debt sprint: for the 9 hook-pending classes, either (a) implement and verify the proposed hook (promoting the class to hook-active), or (b) determine the hook is no longer warranted and reclassify/close the entry. Prioritize classes with the clearest, most mechanically verifiable fixes first.
  3. Registration discipline: while working through the backlog, avoid registering further new failed-attempts classes in this repo unless truly novel — the backlog itself indicates recent registration has outpaced follow-through.

Out of scope

  • Wholesale rewrite of the failed-attempts.md format or classification scheme.
  • Classes with status=rule-covered or status=watch — these are intentionally left as-is pending real-world recurrence, not part of this backlog.

Implementation Plan

  • Run fa-classify.py --relaxed (or the current equivalent) to get a fresh class inventory with status breakdown
  • Identify merge/split candidates among the ~161-165 classes and consolidate duplicates
  • For each of the 9 hook-pending classes: implement + verify the hook, or reclassify if no longer warranted
  • Re-run the classifier to confirm both counts (hook-pending and total class count) have moved meaningfully toward their thresholds

Verification

Feature Procedure Expected Result
Hook-debt reduction Re-run the classifier after implementing/reclassifying pending-hook classes hook-pending count drops below the threshold of 8
Class-count reduction Re-run the classifier after the merge/split pass Total class count measurably lower than the 161-165 starting point
No regression Spot-check a sample of merged/reclassified entries No loss of information — merged entries retain all distinct failure scenarios they represented

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions