mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-03 21:11:40 +00:00
* feat(browser): add copilot security contracts * fix(gateway): expose verified client identity to handlers * feat(browser): add secure per-tab copilot panel Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * refactor(browser): separate copilot gateway hint custody * fix(browser): preserve legacy pairing parse shape * fix(browser): harden copilot lifecycle custody Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * fix(browser): enforce copilot lifecycle boundaries Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * style(browser): format copilot sources Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * fix(browser): preserve copilot consent revocation Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * refactor(browser): split copilot custody owners Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * test(browser): normalize websocket array buffers Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * chore(protocol): regenerate Swift gateway models Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * refactor(browser): model copilot runtime entrypoints Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * fix(browser): honor extension build boundaries Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * test(gateway): assert targeted chat delivery Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * test(gateway): cover targeted delivery calls Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * fix(browser): declare copilot build dependencies Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * fix(ci): clear browser copilot gate failures Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * test(ci): cover copilot lint exclusion Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * fix(browser): gate copilot on relay custody Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> * test(browser): bound copilot relay frames Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com> --------- Co-authored-by: Cameron Beeley <cameron.beeley@gmail.com>
42 lines
1.1 KiB
TypeScript
42 lines
1.1 KiB
TypeScript
export type BrowserCopilotBinding = {
|
|
kind: "tab";
|
|
tabId: number;
|
|
target: "host";
|
|
profile: string;
|
|
targetId: string;
|
|
};
|
|
|
|
export type ChatStream = {
|
|
runId: string | null;
|
|
full: string;
|
|
segmentStart: number;
|
|
};
|
|
|
|
export function deriveTabSessionKey(mainSessionKey: unknown, sessionId: unknown): string | null;
|
|
export function gatewayUrlFromPairing(
|
|
relayUrl: unknown,
|
|
explicitGatewayUrl: unknown,
|
|
): string | null;
|
|
export function normalizeGatewayUrl(raw: unknown): string | null;
|
|
export function buildCopilotChatSendParams(params: {
|
|
binding: BrowserCopilotBinding;
|
|
message: string;
|
|
sessionId?: string;
|
|
sessionKey: string;
|
|
}): {
|
|
sessionKey: string;
|
|
sessionId?: string;
|
|
message: string;
|
|
idempotencyKey: string;
|
|
deliver: false;
|
|
toolBindings: { browser: BrowserCopilotBinding };
|
|
};
|
|
export function createChatStream(): ChatStream;
|
|
export function resetChatStream(stream: ChatStream): void;
|
|
export function applyChatDelta(
|
|
stream: ChatStream,
|
|
payload: unknown,
|
|
): { text: string; newBubble: boolean } | null;
|
|
export function renderMarkdownLite(text: unknown): string;
|
|
export function readMessageText(message: unknown): string;
|