Repository navigation
Refresh Profile capabilities between Turns - #129
Merged
Merged
Conversation
This was referenced Oct 5, 2026
Branch coverage
41 files skipped due to complete coverage. |
Lancetnik
added this pull request to stack #131
October 6, 2026 16:11
This was referenced Oct 6, 2026
Lancetnik
marked this pull request as ready for review
October 10, 2026 16:01
marklysze
approved these changes
Oct 11, 2026
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.
Why are these changes needed?
Existing Chats can keep stale Skills, tools and model settings after configuration changes. Prepare current capabilities after acquiring the Chat lock for every browser, Channel, Task and voice-delegated Turn. Queued requests resolve configuration when they start; running Turns retain their offered availability and Card definitions while Skill files remain live.
External ACP serving refresh remains deferred. Its existing serving behavior is preserved; ACP used as a Text model is covered.
Related issue number
Related to #121. This PR implements the accepted Gateway scope and does not close the original issue's deferred external ACP serving acceptance.
Checks
ruff check .,ruff format --check ., andpytest -m "not integration"locally and they pass.web/, I rebuilt and committed the SPA bundle (npm --prefix web run build). — Not applicable: this PR changes no SPA source or bundle.Validation: full non-integration suites passed on Python 3.12, 3.13 and 3.14 (2,307 passed per version; 4 skipped, 11 deselected), followed by all 60 targeted refresh, recovery and SQLite lifecycle tests on each version after the final cleanup changes. Ruff, mypy and pre-commit hooks pass. The unchanged SPA sources passed typechecking and 542 tests. Real AG2 acceptance covers model requests, emitted events, resource state and executable MCP/ACP protocol peers without live provider credentials or Docker. Independent Standards and Spec reviews have no remaining findings.
CI on ac7c4d7 is green: all three Python versions pass the final 2,308 tests (4 skipped, 11 deselected), and lint, typechecks, lock synchronization, bundle freshness, SPA tests and the aggregate
CI statuspass.AI assistance
Implementation, tests and this description were produced with Codex assistance and reviewed and validated using the checks above. Maintainer ownership confirmation remains unticked for this draft.