kimi-code/packages/protocol/src/request-id.ts
Haozhe 4603d8ad6e
feat(protocol): extract shared protocol package from agent-core (#612)
* feat(protocol): extract shared protocol package from agent-core

- add `@moonshot-ai/protocol` package with REST/WS schemas, envelopes, error codes, event types, and display schemas\n- migrate agent-core `events.ts` and `display/schemas.ts` to re-export from protocol
- add centralized `onUnexpectedError` handler for safe emitter listener callbacks
- reject forkSession when source session has an active running turn
- add protocol schema tests and unexpectedError handler tests
2026-06-10 14:03:38 +08:00

14 lines
371 B
TypeScript

import { isValid, ulid } from 'ulid';
export const ulidRegex = /^[0-7][0-9A-HJKMNP-TV-Z]{25}$/;
export function parseOrGenerateRequestId(headerValue: string | undefined): string {
if (typeof headerValue === 'string' && isValid(headerValue)) {
return headerValue;
}
return ulid();
}
export function isUlid(value: string): boolean {
return isValid(value);
}