fbea291609
Verbatim IiosPlatformPorts from the bottom-up atlas; orgId/appId required scope (KG-02); PolicyDeniedError for fail-closed. Vitest as workspace test runner. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
59 lines
1.3 KiB
TypeScript
59 lines
1.3 KiB
TypeScript
/**
|
|
* Kernel enums, lifted verbatim from the Bottom-Up Evolution Atlas §10 DDL.
|
|
* Exposed as const arrays + derived union types so they are usable both as
|
|
* compile-time types and for runtime validation.
|
|
*/
|
|
|
|
export const ACTOR_KINDS = ['HUMAN', 'AI', 'SERVICE', 'BOT', 'UNKNOWN'] as const;
|
|
export type ActorKind = (typeof ACTOR_KINDS)[number];
|
|
|
|
export const HANDLE_KINDS = [
|
|
'PORTAL_USER',
|
|
'EMAIL',
|
|
'PHONE',
|
|
'WHATSAPP',
|
|
'SLACK',
|
|
'MATTERMOST',
|
|
'TELEGRAM',
|
|
'EXTERNAL_VISITOR',
|
|
] as const;
|
|
export type HandleKind = (typeof HANDLE_KINDS)[number];
|
|
|
|
export const INTERACTION_KINDS = [
|
|
'MESSAGE',
|
|
'EMAIL',
|
|
'SYSTEM_NOTICE',
|
|
'INBOX_WORK',
|
|
'SUPPORT_CASE',
|
|
'MEETING_REQUEST',
|
|
'DIGEST',
|
|
'SUMMARY',
|
|
'NOTIFICATION',
|
|
] as const;
|
|
export type InteractionKind = (typeof INTERACTION_KINDS)[number];
|
|
|
|
export const MESSAGE_PART_KINDS = [
|
|
'TEXT',
|
|
'HTML',
|
|
'MARKDOWN',
|
|
'MEDIA_REF',
|
|
'FILE_REF',
|
|
'VOICE_REF',
|
|
'LOCATION',
|
|
'STRUCTURED_JSON',
|
|
] as const;
|
|
export type MessagePartKind = (typeof MESSAGE_PART_KINDS)[number];
|
|
|
|
export const DELIVERY_STATES = [
|
|
'RECEIVED',
|
|
'NORMALIZED',
|
|
'POLICY_HELD',
|
|
'STORED',
|
|
'DELIVERED',
|
|
'READ',
|
|
'FAILED',
|
|
'DELETED_LOCAL',
|
|
'REDACTED',
|
|
] as const;
|
|
export type DeliveryState = (typeof DELIVERY_STATES)[number];
|