Conversation
|
Coverage after merging feat/team-hierarchy-pick-team-auto into feat/team-hierarchy-remove-consolidate will be
Coverage Report
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
🔦 Lighthouse Report
|
|
Coverage after merging feat/team-hierarchy-pick-team-auto into feat/team-hierarchy-remove-consolidate will be
Coverage Report
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
autoPickTeamsByCommonPrefix() can silently skip resolving nested combined sections because it iterates combined paths in an order that can invalidate descendant paths after a parent resolution.
Get a fresh assessment by requesting another Copilot review.
Review effort: Lite
Findings: 1
What changed in this PR
Adds a new --pick-team-auto flag to reduce manual --pick-team assignments by automatically resolving combined team sections when one candidate team name is a literal prefix of all others, and threads this flag through replay/interactive flows, completions, docs, and tests.
Changes:
- Introduces
autoPickTeamsByCommonPrefix()insrc/group.tsand wires it into the CLI flow (github-code-search.ts) after explicit--pick-teamresolutions. - Threads
pickTeamAutothrough replay command generation (src/output.ts) and interactive replay (src/tui.ts), with corresponding unit tests. - Updates shell completions and documentation to expose and explain
--pick-team-auto.
| File | Description |
|---|---|
| src/tui.ts | Threads pickTeamAuto into interactive replay options. |
| src/output.ts | Adds pickTeamAuto to ReplayOptions and emits --pick-team-auto in replay commands. |
| src/output.test.ts | Adds test coverage for replay-command emission and JSON replay threading. |
| src/group.ts | Adds auto-pick logic for resolving combined sections by common-prefix. |
| src/group.test.ts | Adds unit tests for auto-pick behavior across multiple scenarios and nesting. |
| src/completions.ts | Adds completion metadata for the new flag. |
| src/completions.test.ts | Verifies completion scripts include the new flag. |
| github-code-search.ts | Adds CLI flag, applies auto-pick, and threads it into output + interactive replay. |
| docs/usage/team-grouping.md | Documents the new auto-pick behavior and usage. |
| docs/reference/cli-options.md | Adds the CLI options table row for --pick-team-auto. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Auto-resolves a combined team section (e.g. "gamme-lead-client + gamme-lead-client-p1") to whichever team name is a literal prefix of every other team name in the combo, at any hierarchy depth. Combos with no common-prefix team are left combined/unresolved, and an explicit --pick-team for the same section always wins (auto-pick runs after explicit assignments). Closes #197
- Auto-nesting of an overlapping single-team label inserts an extra heading level beyond the declared chain depth (documents intended interaction of 2 separate mechanisms, not a bug). - A repo matching only a 2nd-level chain prefix (e.g. squad-) with no 1st-level match (gamme-) is invisible to that chain and falls through to a later independent chain (chapter-) instead. - --pick-team-auto correctly leaves combos unresolved when no single candidate is a literal prefix of every other candidate, even when several combos share some team members.
3542751 to
845771d
Compare
|
Coverage after merging feat/team-hierarchy-pick-team-auto into feat/team-hierarchy-remove-consolidate will be
Coverage Report
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

What does this PR do?
Adds
--pick-team-auto: automatically resolves combined team sections whose team names share a common prefix, at any hierarchy depth, without requiring an explicit--pick-team."a + b"), if exactly one team name is a literal string-prefix of every other team name in the combo (e.g.gamme-lead-clientfor"gamme-lead-client + gamme-lead-client-p1"), auto-resolve to that team."squad-frontend + squad-mobile") are left combined and unresolved — same as today,--pick-teamstill works for these.--pick-teamassignments, so an explicit pick for the same section always wins.src/group.ts: newautoPickTeamsByCommonPrefix(+ privatefindCommonPrefixTeamhelper).github-code-search.ts: new CLI flag, wired before the "unresolved combined sections" stderr note (now also triggered by--pick-team-auto).src/output.ts/src/tui.ts: threadedpickTeamAutothroughReplayOptions/buildReplayCommand/runInteractiveso a session using the flag replays identically.src/completions.ts: new completion entry.Closes #197. Depends on #198 (branch is stacked on top of it).
How did you verify your code works?
src/group.test.tscovering: single common-prefix winner, no common prefix (left combined), 3+-way combos (shortest-prefix wins), nested (non-top-level) sections, explicit-pick-wins-over-auto, purity, and no-op when nothing is combined.src/output.test.ts/src/completions.test.tsfor replay-command emission and completion scripts.bun test(990 passing),bun run lint,bun run format:check,bun run knip,bun run build.tsall green.