From ecf7ad4b81203461103ea2379f09adcee681691e Mon Sep 17 00:00:00 2001 From: LoopX Agent <337587101+loopx-agent@users.noreply.github.com> Date: Thu, 5 Nov 2026 09:46:42 +0800 Subject: [PATCH] fix(steward): accept retained Codex fallback for native work Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com> --- .../allocated-fallback-desktop.png | Bin 0 -> 95886 bytes .../allocated-fallback-narrow.png | Bin 0 -> 44677 bytes docs/product/periodic-reports.md | 23 +++++++ .../steward_report_fixture.py | 6 ++ .../native_chat/steward_managed_mode.py | 3 + .../collaboration/conversation_binding.ts | 21 +----- .../collaboration/conversation_scope.ts | 17 +++++ .../collaboration/steward_managed_mode.ts | 15 ++++- .../control_plane/effect_runtime_handlers.ts | 1 + .../lark/private_conversation_api.py | 5 +- .../control_plane_ts/steward_reports.test.ts | 63 ++++++++++++++++++ tests/test_native_steward_managed_mode.py | 31 +++++++++ 12 files changed, 160 insertions(+), 25 deletions(-) create mode 100644 docs/assets/personal-workspace/steward-reports/allocated-fallback-desktop.png create mode 100644 docs/assets/personal-workspace/steward-reports/allocated-fallback-narrow.png diff --git a/docs/assets/personal-workspace/steward-reports/allocated-fallback-desktop.png b/docs/assets/personal-workspace/steward-reports/allocated-fallback-desktop.png new file mode 100644 index 0000000000000000000000000000000000000000..bcf79dbf8b7bad44d3695d7399b4646496ec8a31 GIT binary patch literal 95886 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­S45Ch9@`-?WJl?w9)G@fR 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�_8XV{;q6~6?eFcZGu zGw%!wg28q$D|7LNROcM|$w=mUi#v~axhx3TcBLW1uH*}^^xEC#n@mI^aIzK@n0yBk zf2|=KGRyyXYFEEOnZkZgnv46a_5(o&?Tt%XpW_2jRB% zZf8^ah|1_6hHmE-5(qn`160SX@_8&W1}4BBaBB%Y7WW$M5T^ZUb8uAabJ7`3Hi(LL zryaR;!U&+#N3I+rlNmr3G6gz;_-A3uQYV8+3QRV`PYHA_46rUad% z_2Jj)dfEG7Z$~cZ_O4!2h)iat$y$cM(L0!OsA#ppdvKQdaS34rEKNBE*QD(bUALr^ zevaGDyhtABk)sV z8yC=hpVX*taXt{N)YWGDY2?Wya#PJ6IZ&e&$1F`+`yQqtk*vEps_|z}MBRddR%9+X zdHejCfZ?X)8s2ylJdWIBy6#ivu);UIzEl@0|E;5XXd}B#;BSo%tK~re(r)C}`h?_U zfe8e&^iV~c8{9D$vV36$yYN>MEegYx?ez%d3=+o2V~FQvDj%Av=_nNG zEjb%UdRFRUSBOjvASXWNs-239 ziPDi}XLFG|g}~OltD(nZi*i|gm-3!M|CkAkIjcF~x4lVVfMg_p;G4jxzl@Nc;a5in zKE>g>H2W~aqk+c)NvsQYoV*dYkR!Fwf1*WTDb)e6FBwP`&GDl?VdeNH`~*vN)0yzN z-Y4ZP!d&Kuv{4m6n)v$xeys;^VJxJ7CCn*ViK+Q9`_pjEcwRs`LpCsOt>`>wxj*Uo zi|+p8B8yr>_v}gB1|WesM@f+>>$Y(GBIIvgClg;8xS$R}++JTGOo){uJwqM1ux>zm zE+3zH`c$LGp55K8ndvjM$IzDge%Ei-2^G2OArw!jtE?JBTQIM>{ROKHw8qG;S17g$ z+MF%dX;alA3J)-i_QQ`H`}Aa|mk`J;xHon)0xdt9PwaFm6WFDP@Ou|=P~x8%$o4>R zvs$)VugoMO%bJ^7U*_5v^9<#QoK={*YreoW$yy#wd2h==7>SC;DG;S9__<5bUB(`t zoDQIwoT-HJSqP!_zFZBEHnt@n$Su=qBgqga#>g{~sCBxwusb6PW z?-yKDf_&^-rml}2KbuA_;R~T18oL$}n{=#)J=Iu^nsh4RbA9R=CcwyQ>In4jZ8+!2 zD2hYGNZZS32kaeS;bPZH?%0S2^i}t?VrXU-u#f8f&OL`IC_?i5f_bNe^_Ho8q`HMD z2kRaUSWuGZTJA%p5Ku<_dfaNiTlKUIOk~lWwZ1)+fBL?uu}%Z??V_)gZNX$u zq7!LcSqh`3pzhnrBJ0)gf-t+OXiQ_>n$boh9(j&FDPRb@{pkFLvzBC*N=SCjN*IZ$ zL6%(NvA^5=9o|lIVeQ{@x}uzF;_jDAxK`CI7{D(omITqZ<)#q84Io+CQ4C1>Z}Kfn zS5v`+4t=VTg%IjA<-sA?&Ofm0%>m>Y$1F=J`C+f9fVIY(;2OWM6F&Vy>6_=?su2yT zK|We}`H{TuUWP;7Jn_446FzHi-F$UVv^ut4(|IBL`!5_eK(h7Defpw)W(2I|fH7Kb zs<<%b8ehqnP|hMu1}Km=ffoua5W9p!J~Xbp#p4{|OCtDQ-E7MKt-C^3g-h6=5N%NP zKz^`^q&OXWPb%RxaC*cCfJBB_gn+WX_?=Q9Y3uqQ(|-{AeRa~7BTQ%*X3x5~lp})keoV0}ZNczrAVeMuFL5b@0IQB9cyxs==8o<@@}O+z z@w7^PTmhoWsk&l0m;ugs8o~&o=VAq$jlZnwJwU>HPdK+=FI8o``BWV9BSJ?{rfuYh zEJJgaXHkyw+nGlJ9ka|!T%?j=c>pR;Mpuj_=m-V0$JY>x4DzZ@sy79>+{|r}L9KUG zP|t=&({?{l1h@SF(gbN!V9iS#N3YiJ>9kAct2dopiy%3A(WR|Ud$or6*Ee!)vixX% zj_U@^HP~bNSmm-Ymyw-2Vu>}Tl1I~-j2n{rSrB;>Z`&hMJhP>+O9y-;SKnUF9psHa);dD^5shL9Z-%4cE(>8v0KfMGJKNI0NGV=`Y4_(!ypv�J;b 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 literal 0 HcmV?d00001 diff --git a/docs/product/periodic-reports.md b/docs/product/periodic-reports.md index bb27515b3b..1ac75f66d3 100644 --- a/docs/product/periodic-reports.md +++ b/docs/product/periodic-reports.md @@ -29,6 +29,29 @@ readback and executor compatibility, not scheduled generation or live delivery. ![The same retained schedule at 390 pixels](../assets/personal-workspace/steward-reports/retained-executor-narrow.png) +A preferred executor is distinct from the executor already allocated to the +original Session. When Core has retained a private Antigravity steward on its +qualified, flexible Codex fallback, the existing monitor and report controls +remain usable. Bound input, recovery and native consent share the same executor +match; the settings API observes that Core decision instead of rejecting the +configured preference. This neither switches hosts nor enables native scheduled +work on Antigravity. A preference alone, an unallocated historical thread or a +pinned policy does not qualify the fallback. Original source, grant, actor, +idle-queue and report-window checks still apply on every operation. + +The same disposable journey accepts `qualify-codex-fallback` to seed this +retained allocation. With the same packaged UI, the baseline backend disables +all four controls; the current backend preserves the actor and window and +enables them. An unavailable synthetic original source rejects a pause without +changing the schedule. Restoring it permits pause and re-enable through the +existing UI. These views qualify configuration and admission, not model quality +or an installed scheduled delivery; the fixture's unchanged endpoint-pool +configuration still refuses a mismatched model dispatch. + +![Qualified retained fallback in desktop settings](../assets/personal-workspace/steward-reports/allocated-fallback-desktop.png) + +![The same qualified fallback at 390 pixels](../assets/personal-workspace/steward-reports/allocated-fallback-narrow.png) + Markdown, the HTML report and its copied full text use the same source-link rule. An unchanged, well-formed HTTP(S) address is a link. Opaque evidence digests, native Task/artifact references and private relative paths stay source diff --git a/examples/personal-workspace-browser/steward_report_fixture.py b/examples/personal-workspace-browser/steward_report_fixture.py index 2bb42cc1c3..832010df4f 100644 --- a/examples/personal-workspace-browser/steward_report_fixture.py +++ b/examples/personal-workspace-browser/steward_report_fixture.py @@ -174,9 +174,14 @@ def fail_report(_adapter, _prompt, event_sink): restart_tokens = set() restart_refusals = set() executor_restored = False + executor_allocated = False try: while not stop.wait(.2): server.assets_dir = current_assets if (output / "use-current-assets").exists() else baseline_assets + if args.retained_executor and not executor_allocated and (output / "qualify-codex-fallback").exists(): + from test_native_steward_managed_mode import retain_codex_fallback + retain_codex_fallback(store, runtime, sid) + executor_allocated = True if args.retained_executor and not executor_restored and (output / "restore-supported-executor").exists(): current = transport.bindings.read() selected = next(row for row in current["bindings"] if row["binding_id"] == binding["binding_id"]) @@ -263,6 +268,7 @@ def fail_report(_adapter, _prompt, event_sink): "existing_wake_owner_running": wake is not None, "existing_wake_owner_starts": owner_start_count, "retained_executor_restored": executor_restored, + "retained_executor_allocated": executor_allocated, "runtime_restarts": len(restart_tokens), "runtime_restart_rejections": len(restart_refusals), **({"managed_source_present": artifact.exists(), diff --git a/loopx/capabilities/native_chat/steward_managed_mode.py b/loopx/capabilities/native_chat/steward_managed_mode.py index dbac78cd2e..5d8209cf19 100644 --- a/loopx/capabilities/native_chat/steward_managed_mode.py +++ b/loopx/capabilities/native_chat/steward_managed_mode.py @@ -162,6 +162,9 @@ def health(self, binding_id: str) -> dict[str, Any]: cadence = monitor_cadence_delta(monitor.get("cadence")) if monitor else None from .steward_reports import StewardReports return {"available": True, "prepared": True, + **(self.bindings._core("collaboration.steward.managed_mode.executor", { + "binding": binding, "session": session}) + if binding["executor_endpoint_id"] != "codex" else {}), "scheduling_enabled": bool(active and monitor and monitor.get("status") == "open"), "goal_active": active, "report": StewardReports(self.controller).health(binding_id), "monitor": ({"todo_id": monitor["todo_id"], "status": monitor["status"], diff --git a/loopx/control_plane/collaboration/conversation_binding.ts b/loopx/control_plane/collaboration/conversation_binding.ts index f21e5bd9cd..2df7baba14 100644 --- a/loopx/control_plane/collaboration/conversation_binding.ts +++ b/loopx/control_plane/collaboration/conversation_binding.ts @@ -5,7 +5,7 @@ import {BARE_SHA256_PATTERN} from "../content_digest.ts"; import {EffectRuntimeRequestError} from "../effect_runtime_errors.ts"; import {requireInteger, requireJsonObject, requireNonEmptyString} from "../runtime_decode.ts"; import {requireAutomationCadenceEligibility} from "../quota/automation_cadence.ts"; -import {normalizeProjectContext, normalizeStewardContext, normalizeStewardGoalScope} from "./conversation_scope.ts"; +import {boundConversationExecutorMatches, normalizeProjectContext, normalizeStewardContext, normalizeStewardGoalScope} from "./conversation_scope.ts"; import {bindStewardManagedActor, normalizeStewardManagedActor} from "./steward_managed_mode.ts"; /** Core owns the context and audience grant. A provider supplies verified, @@ -323,21 +323,6 @@ function boundProject(params: JsonObject, row: JsonObject): Record 0 - && Array.isArray(allocation.eligible_endpoints) && allocation.eligible_endpoints.length === 2 - && allocation.eligible_endpoints.includes("antigravity") && allocation.eligible_endpoints.includes("codex") - && Array.isArray(session.upstream_context_history) && session.upstream_context_history.some(value => - value && typeof value === "object" && !Array.isArray(value) && (value as JsonObject).agent_id === "antigravity" - && typeof (value as JsonObject).thread_id === "string"); -} export function resolveBoundConversation(params: JsonObject): JsonObject { const current = state(params.current); @@ -394,7 +379,7 @@ export function resolveBoundConversation(params: JsonObject): JsonObject { sessionIdentity(session.session_id, "bound Session identity"); if (session.status === "closed" || session.channel_id !== channel || session.goal_id !== (steward ? "loopx-manager" : null) - || !boundExecutorMatches(row, session) + || !boundConversationExecutorMatches(row, session) || session.session_mode !== "managed_runtime" || (steward ? session.project_context : session.steward_context) != null || params.session_context === undefined || !isDeepStrictEqual(steward ? session.steward_context : session.project_context, params.session_context)) { @@ -634,7 +619,7 @@ function planContextRecovery(params: JsonObject, row: JsonObject, current: JsonO const selected = binding(params.binding); if (selected.audience === "group") return no; const steward = selected.context_kind === "steward"; - if (!boundExecutorMatches(selected, {...current, executor_endpoint_id: current.executor_endpoint_id ?? current.agent_id}) || current.goal_id !== (steward ? "loopx-manager" : null)) return no; + if (!boundConversationExecutorMatches(selected, {...current, executor_endpoint_id: current.executor_endpoint_id ?? current.agent_id}) || current.goal_id !== (steward ? "loopx-manager" : null)) return no; const saved = steward ? normalizeStewardContext(current.steward_context) : normalizeProjectContext(current.project_context); const source = requireJsonObject(row.source, "original conversation source"); diff --git a/loopx/control_plane/collaboration/conversation_scope.ts b/loopx/control_plane/collaboration/conversation_scope.ts index e878572da4..c29e048e1c 100644 --- a/loopx/control_plane/collaboration/conversation_scope.ts +++ b/loopx/control_plane/collaboration/conversation_scope.ts @@ -215,3 +215,20 @@ export function resolveConversationScope(input: Record): Conver } return {kind: "unavailable", goal_ids: [], private_conversation: false}; } + +/** One executor match for bound input and native work; provider/source admission remains separate. */ +export function boundConversationExecutorMatches(row: Record, session: Record): boolean { + if (session.agent_id === row.executor_endpoint_id && session.executor_endpoint_id === row.executor_endpoint_id) return true; + const allocation = session.manager_executor_allocation as Record | undefined; + return row.context_kind === "steward" && row.audience !== "group" + && row.executor_endpoint_id === "antigravity" && session.agent_id === "codex" + && session.executor_endpoint_id === "codex" && allocation?.schema_version === "manager_executor_allocation_v0" + && allocation.selection_policy === "flexible" && allocation.configured_endpoint === "antigravity" + && allocation.executor_endpoint === "codex" && allocation.allocation_reason === "flexible_availability_fallback" + && typeof allocation.configuration_revision === "string" && allocation.configuration_revision.length > 0 + && Array.isArray(allocation.eligible_endpoints) && allocation.eligible_endpoints.length === 2 + && allocation.eligible_endpoints.includes("antigravity") && allocation.eligible_endpoints.includes("codex") + && Array.isArray(session.upstream_context_history) && session.upstream_context_history.some(value => + value && typeof value === "object" && !Array.isArray(value) && (value as Record).agent_id === "antigravity" + && typeof (value as Record).thread_id === "string"); +} diff --git a/loopx/control_plane/collaboration/steward_managed_mode.ts b/loopx/control_plane/collaboration/steward_managed_mode.ts index e64523a058..852500b675 100644 --- a/loopx/control_plane/collaboration/steward_managed_mode.ts +++ b/loopx/control_plane/collaboration/steward_managed_mode.ts @@ -9,7 +9,7 @@ import type { JsonObject } from "../runtime_decode.ts"; import { requireJsonObject, requireNonEmptyString } from "../runtime_decode.ts"; import { EffectRuntimeRequestError } from "../effect_runtime_errors.ts"; import { ENVELOPED_SHA256_PATTERN } from "../content_digest.ts"; -import {goalAgentConversationIdentity, resolveConversationScope} from "./conversation_scope.ts"; +import {boundConversationExecutorMatches, goalAgentConversationIdentity, resolveConversationScope} from "./conversation_scope.ts"; import {readTurnSelectionRejection} from "../turn_driver/selection_rejection.ts"; import {EffectiveAction} from "../quota/effective_action.generated.ts"; @@ -415,6 +415,15 @@ export function normalizeStewardManagedActor(value: unknown): JsonObject { creation_operation_id: text(row.creation_operation_id, "managed Goal creation")}; } +/** Supported native host metadata, never authorization or a request to switch hosts. */ +export function observeStewardNativeExecutor(params: JsonObject): JsonObject { + const binding = requireJsonObject(params.binding, "steward binding"); + const session = requireJsonObject(params.session, "original steward Session"); + const supported = session.agent_id === "codex" && (binding.executor_endpoint_id === "codex" + || boundConversationExecutorMatches(binding, session)); + return {execution_available: supported, ...(!supported ? {execution_error_code: "unsupported_executor"} : {})}; +} + export function stewardManagedBasis(params: JsonObject, executing = false) { const binding = requireJsonObject(params.binding, "steward binding"); const session = requireJsonObject(params.session, "original steward Session"); @@ -423,8 +432,8 @@ export function stewardManagedBasis(params: JsonObject, executing = false) { const id = text(binding.binding_id, "binding identity", /^[a-f0-9]{24}$/); const source = text(context.source_ref, "steward source", /^[a-f0-9]{24}$/); if (binding.context_kind !== "steward" || binding.grant !== "portfolio_read" || binding.enabled !== true - || binding.audience === "group" || binding.executor_endpoint_id !== "codex" - || session.goal_id !== "loopx-manager" || session.agent_id !== "codex" + || binding.audience === "group" || observeStewardNativeExecutor(params).execution_available !== true + || session.goal_id !== "loopx-manager" || session.session_mode === "attached_host" || session.status === "closed" || session.channel_id !== `manager.external.native.${id}.${source}` || !executing && (session.active_turn_id || params.queued_turn_count !== 0)) { diff --git a/loopx/control_plane/effect_runtime_handlers.ts b/loopx/control_plane/effect_runtime_handlers.ts index ed580b4f20..079bc62bb0 100644 --- a/loopx/control_plane/effect_runtime_handlers.ts +++ b/loopx/control_plane/effect_runtime_handlers.ts @@ -594,6 +594,7 @@ export function createEffectRuntimeHandlers( ["collaboration.steward.command", lazyHandler(() => import("./collaboration/conversation_binding.ts"), ({stewardCommand}) => stewardCommand)], ["collaboration.steward.authorize_creation", lazyHandler(() => import("./collaboration/conversation_binding.ts"), ({authorizeStewardCreation}) => authorizeStewardCreation)], ["collaboration.steward.managed_mode.plan", lazyHandler(() => import("./collaboration/steward_managed_mode.ts"), ({planStewardManagedMode}) => planStewardManagedMode)], + ["collaboration.steward.managed_mode.executor", lazyHandler(() => import("./collaboration/steward_managed_mode.ts"), ({observeStewardNativeExecutor}) => observeStewardNativeExecutor)], ["collaboration.steward.managed_turn.admit", lazyHandler(() => import("./collaboration/steward_managed_mode.ts"), ({admitStewardManagedTurn}) => admitStewardManagedTurn)], ["collaboration.session.managed_turn.admit", lazyHandler(() => import("./collaboration/steward_managed_mode.ts"), ({admitManagedSessionTurn}) => admitManagedSessionTurn)], ["collaboration.session.managed_identity", lazyHandler(() => import("./collaboration/steward_managed_mode.ts"), ({admitManagedSessionIdentity}) => admitManagedSessionIdentity)], diff --git a/loopx/extensions/lark/private_conversation_api.py b/loopx/extensions/lark/private_conversation_api.py index 293b01b515..efecf1c545 100644 --- a/loopx/extensions/lark/private_conversation_api.py +++ b/loopx/extensions/lark/private_conversation_api.py @@ -58,10 +58,7 @@ def _private_conversations(self) -> None: and hasattr(self.server.lark_private_conversations, "ingress") else {}), **({"owner_attention": self.server.lark_private_conversations.owner_attention.health(row["binding_id"])} if row["context_kind"] == "steward" and row.get("audience", "owner") == "owner" else {}), - **({"managed_steward": { - **self.server.lark_private_conversations.managed_steward.health(row["binding_id"]), - **({"execution_available": False, "execution_error_code": "unsupported_executor"} - if row["executor_endpoint_id"] != "codex" else {})}} + **({"managed_steward": self.server.lark_private_conversations.managed_steward.health(row["binding_id"])} if row["context_kind"] == "steward" and row.get("audience", "owner") == "owner" and (row["executor_endpoint_id"] == "codex" or row.get("managed_actor")) and hasattr(self.server.lark_private_conversations, "managed_steward") else {}), diff --git a/tests/control_plane_ts/steward_reports.test.ts b/tests/control_plane_ts/steward_reports.test.ts index a758466e86..c938d3314e 100644 --- a/tests/control_plane_ts/steward_reports.test.ts +++ b/tests/control_plane_ts/steward_reports.test.ts @@ -127,6 +127,69 @@ function original() { return {...params, binding: {...binding, managed_actor: actor}, actor, goal_active: true, source}; } +function allocatedFallback() { + const p = original(); + const binding = {...p.binding, executor_endpoint_id: "antigravity"}; + const session = {...p.session, executor_endpoint_id: "codex", + steward_context: {...p.session.steward_context, executor_endpoint_id: "antigravity"}, + manager_executor_allocation: {schema_version: "manager_executor_allocation_v0", selection_policy: "flexible", + configured_endpoint: "antigravity", executor_endpoint: "codex", configuration_revision: "original-profile", + allocation_reason: "flexible_availability_fallback", eligible_endpoints: ["antigravity", "codex"]}, + upstream_context_history: [{agent_id: "antigravity", thread_id: "original-native-thread", + manager_context_version: null, agent_model_id: "gemini-4-argon-high"}]}; + return {...p, binding, session}; +} + +test("a Core-qualified Codex fallback retains report consent and native report identity", () => { + const p = allocatedFallback(); + const route = {binding_id: p.binding.binding_id, source_ref: p.source, session_id: p.session.session_id, + provider_ref: p.binding.provider_ref, operator_ref: p.binding.operator_ref}; + const proposed = {enabled: true, profile_preset: "portfolio-progress", + route_ref: `steward-private:${p.binding.binding_id}:${p.source}`}; + const input = {...p, configuration: null, proposed, route, operation: "enable"}; + const before = structuredClone(input); + assert.deepEqual(planStewardReport(input).actor, p.actor); + assert.deepEqual(input, before); + const window = {window_id: "cadence_original", subscription_revision: "sha256:original", + goal_id: p.actor.goal_id, agent_id: p.actor.agent_id}; + const request = {operation: "native_turn", host: "codex-app-server", actor: p.actor, + turn_instance_id: `report.${window.window_id}`, todo_id: "todo_report", validation_command: ["validate"], + work_kind: "report", report_window_id: window.window_id, report_subscription_revision: window.subscription_revision}; + const params = {...p, request, report_window: window, + report_subscription: {...proposed, effective_revision: window.subscription_revision}, + report_todo: {todo_id: request.todo_id, target_key: window.window_id, action_kind: "generate_periodic_report", + claimed_by: "steward", status: "open"}}; + assert.deepEqual(admitStewardManagedTurn(params).actor, p.actor); + for (const changed of [{binding: {...p.binding, enabled: false}}, {binding: {...p.binding, audience: "group"}}, + {session: {...p.session, status: "closed"}}, {queued_turn_count: 1}, {goal_active: false}, + {report_subscription: {...params.report_subscription, enabled: false}}, + {report_window: {...window, window_id: "another-window"}}, + {observation: {...p.observation, operator_ref: "0".repeat(24)}}]) { + assert.throws(() => admitStewardManagedTurn({...params, ...changed})); + } +}); + +test("a configured preference alone cannot qualify a different native report executor", () => { + const p = allocatedFallback(); + const proposed = {enabled: true, profile_preset: "portfolio-progress", + route_ref: `steward-private:${p.binding.binding_id}:${p.source}`}; + const route = {binding_id: p.binding.binding_id, source_ref: p.source, session_id: p.session.session_id, + provider_ref: p.binding.provider_ref, operator_ref: p.binding.operator_ref}; + const input = {...p, configuration: null, proposed, route, operation: "enable"}; + const allocation = p.session.manager_executor_allocation; + for (const changed of [{selection_policy: "pinned"}, {configured_endpoint: "codex"}, + {executor_endpoint: "antigravity"}, {allocation_reason: "configured_preference"}, + {configuration_revision: ""}, {eligible_endpoints: ["codex"]}, + {eligible_endpoints: ["codex", "antigravity", "other"]}]) { + assert.throws(() => planStewardReport({...input, + session: {...p.session, manager_executor_allocation: {...allocation, ...changed}}})); + } + for (const changed of [{upstream_context_history: []}, {executor_endpoint_id: "antigravity"}, + {agent_id: "antigravity"}, {session_mode: "attached_host"}]) { + assert.throws(() => planStewardReport({...input, session: {...p.session, ...changed}})); + } +}); + test("report consent fixes the original actor, source and private audience without starting work", () => { const p = original(); const proposed = {enabled: true, profile_preset: "portfolio-progress", diff --git a/tests/test_native_steward_managed_mode.py b/tests/test_native_steward_managed_mode.py index 0743c38f1e..2ba68803c4 100644 --- a/tests/test_native_steward_managed_mode.py +++ b/tests/test_native_steward_managed_mode.py @@ -25,6 +25,23 @@ def original(steward): return row["session_id"], transport.managed_steward +def retain_codex_fallback(store, runtime, sid): + """Seed trusted allocation metadata only in disposable native/HTTP fixtures.""" + from loopx.chat_manager import manager_executor_allocation + + session = store.load_session(sid) + assert session["agent_id"] == session["executor_endpoint_id"] == "codex" + allocation = session.get("manager_executor_allocation") or manager_executor_allocation(runtime, environ={}) + store.update_session(sid, manager_executor_allocation={**allocation, + "selection_policy": "flexible", "configured_endpoint": "antigravity", + "executor_endpoint": "codex", "eligible_endpoints": ["antigravity", "codex"], + "allocation_reason": "flexible_availability_fallback"}, + upstream_context_history=[*(session.get("upstream_context_history") or []), + {"agent_id": "antigravity", "thread_id": "original-native-thread", + "manager_context_version": None, "agent_model_id": "gemini-4-argon-high"}]) + return allocation + + def storage(runtime, provider): args = {"runtime_root": runtime.coordination_runtime_root, "registry": build_builtin_machine_configuration_registry(), @@ -287,6 +304,20 @@ def request(path, body=None, origin=None): selected = next(row for row in current["bindings"] if row["binding_id"] == binding["binding_id"]) selected["executor_endpoint_id"] = "antigravity" transport.bindings.path.write_text(json.dumps(current)) + # Core may already have retained this same Session on its qualified + # Codex fallback. Neither the UI nor native consent chooses a new host. + allocation = retain_codex_fallback(store, runtime, sid) + fallback = next(row for row in request(base)[1]["connections"] + if row["binding_id"] == binding["binding_id"])["managed_steward"] + assert fallback.pop("execution_available") is True + assert "execution_error_code" not in fallback and fallback == expected + assert request(route, {"binding_id": binding["binding_id"]})[0] == 200 + assert request(report_route, report_setting)[0] == 200 + assert request(monitor_route, {**setting, "operation": "enable"})[0] == 200 + assert journal_path.read_bytes() == journal + assert store.messages(sid) == before_history and capture.read_bytes() == before_calls + # A historical thread alone cannot qualify an unallocated executor. + store.update_session(sid, manager_executor_allocation=allocation) original_binding, registry = transport.bindings.path.read_bytes(), runtime.registry_path.read_bytes() row = next(row for row in request(base)[1]["connections"] if row["binding_id"] == binding["binding_id"]) state = row["managed_steward"]