feat: support allowlisted Pi models and primary effort routing - #112
Open
0xroylee wants to merge 2 commits into
Open
feat: support allowlisted Pi models and primary effort routing#1120xroylee wants to merge 2 commits into
0xroylee wants to merge 2 commits into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What Changed
models.allowlistandmodels.implementPrimaryEffortsettings so Pi can use an explicitly selected Kimi or GLM implementer with a supported effort.effortsconfiguration. Include the implementation plan, architecture diagram, execution graph, and operator instructions.Why
Roc previously requested medium effort for every implementation attempt, which cannot select Pi's Kimi K3 entries. Profile mappings also did not enforce an exact model allowlist. This change enables controlled provider selection without adding another runtime or a paid LLM selector call.
The integration preserves the per-role effort feature merged in #101. The specific primary override applies to Terra;
efforts.implementapplies to Sol high-risk/escalated work, defaulting to medium when omitted. Existing per-role fallback behavior remains when the new model policy is absent.Implementation plan · Architecture source · Execution graph source
How to Test
bun run checkfor lint, typecheck, and the full repository suite.README.details.md. An unsupported or denied effective mapping must fail startup before task admission; denial of an unfinished recovered attempt must preserve history and require replanning.Verified on rebased head
daa5b58d064dad340bca4fc1d85517d3ff056b55, based on420c754eec556d0ceb9d7ba0d121971e3b1287b5:bun run check: lint and typecheck passed; 368 tests passed, 0 failed.git diff --check: passed.get_state,get_available_models, and shutdown passed with zero model prompts.The native evidence was checked against content fingerprint
sha256:62ef4e397b55ddb5c87bbd9a0e5c89fff69bcb23315653ae8365ff1dde4f3481. This records local verification, not GitHub CI status.Acceptance checklist
Checked items mean automated verification passed on the head above; human acceptance is separate.
test/settings.test.tsandtest/scheduler/model-routing.test.ts.test/agents/pi/backend.test.tsrejects unsupported medium before starting a role client and runs the high-effort Kimi vertical fixture.test/scheduler/model-routing.test.tsverifies retained Terra effort and default Sol medium. Additional combined-policy tests preserve an explicit upstreamefforts.implementoverride on Sol.test/agents/pi/backend.test.tsand exact-target Review tests intest/agents/pi/harness.test.ts.test/integration/onboard-skill-allowlist.test.tsand the settings diagnostic tests.Additional Notes
docs/design/for their authored content.