Commit 68aa30f
feat(sweep-tracker): hierarchical estate-sweep Markdown report
Adds `panic-attack sweep-tracker` subcommand that renders an issue-#32
shaped sweep tracker by joining per-finding hexads (issue #33 S1) with
campaign-state hexads (issue #33 S2). Distinct from `campaign status`:
that is a flat per-finding table; this is a hierarchical checklist
grouped by repo and/or category, with an estate-wide summary header.
Flags:
- `--verisimdb-dir DIR` : hexad store root (default `verisimdb-data`)
- `--output FILE` : write Markdown to file instead of stdout
- `--by-repo` : emit only the "By repo" section
- `--by-category` : emit only the "By category" section
- no flag : emit both sections (default)
Output is deterministic — repos alphabetically, findings within each
repo sorted by (rule_id, file, line). A finding with no campaign
hexad shows state `open`; with one, shows the latest state plus PR
URL (rendered as `#<num>` link) or dismissal reason.
Tests cover empty store, by-repo grouping, by-category grouping,
campaign-state join (open / pr-merged / dismissed), deterministic
ordering, both-shape ordering, and PR-number label extraction.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent d6e41dc commit 68aa30f
3 files changed
Lines changed: 726 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
| 38 | + | |
38 | 39 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
| 33 | + | |
33 | 34 | | |
34 | 35 | | |
35 | 36 | | |
| |||
753 | 754 | | |
754 | 755 | | |
755 | 756 | | |
| 757 | + | |
| 758 | + | |
| 759 | + | |
| 760 | + | |
| 761 | + | |
| 762 | + | |
| 763 | + | |
| 764 | + | |
| 765 | + | |
| 766 | + | |
| 767 | + | |
| 768 | + | |
| 769 | + | |
| 770 | + | |
| 771 | + | |
| 772 | + | |
| 773 | + | |
| 774 | + | |
| 775 | + | |
| 776 | + | |
| 777 | + | |
| 778 | + | |
| 779 | + | |
| 780 | + | |
756 | 781 | | |
757 | 782 | | |
758 | 783 | | |
| |||
2451 | 2476 | | |
2452 | 2477 | | |
2453 | 2478 | | |
| 2479 | + | |
| 2480 | + | |
| 2481 | + | |
| 2482 | + | |
| 2483 | + | |
| 2484 | + | |
| 2485 | + | |
| 2486 | + | |
| 2487 | + | |
| 2488 | + | |
| 2489 | + | |
| 2490 | + | |
| 2491 | + | |
| 2492 | + | |
| 2493 | + | |
| 2494 | + | |
| 2495 | + | |
| 2496 | + | |
| 2497 | + | |
| 2498 | + | |
| 2499 | + | |
| 2500 | + | |
2454 | 2501 | | |
2455 | 2502 | | |
2456 | 2503 | | |
| |||
0 commit comments