fix: surface upstream gateway timeout for remote OpenClaw/Tailscale connections (#94)
* surface gateway timeout for tailscale * talescale fix #2 - attempt 1 * luke findings fix#1 * add narrow log for clientId * prod safe proxy log * fix log visibility * LAN connection & subagent SOUL|IDENTITY fixes * Initialize missing files for subagent SOUL|IDENTITY * surface missing files in UI * capturing agent - runtime,identity,session * plugin-install fix * fix: recover agent workspace for marketplace installs * fix: recover agent workspace and identity name from file provenance * fix: tolerate webchat session patch blocks during permission updates
This commit is contained in:
@@ -45,7 +45,7 @@ describe("hydrateAgentFleetFromGateway", () => {
|
||||
{
|
||||
id: "agent-1",
|
||||
name: "One",
|
||||
identity: { avatarUrl: "https://example.com/one.png" },
|
||||
identity: { name: "Main Persona", avatarUrl: "https://example.com/one.png" },
|
||||
},
|
||||
{
|
||||
id: "agent-2",
|
||||
@@ -55,6 +55,27 @@ describe("hydrateAgentFleetFromGateway", () => {
|
||||
],
|
||||
};
|
||||
}
|
||||
if (method === "agents.files.get") {
|
||||
const record = params as Record<string, unknown>;
|
||||
if (record.agentId === "agent-2" && record.name === "IDENTITY.md") {
|
||||
return {
|
||||
workspace: "/tmp/workspace-agent-2",
|
||||
file: {
|
||||
missing: false,
|
||||
content: "# IDENTITY.md - Who Am I?\n\n- Name: GLaDOS\n",
|
||||
path: "/tmp/workspace-agent-2/IDENTITY.md",
|
||||
},
|
||||
};
|
||||
}
|
||||
return {
|
||||
workspace: "/tmp/workspace-agent-1",
|
||||
file: {
|
||||
missing: false,
|
||||
content: "# IDENTITY.md - Who Am I?\n\n- Name: Main Persona\n",
|
||||
path: "/tmp/workspace-agent-1/IDENTITY.md",
|
||||
},
|
||||
};
|
||||
}
|
||||
if (method === "exec.approvals.get") {
|
||||
return {
|
||||
file: {
|
||||
@@ -126,10 +147,11 @@ describe("hydrateAgentFleetFromGateway", () => {
|
||||
expect(result.seeds[0]).toEqual(
|
||||
expect.objectContaining({
|
||||
agentId: "agent-1",
|
||||
name: "One",
|
||||
name: "Main Persona",
|
||||
runtimeName: "One",
|
||||
identityName: "Main Persona",
|
||||
sessionDisplayName: "Main",
|
||||
sessionKey: "agent:agent-1:main",
|
||||
avatarSeed: "persisted-seed",
|
||||
avatarProfile: expect.objectContaining({ seed: "persisted-seed" }),
|
||||
avatarUrl: "https://example.com/one.png",
|
||||
model: "openai/gpt-4.1",
|
||||
thinkingLevel: "medium",
|
||||
@@ -141,6 +163,9 @@ describe("hydrateAgentFleetFromGateway", () => {
|
||||
expect(result.seeds[1]).toEqual(
|
||||
expect.objectContaining({
|
||||
agentId: "agent-2",
|
||||
name: "GLaDOS",
|
||||
runtimeName: "Two",
|
||||
identityName: "GLaDOS",
|
||||
sessionExecHost: "gateway",
|
||||
sessionExecSecurity: "full",
|
||||
sessionExecAsk: "off",
|
||||
|
||||
Reference in New Issue
Block a user