feat(journal): implement message registry and stream store
Implement a robust journal system featuring a type-safe message registry and an MQTT-backed stream store. - Add `registry.ts` to manage message type definitions, Zod schemas, and custom reducers. - Implement `journalStream.ts` to manage MQTT connections, session lifecycle, and reactive message state. - Add built-in message types for `narrative`, `intent`, `roll`, and `article`. - Provide utilities for message validation, optimistic local updates, and message reversion.
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
/**
|
||||
* Journal module — barrel export
|
||||
*/
|
||||
|
||||
// Trigger message type registration
|
||||
import "./types";
|
||||
|
||||
export {
|
||||
registerMessageType,
|
||||
getMessageType,
|
||||
registeredTypes,
|
||||
validatePayload,
|
||||
canEmit,
|
||||
} from "./registry";
|
||||
export type { MessageTypeDef, StreamMessage } from "./registry";
|
||||
export {
|
||||
connectStream,
|
||||
disconnectStream,
|
||||
hydrateFromServer,
|
||||
sendMessage,
|
||||
revertLatest,
|
||||
canRevert,
|
||||
visibleMessages,
|
||||
useJournalStream,
|
||||
journalStreamState,
|
||||
createSession,
|
||||
deleteSession,
|
||||
sessions,
|
||||
setMyName,
|
||||
} from "../stores/journalStream";
|
||||
export type {
|
||||
JournalStreamState,
|
||||
SessionMeta,
|
||||
SessionManifest,
|
||||
} from "../stores/journalStream";
|
||||
Reference in New Issue
Block a user