Skip to content

feat: add Pi virtual model policy - #109

Merged
BakerSean168 merged 4 commits into
mainfrom
feature/pi-virtual-model-policy
Oct 2, 2026
Merged

BakerSean168 merged 4 commits into
mainfrom
feature/pi-virtual-model-policy

Conversation

@BakerSean168

@BakerSean168 BakerSean168 commented Oct 2, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • register stable ForgeFlow logical roles as native Pi virtual models
  • keep physical model selection in a small operator policy file while provider/channel routing stays below ForgeFlow
  • preserve existing pi-subagents@0.74.0 reviewer-child selection until its already-merged virtual-child fixes ship in a release
  • ignore project-local model policy for untrusted Pi projects and fail closed on invalid/missing mappings
  • require Pi >= 0.99.0, where virtual models were introduced

Architecture

task/role -> ForgeFlow logical model -> Pi virtual-model dispatch -> physical model -> provider/channel

ForgeFlow does not own credentials, endpoint selection, channel weights, quota routing, provider retries, or transport.

Upstream compatibility

pi-subagents@0.74.0 was released before upstream #2636 (07946874, child virtual-model registration) and #2638 (1fe508f1, virtual selection verification). Those fixes are merged on upstream main but not yet in an npm release. Raw Git dependencies are not viable because the upstream repo publishes TypeScript source and Node refuses type stripping inside node_modules. This PR therefore does not force forgeflow/reviewer into child workflows yet; it avoids a local compatibility shim and keeps current review behavior working.

Verification

  • npm run check — 46/46 tests passed
  • npm pack --dry-run — passed
  • git diff --check — passed
  • Pi 0.99.1 runtime canary: pi --no-extensions -e ./extension/index.js --approve --list-models forgeflow lists planner/worker/reviewer/scout/oracle
  • independent GPT-6.1 Sol review identified the 0.74.0 child-runtime incompatibility; this revision removes that unsupported integration rather than hiding it

Follow-up

When a released pi-subagents contains upstream #2636/#2638, upgrade the dependency, add a real virtual-child integration canary, and hard-cut review/accept child launches to forgeflow/reviewer. Provider configuration remains separate; LiteLLM stays the baseline while New API/Bifrost can be evaluated behind the provider boundary.

@BakerSean168
BakerSean168 merged commit 35bd272 into main Oct 2, 2026
1 check passed
@BakerSean168
BakerSean168 deleted the feature/pi-virtual-model-policy branch October 2, 2026 11:07
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