Sync upstream v0.80.10 into KKL fork - #18
Merged
Merged
Conversation
this supports BUN_CONFIG_HTTP_IDLE_TIMEOUT related to earendil-works#6476
This adds cache-friendly dynamic tool loading anchored to tool results. Purely additive active-tool changes are recorded with `addedToolNames`, allowing supported Anthropic and OpenAI Responses models to load tool definitions at the point they become available instead of placing them in the cached prompt prefix. It retains safe fallback behavior for unsupported models and non-additive changes but it will wipe caches.
Do not treat Pi’s internal ambient-auth marker as a Bedrock bearer token. This preserves SigV4 signing for AWS profiles, IAM credentials, and roles while retaining bearer authentication for real Bedrock API keys.\n\nFixes earendil-works#6531
…entials (earendil-works#6292) Cloudflare Workers AI / AI Gateway resolved provider config from the credential only, never consulting ambient env for a field the credential omitted. The coding-agent /login flow stores just the API key, so CLOUDFLARE_ACCOUNT_ID lives only in the environment; the key-only credential short-circuited the env lookup, the account id stayed unresolved, and requests hit the literal {CLOUDFLARE_ACCOUNT_ID} base URL -> 404. resolveValue now merges per field: prefer the credential value, fall back to ctx.env(name). closes earendil-works#6021 Signed-off-by: Mark Phelps <209477+markphelps@users.noreply.github.com> Co-authored-by: Mario Zechner <badlogicgames@gmail.com>
* feat(ai): support forced OpenAI Codex tool calls * feat(ai): support OpenAI Responses tool choice
…oint (earendil-works#6544) mai-code-1-flash-picker is not accessible via /chat/completions and must use the Copilot /responses endpoint. Update generate-models.ts to send mai-* models to the responses API and regenerate the affected model entry.
allow null apiKey. uses the same auth flow like compaction fixes earendil-works#6324
…rks#6604) otherwise it would fail when there's conflicting peer dependencies in installed packages fixes: earendil-works#6486
Move provider auth and OAuth flows onto pi-ai Models, compose models.json and extension overlays through ModelRuntime, and retain ModelRegistry as an extension compatibility facade.
Allow extensions to register complete pi-ai Provider objects while preserving models.json composition and resolved provider auth access. Refs earendil-works#4823 and earendil-works#4824.
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.
Summary
earendil-works/pithrough current upstream main3da591ab/ release v0.80.100.80.10-kkl.10.80.10over the KKL prereleaseIntegration notes
The merge resolves 17 textual conflicts. Most are package-version and generated-lock surfaces. Two KKL tests were migrated to upstream's current model-runtime API while preserving their queued-command and exact-navigation assertions.
This sync also absorbs upstream
5124c61b, which repairs the live-model-catalog drift currently causing unchanged KKL main and PR #15 to fail TypeScript checks.The upstream
publish-model-catalog.ymlworkflow is intentionally excluded. It targets upstream's fixed R2 endpoint, environment, secrets, and publication schedule. The underlying catalog generation/runtime code remains synchronized.Local validation
npm ci --ignore-scriptspassednpm run buildpassednpm run checkpassedgit diff --checkpassed./test.shwas started locally. The agent-core and AI workspaces completed successfully, including AI's 556 passing tests, before the interactive run was intentionally aborted while the coding-agent Vitest process was still active. The abort bypassed the script's auth-restoration trap and left one fork worker; Junior restored the exact mode-0600 auth file and removed all surviving test processes. The broad test matrix is intentionally delegated to hosted PR CI.Boundaries
This PR is only the upstream synchronization. It does not include the print-mode continuation repair from #15, Brownie's #16/#17 fix-its, a release, downstream pin changes, or upstream contact.