Merge remote-tracking branch 'origin/main' into ethie/pm-clean
Conflicts resolved toward the branch: PM owns dependency preparation, the Windows shim re-exec/hand-off path stays retired (main's shim-parent wait, gateway-resume env token and update_cmd_deps tests dropped), docs describe the PM update flow. The docker workflow parks install-stamp.json around the toolchain step instead of deleting it so tests/docker can compare provenance.
This commit is contained in:
@@ -59,7 +59,7 @@ wss.on('connection', ws =>
|
||||
)
|
||||
const entry = `import React from 'react'; import {createRoot} from 'react-dom/client';
|
||||
import {QueryClient, QueryClientProvider} from '@tanstack/react-query';
|
||||
import {McpTab} from '${repo}/apps/desktop/src/app/skills/mcp-tab.tsx';
|
||||
import {McpTab} from '${repo}/apps/desktop/src/app/capabilities/mcp/mcp-tab.tsx';
|
||||
import {setApiRequestProfile,setApiRequestConnection} from '${repo}/apps/desktop/src/api/client.ts';
|
||||
setApiRequestProfile('profile-b');setApiRequestConnection('fixture-remote');
|
||||
const queryClient=new QueryClient({defaultOptions:{queries:{retry:false}}});function Probe(){const [profile,setProfile]=React.useState('profile-b');const [shown,setShown]=React.useState(true);window.cancelFlow=()=>setProfile('profile-c');window.unmountFlow=()=>setShown(false);return <QueryClientProvider client={queryClient}>{shown && <McpTab gateway={null} profile={{connectionId:'fixture-remote',profile}} />}</QueryClientProvider>};createRoot(document.getElementById('root')).render(<Probe/>);`
|
||||
|
||||
@@ -75,7 +75,7 @@ async def _heartbeat(agent) -> str:
|
||||
mixin = GatewayTurnMixin()
|
||||
adapter = MagicMock()
|
||||
adapter.send = AsyncMock(return_value=SimpleNamespace(success=True, message_id="hb1"))
|
||||
mixin._adapter_for_source = MagicMock(return_value=adapter)
|
||||
mixin._delivery_adapter_for = MagicMock(return_value=adapter)
|
||||
mixin._should_emit_long_running_notification = MagicMock(side_effect=[True, False])
|
||||
disp = MagicMock()
|
||||
disp._display_surface_mode.return_value = "on"
|
||||
|
||||
@@ -46,7 +46,7 @@ async def main(base_poller):
|
||||
runner._run_in_executor_with_context = asyncio.to_thread
|
||||
adapter = WireAdapter(PlatformConfig(enabled=True, typing_indicator=False), Platform.TELEGRAM)
|
||||
adapter.wire = []
|
||||
runner._adapter_for_source = lambda source: adapter
|
||||
runner._delivery_adapter_for = lambda source: adapter
|
||||
source = SessionSource(platform=Platform.TELEGRAM, chat_id="42", user_id="42", chat_type="dm")
|
||||
key = build_session_key(source)
|
||||
watch = {key: (source, "wire-session")}
|
||||
|
||||
Reference in New Issue
Block a user