chore: update managed runtime pins (#3606)

Co-authored-by: kandev-runtime-updater[bot] <kandev-runtime-updater[bot]@users.noreply.github.com>
Co-authored-by: Carlos Florencio <carlosmflorencio@gmail.com>
This commit is contained in:
github-actions[bot]
2026-09-12 20:40:48 +01:00
committed by GitHub
parent 49df3794bc
commit ae3e359abc
5 changed files with 38 additions and 12 deletions
@@ -1,8 +1,8 @@
{
"@agentclientprotocol/claude-agent-acp": "0.75.1",
"@agentclientprotocol/codex-acp": "1.10.0",
"@agentclientprotocol/claude-agent-acp": "0.76.0",
"@agentclientprotocol/codex-acp": "1.11.0",
"@github/copilot": "1.0.83",
"@google/gemini-cli": "0.58.0",
"opencode-ai": "1.18.29",
"@google/gemini-cli": "0.59.0",
"opencode-ai": "1.18.30",
"pi-acp": "0.0.33"
}
@@ -311,9 +311,9 @@ func TestHandleStopProcess_UnknownIDIsIdempotentSuccess(t *testing.T) {
}
// TestHandleStopProcess_RetiresRunningProcess asserts the stop reaches a
// long-running command: the call returns success and the process is retired
// from both the per-session list and the per-id fetch. A `sleep 120` that was
// merely marked stopped would still be listed.
// long-running command: the call returns success and the process is eventually
// retired from both the per-session list and the per-id fetch. Stop signals the
// process before its background waiter completes the final reap.
func TestHandleStopProcess_RetiresRunningProcess(t *testing.T) {
srv := newTestServer(t)
id := startTestProcess(t, srv, "session-d", "sleep 120")
@@ -339,6 +339,8 @@ func TestHandleStopProcess_RetiresRunningProcess(t *testing.T) {
t.Fatalf("stop reported failure: %+v", body)
}
awaitProcessRetired(t, srv, id)
after := processRequest(t, srv, http.MethodGet, "/api/v1/processes?session_id=session-d", nil)
var remaining []process.ProcessInfo
if err := json.Unmarshal(after.Body.Bytes(), &remaining); err != nil {
@@ -347,9 +349,6 @@ func TestHandleStopProcess_RetiresRunningProcess(t *testing.T) {
if len(remaining) != 0 {
t.Errorf("list after stop = %+v, want it emptied", remaining)
}
if got := processRequest(t, srv, http.MethodGet, "/api/v1/processes/"+id, nil); got.Code != http.StatusNotFound {
t.Errorf("get after stop status = %d, want 404 (body %s)", got.Code, got.Body.String())
}
}
func startTestProcess(t *testing.T, srv *Server, sessionID, command string) string {
@@ -7,7 +7,7 @@ import {
handleEntityReferenceMenuKeyDown,
isEntityReferenceQueryAllowed,
} from "./tiptap-entity-reference-suggestion";
import { createMentionSuggestion } from "./tiptap-suggestion";
import { createMentionSuggestion, MentionSuggestionPluginKey } from "./tiptap-suggestion";
import * as entityReferenceSuggestions from "./tiptap-entity-reference-suggestion";
function createSuggestionPositioningProps() {
@@ -306,6 +306,29 @@ describe("entity reference suggestion lifecycle", () => {
});
describe("createMentionSuggestion", () => {
it("exits TipTap suggestion state when Escape closes the menu", () => {
const suggestion = createMentionSuggestion(
{ getItems: vi.fn().mockResolvedValue([]), onSelect: vi.fn() },
vi.fn(),
vi.fn(),
);
const lifecycle = suggestion.render?.();
const transaction = { setMeta: vi.fn(() => ({ id: "exit" })) };
const dispatch = vi.fn();
const handled = lifecycle?.onKeyDown?.({
view: { state: { tr: transaction }, dispatch } as never,
event: new KeyboardEvent("keydown", { key: "Escape" }),
range: { from: 1, to: 2 },
});
expect(handled).toBe(true);
expect(transaction.setMeta).toHaveBeenCalledWith(MentionSuggestionPluginKey, {
exit: true,
});
expect(dispatch).toHaveBeenCalledWith({ id: "exit" });
});
it("keeps Kandev task discovery in the @ menu", async () => {
const file: MentionItem = {
id: "src/app.ts",
@@ -1,6 +1,7 @@
"use client";
import { PluginKey } from "@tiptap/pm/state";
import { exitSuggestion } from "@tiptap/suggestion";
import type {
SuggestionOptions,
SuggestionProps,
@@ -122,6 +123,7 @@ export function createMentionSuggestion(
// keypress.
kd.event.stopPropagation();
setMenuState(EMPTY_MENTION_STATE);
exitSuggestion(kd.view, MentionSuggestionPluginKey);
return true;
}
return onKeyDown(kd.event);
+3 -1
View File
@@ -849,7 +849,9 @@ export async function provisionKubernetesCluster(
try {
const port = await waitForPortForward(proc);
const baseUrl = `http://127.0.0.1:${port}`;
await waitForHealth(`${baseUrl}/health`, 30_000, proc);
// /health only proves that the listener is bound; /ready gates API
// requests until the in-cluster backend has finished wiring routes.
await waitForHealth(`${baseUrl}/ready`, 30_000, proc);
const context: InClusterBackend = {
baseUrl,
frontendUrl: baseUrl,