MCPcopy Create free account
hub / github.com/MoonshotAI/kimi-code / onAbort

Method onAbort

packages/server/src/ws/connection.ts:483–541  ·  view source on GitHub ↗
(msg: AbortMessage)

Source from the content-addressed store, hash-verified

481 }
482
483 private onAbort(msg: AbortMessage): void {
484 const { session_id, prompt_id } = msg.payload;
485 if (this.abortHandler === undefined) {
486 this.send(
487 buildAck(msg.id, ErrorCode.INTERNAL_ERROR, 'abort handler not wired', {}),
488 );
489 return;
490 }
491 void this.abortHandler
492 .abort(session_id, prompt_id)
493 .then((result) => {
494 this.send(
495 buildAck(msg.id, 0, 'success', {
496 aborted: result.aborted,
497 ...(result.at_seq !== undefined ? { at_seq: result.at_seq } : {}),
498 }),
499 );
500 })
501 .catch((err: unknown) => {
502 if (
503 typeof err === 'object' &&
504 err !== null &&
505 'name' in err &&
506 (err as { name: string }).name === 'PromptAlreadyCompletedError'
507 ) {
508 const at_seq = this.abortHandler!.currentSeq(session_id);
509 this.send(
510 buildAck(msg.id, 0, 'success', { aborted: false, at_seq }),
511 );
512 return;
513 }
514 if (
515 typeof err === 'object' &&
516 err !== null &&
517 'name' in err &&
518 (err as { name: string }).name === 'PromptNotFoundError'
519 ) {
520 this.send(
521 buildAck(msg.id, ErrorCode.PROMPT_NOT_FOUND, 'prompt not found', {}),
522 );
523 return;
524 }
525 if (
526 typeof err === 'object' &&
527 err !== null &&
528 'name' in err &&
529 (err as { name: string }).name === 'SessionNotFoundError'
530 ) {
531 this.send(
532 buildAck(msg.id, ErrorCode.SESSION_NOT_FOUND, 'session not found', {}),
533 );
534 return;
535 }
536 this.logger.warn({ err: String(err) }, 'ws abort handler error');
537 this.send(
538 buildAck(msg.id, ErrorCode.INTERNAL_ERROR, 'abort failed', {}),
539 );
540 });

Callers 2

onMessageMethod · 0.95
handleInputMethod · 0.45

Calls 5

sendMethod · 0.95
buildAckFunction · 0.90
abortMethod · 0.65
currentSeqMethod · 0.65
warnMethod · 0.65

Tested by

no test coverage detected