Skip to content

refactor: pm-stack → Portfolio Manager bundle (manager-of-teams tier)#9

Merged
mabry1985 merged 3 commits into
mainfrom
refactor/portfolio-manager-bundle
Jun 21, 2026
Merged

refactor: pm-stack → Portfolio Manager bundle (manager-of-teams tier)#9
mabry1985 merged 3 commits into
mainfrom
refactor/portfolio-manager-bundle

Conversation

@mabry1985

Copy link
Copy Markdown
Contributor

What

Completes the portfolio→team split (ADR 0055). The Lead Engineer bundle is the team tier (project_board + a repo's coding agents); pm-stack is now the manager tier that orchestrates and spawns those teams.

Changes

  • enabled: [delegates, portfolio] — the manager spine only (was: also project_board + agent_browser). The PM runs no board of its own.
  • project_board + agent_browser stay installed but off. A spawned team's plugins.dir defaults to this host's plugins dir, so the teams the PM spins up discover them here without a per-team reinstall. Install once, provision many teams.
  • portfolio pinned v0.5.0 → v0.7.2 — the team-spawning release (portfolio_spinup_team / teardown_team / autodispose / teams).
  • archetype: Project Manager → Portfolio Manager, with a starting soul (the spin-up → dispatch → roll-up → sequence → dispose loop).
  • portfolio.team_template wired — empty falls back to the plugin's shipped example; point it at a creds-filled copy for teams that run real model turns.
  • verified_against 0.35.3 → 0.66.0; README rewritten for the manager tier.

One-liner it enables

portfolio_spinup_team(name="docs-team", repo="/abs/path")   # boots + registers a board
portfolio_dispatch(board="docs-team", title=…, spec=…)
portfolio_autodispose()                                     # dispose when the board drains

🤖 Generated with Claude Code

mabry1985 and others added 2 commits June 17, 2026 11:53
Closes the cross-board loop — auto-dispatch held work once its dependency ships
(planned-dispatch links + idempotent portfolio_autodispatch). ADR 0055 P3.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…ier)

Completes the portfolio→team split (ADR 0055). The Lead Engineer bundle is the team
tier (project_board + a repo's coding agents); pm-stack is now the manager tier that
orchestrates + SPAWNS those teams.

- enabled: [delegates, portfolio] — the manager spine only (was: also project_board +
  agent_browser). The PM runs no board of its own.
- project_board + agent_browser stay INSTALLED but off: a spawned team's plugins.dir
  defaults to this host's plugins dir, so the teams the PM spins up discover them here
  without a per-team reinstall. Install once, provision many teams.
- portfolio pinned v0.5.0 → v0.7.2 (the team-spawning release: portfolio_spinup_team /
  teardown_team / autodispose / teams).
- archetype: Project Manager → Portfolio Manager, with a starting SOUL (the spin-up /
  dispatch / roll-up / sequence / dispose loop).
- config: portfolio.team_template wired (empty → the plugin's shipped example; point it
  at a creds-filled copy for teams that run real model turns).
- verified_against 0.35.3 → 0.66.0. README rewritten for the manager tier.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@protoquinn

protoquinn Bot commented Jun 21, 2026

Copy link
Copy Markdown

👀 Quinn is reviewing — verdict (PASS / WARN / FAIL) + findings to follow.

@protoquinn protoquinn Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

QA Audit — PR #9 | refactor: pm-stack → Portfolio Manager bundle (manager-of-teams tier)

VERDICT: PASS


CI Status

  • No CI checks found (Gap — repo may not have CI configured)

Diff Review

  • Clean manifest refactor: enabled narrowed to manager tier [delegates, portfolio]; team plugins (project_board, agent_browser) stay installed-but-disabled for spawned-team discovery — consistent with ADR 0055
  • portfolio pin v0.4.0 → v0.7.2; verified_against 0.35.3 → 0.66.0; archetype relabeled as Portfolio Manager with soul
  • README fully rewritten for the manager-of-teams tier with spin-up/dispatch/autodispose examples — clear and accurate

Observations

  • GAP: No CI checks — verified_against: 0.66.0 claim cannot be confirmed; verify manually before relying on this bundle
  • GAP: portfolio-plugin tag v0.7.2 unverified (tooling can't reach external repos) — confirm the tag exists and carries the claimed portfolio_spinup_team / autodispose tools
  • GAP: Clawpatch structural review unavailable (pm-stack not in project registry) — no cross-file analysis beyond diff inspection
  • LOW: PR claims "Generated with Claude Code" — manifest refactor is low-risk and well-documented, but human sign-off on the verified_against bump is advisable

— Quinn, QA Engineer

@protoquinn

protoquinn Bot commented Jun 21, 2026

Copy link
Copy Markdown

Submitted APPROVE review on protoLabsAI/pm-stack#9.

…nager-bundle

# Conflicts:
#	protoagent.bundle.yaml
@mabry1985 mabry1985 merged commit d6da0b0 into main Jun 21, 2026
1 check passed
@mabry1985 mabry1985 deleted the refactor/portfolio-manager-bundle branch June 21, 2026 21:21

@protoquinn protoquinn Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

QA Audit — PR #9 | refactor: pm-stack → Portfolio Manager bundle (manager-of-teams tier)

VERDICT: WARN


CI Status

  • verify: queued

Diff Review

  • Pure manifest + docs refactor (2 files, 217 lines); no executable code changes.
  • protoagent.bundle.yaml: enabled narrowed to [delegates, portfolio] — manager spine only. project_board + agent_browser stay installed-but-off as a discovery layer for spawned teams. Rationale documented inline.
  • portfolio pinned v0.5.0 → v0.7.2 (team-spawning release); verified_against 0.35.3 → 0.66.0. README rewritten for the manager-tier narrative with usage examples.
  • Archetype updated: label, icon, blurb, and a new soul persona.

Observations

  • LOW: Clawpatch structural review unavailable — protoLabsAI/pm-stack not in the project registry. Proceeding with diff-level review only.
  • LOW: verified_against jumps from 0.35.3 to 0.66.0 (~30 minor versions). The verify CI check is still queued — no smoke-test confirmation yet that this pin set actually works against protoAgent 0.66.0. Once CI passes, this concern evaporates.
  • LOW: portfolio.team_template defaults to empty string, which falls back to the plugin's shipped example. This is a sensible default, but the comment suggests pointing it at a creds-filled copy for real model turns — worth calling out in the README's Install section (already done).

No blocking issues. The design is consistent with ADR 0055 and the documentation is clear. Awaiting CI completion for final PASS/FAIL.

— Quinn, QA Engineer

@protoquinn

protoquinn Bot commented Jun 21, 2026

Copy link
Copy Markdown

Submitted COMMENT review on #9.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant