feat: integrate /top5 priority aggregation into pm-architect#2941
feat: integrate /top5 priority aggregation into pm-architect#2941
Conversation
|
🤖 Auto-fixed version bump The version in If you need a minor or major version bump instead, please update |
Repo Guardian - PassedAll changed files are durable project infrastructure:
No ephemeral content detected. ✅
|
🤖 Automated Triage ReportRisk Level: MEDIUM Analysis SummaryWell-structured feature addition that integrates ✅ Positive Indicators
|
|
🤖 Auto-fixed version bump The version in If you need a minor or major version bump instead, please update |
Merge top5 priority aggregation directly into pm-architect rather than as a standalone skill. Adds Pattern 5 (Quick Priority View) and Pattern 6 (Daily Standup) to the orchestrator. Files added/modified: - scripts/generate_top5.py: Aggregates priorities across backlog-curator, workstream-coordinator, roadmap-strategist, and work-delegator into a strict Top 5 ranked list (weights: 35/25/25/15) - scripts/tests/test_generate_top5.py: 31 unit tests covering extraction, aggregation, ranking, tiebreaking, and edge cases - scripts/tests/conftest.py: Added pm_dir, sample_backlog_items, and populated_pm fixtures for top5 testing - SKILL.md: Added /top5 trigger, Pattern 5 and 6, updated scripts list Closes milestone 1 of #2932 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Rewrites generate_top5.py to query live GitHub data instead of reading static .pm/ YAML files. Sources issues and PRs across multiple GitHub accounts via gh CLI search API. - Reads .pm/sources.yaml for account/repo configuration - Fetches open issues and PRs via gh api search/issues - Scores by: label priority, staleness, comment activity, draft status - Falls back to .pm/backlog/ for local overrides when GitHub unavailable - Restores original gh account after multi-account queries - Weights: issues 40%, PRs 30%, roadmap alignment 20%, local 10% Tested live: 116 candidates from rysweet + rysweet_microsoft accounts 29 unit tests passing (mocked gh calls + aggregation logic) Implements Milestone 0 of #2932 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Remove dead `env` variable and unused comment in run_gh()
- Simplify get_current_gh_account() from fragile stderr parsing to `gh api user --jq`
- Fix lstrip("-* ") bug in extract_roadmap_goals() using removeprefix()
- Rename shadow variable `l` to `lbl` in list comprehensions for readability
- Fix SKILL.md weight documentation to match actual code (40/30/20/10)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Five gadugi-agentic-test YAML scenarios covering: - Smoke test: valid JSON output with expected keys - GitHub source aggregation: end-to-end with real sources.yaml - Error handling: malformed YAML, missing dirs, empty sources - Local overrides: .pm/backlog + roadmap alignment scoring - Ranking enforcement: top-5 limit, rank fields 1-5, score ordering Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1698721 to
c4b607f
Compare
…s, and repo summary
The previous output was a flat ranked list with no context for decision-making.
Now includes:
- Score breakdown per item (label_priority, staleness, activity components)
- Suggested action per item ("Merge, close, or rebase", "Fix immediately", etc.)
- Near-misses (items #6-#10 that just missed the cut)
- Per-repo summary (issue/PR counts, high-priority counts)
- Per-account summary (total work across repos)
- Full metadata preserved (labels, dates, days_stale, draft status, comments)
40 tests passing (up from 29), covering new features:
- suggest_action logic for all source types
- near_misses return from aggregate_and_rank
- build_repo_summary grouping and counting
Refs #2932
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Repo Guardian - Action RequiredThe following files contain ephemeral project management state that will become stale as development continues and do not belong in version control: 🚫 Violations1.
|
✅ Triage Result: READY FOR MERGEPriority: HIGH | Risk: MEDIUM AssessmentThis PR is the only mergeable PR out of 4 agent-created PRs currently open. It has:
Recommended ActionMerge immediately to unblock integration pipeline. Quality Notes
RelatedSee full triage report in repo memory: Automated triage by PR Triage Agent - Run #22827330377
|
- Sync all new pm-architect files to amplifier-bundle/skills/ and docs/claude/skills/ (fixes "Check skill/agent drift" CI failure) - Remove .pm/ ephemeral state files (backlog, workstreams, delegations, config) that Repo Guardian correctly flagged as point-in-time state - Add .pm/ to .gitignore to prevent future accidental commits Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
🤖 Auto-fixed version bump The version in If you need a minor or major version bump instead, please update |
…2950) * feat: Oxidizer recipe — automated Python-to-Rust migration workflow Adds the oxidizer-workflow recipe, skill definition, and documentation. - amplifier-bundle/recipes/oxidizer-workflow.yaml: 65-step recipe with iterative convergence loops, quality audits, and zero-tolerance parity - .claude/skills/oxidizer-workflow/SKILL.md: Skill definition with activation keywords and usage examples - docs/OXIDIZER.md: Full documentation covering all phases, context variables, and the zero-tolerance policy - mkdocs.yml: Navigation entries for the workflow and skill Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * [skip ci] chore: Auto-bump patch version --------- Co-authored-by: Ubuntu <azureuser@devo.xh24nwhiyviedbtbx54dafh01e.dx.internal.cloudapp.net> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
# Conflicts: # pyproject.toml
|
🤖 Auto-fixed version bump The version in If you need a minor or major version bump instead, please update |
Repo Guardian - Passed ✅All files in this PR contain durable content appropriate for the repository:
Note: Pattern 6 and the Scripts section reference
|
Summary
generate_top5.pyscript + 31 unit tests topm-architect/scripts//top5as an explicit trigger for pm-architectArchitecture Decision
Per discussion: all new PM capabilities (top5, standup, workiq bridge, cross-project) should live inside pm-architect rather than as independent skills. This keeps the PM system cohesive.
Supersedes closed PR #2940 (standalone /top5 skill).
What Changed
SKILL.md/top5trigger, Patterns 5 & 6, updated scripts listscripts/generate_top5.pyscripts/tests/test_generate_top5.pyscripts/tests/conftest.pyAggregation Weights
Test plan
/top5in a project with.pm/stateImplements Milestone 1 of #2932
🤖 Generated with Claude Code