Skip to content

Documentation Index

Document Description
auth-start.md A user initiates sign-in by submitting their email address; the server generates a magic link and delivers it via email so no password is ever required.
auth-verify.md A user clicks the magic link delivered to their email; the app extracts the token and session, submits them to the verify endpoint, and receives a short-lived handoff code in return.
auth-handoff.md After magic-link verification the mobile app holds only a short-lived handoff code; this endpoint consumes that code and returns the full set of Cognito tokens so the app can authenticate all future requests.
start-session.md A user begins a new capture session from the wearable or mobile app; the server allocates a session record and returns a session ID that is used for all subsequent frame and audio uploads.
upload-audio.md The wearable or mobile app streams audio to the server in 30-second windowed chunks during an active session; the Lambda stores each chunk in S3 and triggers downstream ingest when both audio and frames are ready for a window.
upload-frame.md The wearable streams individual JPEG frames to the server during a session; the Lambda maintains a rolling frame counter, writes each frame to S3 inside its window directory, and triggers ingest when 60 frames have been received and the matching audio chunk is also ready.
end-session.md When the user stops recording, the app signals session end; the server marks the session as ended and triggers ingest for any windows that have accumulated data but have not yet been processed.
ingest-session.md After a recording session ends, the ingest pipeline transforms raw audio and video frames into a structured knowledge graph stored in PostgreSQL, enabling semantic and episodic memory retrieval.
ingest-window.md Cloud Lambda that processes one 30-second recording window: loads frames and audio from S3, captions via GPU, extracts NER and RDF triples, stores a visual embedding, and writes a WorldMMSegment row. When the GPU is unavailable, raises GpuUnavailableError so the invocation routes to IngestDLQ; IngestDLQConsumer retries with visibility extension and marks the segment failed after six attempts.
discord-ops.md Discord alert delivery and slash-command handling: DiscordAlertsFunction forwards SNS and EC2 events to a webhook with a mute gate backed by SSM; DiscordInteractionFunction handles /cost, /status, /mute-alerts, and /unmute-alerts; a CloudWatch alarm fires on IngestDLQ depth exceeding 100 messages for 10 minutes.
memories-feed.md An authenticated user opens the app's home screen and sees a paginated feed of their captured memory segments, each with a thumbnail, timestamp, type label, and processing status.
memories-chat.md An authenticated user asks a natural-language question about their past experiences; the system retrieves relevant memory segments from the WorldMM knowledge graph and uses a GPU-hosted LLM to compose a grounded answer.
list-chats.md An authenticated user opens the side menu and sees a paginated list of their past AI chat conversations, ordered by most recently updated.
waitlist-signup.md A prospective user visits the Encache landing page and submits their email address and optional metadata to join the product waitlist; the server deduplicates the entry and sends an internal notification to the team.
recording-control-notifications.md A platform-forked notification system that shows a persistent, high-importance recording-controls notification while a capture session is active; iOS uses expo-notifications and Android uses a native foreground service with IMPORTANCE_HIGH.
android-config-plugin.md Expo config plugin that patches AndroidManifest.xml at build time: injects Meta wearables permissions, SDK meta-data, URL-scheme intent filter, and sets windowSoftInputMode=adjustResize on the main activity so the soft keyboard resizes the layout rather than covering the chat input.
capture-session.md Client-side orchestrator that opens a server session, routes audio/frame chunks into a PersistentUploadQueue via the glasses or phone capture path, and tears everything down when the user stops recording.
phone-audio-capture.md Captures audio from the phone's built-in microphone in 30-second WAV chunks using expo-av; delivers each completed chunk via a callback for upload through the PersistentUploadQueue.
settings-screen.md The settings screen lets authenticated users register or unregister Meta View smart glasses, sign out, and toggle debug mode; device registration coordinates a native iOS module, the Meta View companion app, and an AppState listener to keep UI state consistent across OS-level app transitions.