The numbers are in a spreadsheet. The reasons are in eight earnings
transcripts, a dozen board memos and a year of management commentary — and the
question you actually have is “what did they say about margin in Q2, and does it
still hold?”A search engine over those documents returns the paragraphs. It does not tell
you what changed.
for path, when in [("q2-earnings.pdf", "2026-06-30"), ("q3-earnings.pdf", "2026-09-30")]: client.upload_file(space_id="filings", file=path, tags=[f"period:{when[:7]}"])
Tags carry the period so a later question can be pinned to one, and uploads are
asynchronous — poll get_job, or take the
webhook route.
The period tag is what pins the question to a quarter, and it has to be:
everything was uploaded on one afternoon and none of it happened then, but an
uploaded file does not carry event time today — the occurred_after /
occurred_before filters match nothing extracted from a file. They work on
memories you record with a timestamp;
for documents, the tag you set on upload is the date. any_strict matters: the
plain any mode also matches untagged memories, which would let undated
material back into a pinned question.
This is not investment advice, and it must not be presented as any. The
system retrieves and summarises what was said. It does not know whether the
guidance was met, and it will summarise a misleading statement as confidently
as an accurate one.
Numbers in prose are the weakest part. An extracted memory is text, and a
figure that matters should be checked against the filing rather than trusted
from a summary. The receipt gives you the path back.
relevance_score can exceed 1.0 and is not a confidence. It is a ranking
signal within one result set.
Uploads carry no event time. Every fact from a file is undated, so the
occurred_* filters and point-in-time reads cannot tell one filing’s quarter
from another’s. Tag the period on upload, as above, and filter on the tag.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Anona Memory","description":"Managed memory for AI agents. Record, retrieve, and reason over long-lived agent memory through a single API.","colors":{"primary":"#ce3430","light":"#e7413c","dark":"#b02324"},"logo":{"light":"https://mintcdn.com/anonalabs/EbHrb6Piz6HoXns-/logo/anona-lockup-light.svg?fit=max\u0026auto=format\u0026n=EbHrb6Piz6HoXns-\u0026q=85\u0026s=e071f027f34ec6b33984a7f58dad387f","dark":"https://mintcdn.com/anonalabs/EbHrb6Piz6HoXns-/logo/anona-lockup-dark.svg?fit=max\u0026auto=format\u0026n=EbHrb6Piz6HoXns-\u0026q=85\u0026s=cda5788809f06de5dcd8cf0812fbea53"},"favicon":"https://mintcdn.com/anonalabs/EbHrb6Piz6HoXns-/favicon.svg?fit=max\u0026auto=format\u0026n=EbHrb6Piz6HoXns-\u0026q=85\u0026s=c4752464baac0ee98e78996bda962821","background":{"color":{"light":"#ffffff","dark":"#1a1d21"}},"navbar":{"links":[{"href":"mailto:support@anonalabs.com","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://memory.anonalabs.com"}},"footer":{"socials":{"github":"https://github.com/anonalabs"}},"search":{"prompt":"Search the Anona Memory docs"},"fonts":{"heading":{"family":"Instrument Serif","weight":400},"body":{"family":"Space Grotesk"}},"contextual":{"options":["copy","view","chatgpt","claude","cursor","vscode","mcp",{"title":"Copy all docs for LLM","description":"Every page as one Markdown file, for pasting into an agent's context","icon":"file-lines","href":"https://docs.anonalabs.com/llms-full.txt"},{"title":"Docs index for LLM","description":"llms.txt - the page map an agent can crawl on demand","icon":"list","href":"https://docs.anonalabs.com/llms.txt"}],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"GitHub","icon":"github","href":"https://github.com/anonalabs/Anona-Memory-SDK"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"anonalabs","hasAudioNarration":false,"actualSubdomain":"anonalabs","customDomains":["docs.anonalabs.com"],"gitSource":{"type":"github","owner":"anonalabs","repo":"anona-memory","deployBranch":"main","contentDirectory":"mintlify-docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"collectionId":"60bfb882-8cd2-4fd4-be2f-449f4f31920d","liveDeploymentHistoryId":"6ae1c7a24fe4c8cc739c373a","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae1c7a24fe4c8cc739c373a"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ae432fa2b01475daafa184a","clientVersion":"0.0.4021","searchFilterCounts":[{"language":"default","tag":"Use Cases","count":41},{"language":"default","tag":"Anona CLI","count":16},{"language":"default","tag":"Memory (data plane)","count":13},{"language":"default","tag":"Command reference","count":11},{"language":"default","tag":"Integrations","count":10},{"language":"default","tag":"Build","count":10},{"language":"default","tag":"Guides","count":8},{"language":"default","tag":"Research","count":8},{"language":"default","tag":"Account (control plane)","count":7},{"language":"default","tag":"Team","count":7}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":"/* cyrillic-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format('woff2');\n unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format('woff2');\n unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* cyrillic-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx3cwhsk.woff2) format('woff2');\n unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;\n}\n/* cyrillic */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxTcwhsk.woff2) format('woff2');\n unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;\n}\n/* greek */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxPcwhsk.woff2) format('woff2');\n unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;\n}\n/* vietnamese */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx_cwhsk.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPx7cwhsk.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'JetBrains Mono';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/jetbrainsmono/v24/tDbv2o-flEEny0FZhsfKu5WU4zr3E_BX0PnT8RD8yKwBNntkaToggR7BYRbKPxDcwg.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n:root{--font-mono:\"JetBrains Mono\", ui-monospace, SFMono-Regular, Menlo, Consolas,\n monospace}[class*=font-mono],code,kbd,pre,samp{font-family:var(--font-mono)!important}#content-area pre{line-height:1.7}#content-area h3,#content-area h4,#content-area h5,#content-area h6{font-family:var(--font-body, \"Space Grotesk\"),system-ui,sans-serif;font-weight:600;letter-spacing:-.01em}#banner{background-color:#1a1816!important}html.dark #banner{background-color:#22262b!important;border-bottom:1px solid #2f343a}img.nav-logo{height:2rem!important;max-height:2rem!important;width:auto!important;object-fit:contain;align-self:center}#navbar a[href=\"/\"]{display:flex;align-items:center}#content-area table{font-size:.875rem;line-height:1.6;display:block;overflow-x:auto;max-width:100%}#content-area thead th{font-weight:600;letter-spacing:.01em;white-space:nowrap}#content-area td,#content-area th{vertical-align:top;padding-top:.6rem;padding-bottom:.6rem}#content-area td code,#content-area th code{white-space:nowrap;font-size:.8125rem}@media (min-width:1280px){[class*=max-w-8xl]{max-width:none!important}#content-container>div{justify-content:space-between}#content-area{max-width:69rem}}main .relative.grow:has(.mdx-content>span:first-child>a[href=\"/use-cases/overview\"]){--uc-gutter:4px;padding-top:2.25rem}@media (min-width:1024px){main .relative.grow:has(.mdx-content>span:first-child>a[href=\"/use-cases/overview\"]){--uc-gutter:91.2px}}main .mdx-content:has(>span:first-child>a[href=\"/use-cases/overview\"]){position:static}main .mdx-content:has(>span:first-child>a[href=\"/use-cases/overview\"])>span:first-child{position:absolute;top:0;left:var(--uc-gutter);font-size:.875rem}main .mdx-content .uc-examples{display:flex;flex-wrap:wrap;gap:.375rem;margin:0 0 1.75rem}main .mdx-content .uc-examples a{display:inline-flex;align-items:center;gap:.4rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;line-height:1.7;padding:.2rem .7rem;border:1px solid rgba(128,128,128,.45);border-bottom:1px solid rgba(128,128,128,.45);border-radius:.4rem;background:rgba(128,128,128,.12);text-decoration:none;white-space:nowrap}main .mdx-content .uc-examples a::before{content:\"\";flex:none;width:.95rem;height:.95rem;background-color:currentColor;-webkit-mask:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2016%2016%27%3E%3Cpath%20d%3D%27M8%200C3.58%200%200%203.58%200%208c0%203.54%202.29%206.53%205.47%207.59.4.07.55-.17.55-.38%200-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01%201.08.58%201.23.82.72%201.21%201.87.87%202.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95%200-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12%200%200%20.67-.21%202.2.82.64-.18%201.32-.27%202-.27s1.36.09%202%20.27c1.53-1.04%202.2-.82%202.2-.82.44%201.1.16%201.92.08%202.12.51.56.82%201.27.82%202.15%200%203.07-1.87%203.75-3.65%203.95.29.25.54.73.54%201.48%200%201.07-.01%201.93-.01%202.2%200%20.21.15.46.55.38A8.012%208.012%200%200%200%2016%208c0-4.42-3.58-8-8-8z%27%2F%3E%3C%2Fsvg%3E) center/contain no-repeat;mask:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2016%2016%27%3E%3Cpath%20d%3D%27M8%200C3.58%200%200%203.58%200%208c0%203.54%202.29%206.53%205.47%207.59.4.07.55-.17.55-.38%200-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01%201.08.58%201.23.82.72%201.21%201.87.87%202.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95%200-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12%200%200%20.67-.21%202.2.82.64-.18%201.32-.27%202-.27s1.36.09%202%20.27c1.53-1.04%202.2-.82%202.2-.82.44%201.1.16%201.92.08%202.12.51.56.82%201.27.82%202.15%200%203.07-1.87%203.75-3.65%203.95.29.25.54.73.54%201.48%200%201.07-.01%201.93-.01%202.2%200%20.21.15.46.55.38A8.012%208.012%200%200%200%2016%208c0-4.42-3.58-8-8-8z%27%2F%3E%3C%2Fsvg%3E) center/contain no-repeat}main .mdx-content .uc-examples a:hover{border-color:rgba(128,128,128,.8);background:rgba(128,128,128,.2)}main .mdx-content .uc-examples a.uc-api::before{display:none}"}],"page":{"pagePath":"use-cases/financial-analyst","slug":"/use-cases/financial-analyst","pageMetadata":{"title":"Financial analyst across quarters","description":"Ask what changed between Q2 and Q4 and get an answer grounded in what was said at the time.","href":"/use-cases/financial-analyst"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Ask what changed between Q2 and Q4 and get an answer grounded in what was said at the time.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,em:`em`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:_jsx(_components.a,{href:`/use-cases/overview`,children:`← All use cases`})}),`\n`,_jsxs(`div`,{className:`uc-examples`,children:[_jsx(`a`,{href:`https://github.com/anonalabs/Anona-Memory-SDK/blob/main/examples/time_travel.py`,children:`time_travel.py`}),_jsx(`a`,{href:`https://github.com/anonalabs/Anona-Memory-SDK/blob/main/examples/memory_basics.py`,children:`memory_basics.py`})]}),`\n`,_jsx(Heading,{level:`2`,id:`the-scenario`,children:`The scenario`}),`\n`,_jsxs(_components.p,{children:[`The numbers are in a spreadsheet. The `,_jsx(_components.em,{children:`reasons`}),` are in eight earnings\ntranscripts, a dozen board memos and a year of management commentary — and the\nquestion you actually have is “what did they say about margin in Q2, and does it\nstill hold?”`]}),`\n`,_jsx(_components.p,{children:`A search engine over those documents returns the paragraphs. It does not tell\nyou what changed.`}),`\n`,_jsx(Heading,{level:`2`,id:`step-1-—-load-the-documents-dated`,children:`Step 1 — Load the documents, dated`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`for`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` path, when `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`in`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` [(`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"q2-earnings.pdf\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-06-30\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`), (`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"q3-earnings.pdf\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"2026-09-30\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)]:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` client.upload_file(`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`space_id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"filings\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`file`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`path, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`tags`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`f`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"period:`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`{`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`when[:`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`7`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`]`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`}`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`])`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Tags carry the period so a later question can be pinned to one, and uploads are\nasynchronous — poll `,_jsx(_components.code,{children:`get_job`}),`, or take the\n`,_jsx(_components.a,{href:`https://github.com/anonalabs/Anona-Memory-SDK/blob/main/examples/webhooks_and_settings.py`,children:`webhook route`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`step-2-—-bound-the-question-by-period`,children:`Step 2 — Bound the question by period`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`6`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`6`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`client.retrieve(`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` space_id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"filings\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` query`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"gross margin commentary\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` tags`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`[`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"period:2026-06\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` tags_match`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"any_strict\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`The period tag is what pins the question to a quarter, and it has to be:\neverything was uploaded on one afternoon and none of it happened then, but an\nuploaded file does not carry event time today — the `,_jsx(_components.code,{children:`occurred_after`}),` /\n`,_jsx(_components.code,{children:`occurred_before`}),` filters match nothing extracted from a file. They work on\nmemories you `,_jsxs(_components.a,{href:`/use-cases/what-was-true-back-then`,children:[_jsx(_components.code,{children:`record`}),` with a timestamp`]}),`;\nfor documents, the tag you set on upload is the date. `,_jsx(_components.code,{children:`any_strict`}),` matters: the\nplain `,_jsx(_components.code,{children:`any`}),` mode also matches untagged memories, which would let undated\nmaterial back into a pinned question.`]}),`\n`,_jsx(Heading,{level:`2`,id:`step-3-—-ask-the-comparative-question`,children:`Step 3 — Ask the comparative question`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`4`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`4`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:`print`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(client.reason(`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` space_id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"filings\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:` query`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"What did management say about margin pressure in Q2, and how did that change by Q3?\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`))`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`step-4-—-keep-the-receipt`,children:`Step 4 — Keep the receipt`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`python`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`python`,children:_jsxs(_components.code,{language:`python`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`res `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` client.retrieve_receipt(`}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`space_id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"filings\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`query`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"margin pressure\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#9CDCFE`},children:`receipt_detail`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`=`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"full\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:`print`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`(res.receipt_id)`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Store the receipt id next to the answer. When somebody challenges the number six\nmonths from now, `,_jsx(_components.a,{href:`/use-cases/why-the-answer-used-what-it-used`,children:`the receipt says exactly what the model\nsaw`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`evals`,children:`Evals`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`Load two consecutive quarters where you know a metric moved.`}),`\n`,_jsx(_components.li,{children:`Ask the comparative question. Check both periods are actually represented in\nthe answer, not just the more recent one.`}),`\n`,_jsx(_components.li,{children:`Re-run pinned to one quarter’s tag and confirm the other drops out — if it\ndoes not, check the tag actually went on at upload.`}),`\n`,_jsx(_components.li,{children:`Pull the receipt and confirm the cited memories come from both filings.`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`guardrails`,children:`Guardrails`}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`This is not investment advice, and it must not be presented as any.`}),` The\nsystem retrieves and summarises what was said. It does not know whether the\nguidance was met, and it will summarise a misleading statement as confidently\nas an accurate one.`]})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Numbers in prose are the weakest part.`}),` An extracted memory is text, and a\nfigure that matters should be checked against the filing rather than trusted\nfrom a summary. The receipt gives you the path back.`]}),`\n`,_jsxs(_components.li,{children:[_jsxs(_components.strong,{children:[_jsx(_components.code,{children:`relevance_score`}),` can exceed 1.0`]}),` and is not a confidence. It is a ranking\nsignal within one result set.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Uploads carry no event time.`}),` Every fact from a file is undated, so the\n`,_jsx(_components.code,{children:`occurred_*`}),` filters and point-in-time reads cannot tell one filing’s quarter\nfrom another’s. Tag the period on upload, as above, and filter on the tag.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`built-from`,children:`Built from`}),`\n`,_jsxs(_components.p,{children:[`Both are complete, runnable scripts:\n`,_jsx(_components.a,{href:`https://github.com/anonalabs/Anona-Memory-SDK/blob/main/examples/time_travel.py`,children:_jsx(_components.code,{children:`time_travel.py`})}),`,\n`,_jsx(_components.a,{href:`https://github.com/anonalabs/Anona-Memory-SDK/blob/main/examples/memory_basics.py`,children:_jsx(_components.code,{children:`memory_basics.py`})}),`.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Financial analyst across quarters","description":"Ask what changed between Q2 and Q4 and get an answer grounded in what was said at the time.","href":"/use-cases/financial-analyst"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"The scenario","slug":"the-scenario","depth":2,"children":[]},{"title":"Step 1 — Load the documents, dated","slug":"step-1-—-load-the-documents-dated","depth":2,"children":[]},{"title":"Step 2 — Bound the question by period","slug":"step-2-—-bound-the-question-by-period","depth":2,"children":[]},{"title":"Step 3 — Ask the comparative question","slug":"step-3-—-ask-the-comparative-question","depth":2,"children":[]},{"title":"Step 4 — Keep the receipt","slug":"step-4-—-keep-the-receipt","depth":2,"children":[]},{"title":"Evals","slug":"evals","depth":2,"children":[]},{"title":"Guardrails","slug":"guardrails","depth":2,"children":[]},{"title":"Built from","slug":"built-from","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/anonalabs/3087548d8b58fdad/apollo-tracker.js"],"subdomain":"anonalabs","siteName":"Anona Memory","title":"Financial analyst across quarters - Anona Memory","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-24T17:13:54.929Z","originalFileLocation":"use-cases/financial-analyst.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Ask what changed between Q2 and Q4 and get an answer grounded in what was said at the time.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Anona Memory\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/anonalabs/8SAfjiD5iTDJmcr4/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/anonalabs/8SAfjiD5iTDJmcr4/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/anonalabs/8SAfjiD5iTDJmcr4/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/anonalabs/8SAfjiD5iTDJmcr4/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/anonalabs/8SAfjiD5iTDJmcr4/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/anonalabs/8SAfjiD5iTDJmcr4/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/anonalabs/8SAfjiD5iTDJmcr4/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/anonalabs/8SAfjiD5iTDJmcr4/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/anonalabs/8SAfjiD5iTDJmcr4/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Financial analyst across quarters - Anona Memory\">\u003cmeta data-mint-head property=\"og:description\" content=\"Ask what changed between Q2 and Q4 and get an answer grounded in what was said at the time.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Anona Memory\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.anonalabs.com/use-cases/financial-analyst\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://anonalabs.mintlify.app/_mintlify/api/og/v2?division=Research\u0026amp;title=Financial+analyst+across+quarters\u0026amp;description=Ask+what+changed+between+Q2+and+Q4+and+get+an+answer+grounded+in+what+was+said+at+the+time.\u0026amp;theme=7715ad72d5e774c6ba1f3afa\u0026amp;signature=fbea4b84992501c0f87b321ae13e2544afde5a682b3ece9fd0f9b83f84826bd5\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Financial analyst across quarters - Anona Memory\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Ask what changed between Q2 and Q4 and get an answer grounded in what was said at the time.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://anonalabs.mintlify.app/_mintlify/api/og/v2?division=Research\u0026amp;title=Financial+analyst+across+quarters\u0026amp;description=Ask+what+changed+between+Q2+and+Q4+and+get+an+answer+grounded+in+what+was+said+at+the+time.\u0026amp;theme=7715ad72d5e774c6ba1f3afa\u0026amp;signature=fbea4b84992501c0f87b321ae13e2544afde5a682b3ece9fd0f9b83f84826bd5\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/anonalabs/8SAfjiD5iTDJmcr4/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Anona Memory\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#ce3430\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.anonalabs.com/use-cases/financial-analyst\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/use-cases/financial-analyst.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.anonalabs.com/#organization\",\"name\":\"Anona Memory\",\"url\":\"https://docs.anonalabs.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/anonalabs/EbHrb6Piz6HoXns-/logo/anona-lockup-light.svg?fit=max\u0026auto=format\u0026n=EbHrb6Piz6HoXns-\u0026q=85\u0026s=e071f027f34ec6b33984a7f58dad387f\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.anonalabs.com#website\",\"name\":\"Anona Memory\",\"url\":\"https://docs.anonalabs.com\",\"publisher\":{\"@id\":\"https://docs.anonalabs.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.anonalabs.com/use-cases/financial-analyst#webpage\",\"url\":\"https://docs.anonalabs.com/use-cases/financial-analyst\",\"name\":\"Financial analyst across quarters\",\"description\":\"Ask what changed between Q2 and Q4 and get an answer grounded in what was said at the time.\",\"dateModified\":\"2026-10-24T17:13:54.929Z\",\"isPartOf\":{\"@id\":\"https://docs.anonalabs.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.anonalabs.com/use-cases/financial-analyst#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.anonalabs.com/use-cases/financial-analyst#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Use Cases\",\"item\":\"https://docs.anonalabs.com/use-cases/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Research\",\"item\":\"https://docs.anonalabs.com/use-cases/entity-graph\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Financial analyst across quarters\",\"item\":\"https://docs.anonalabs.com/use-cases/financial-analyst\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.anonalabs.com/use-cases/financial-analyst#article\",\"headline\":\"Financial analyst across quarters\",\"name\":\"Financial analyst across quarters\",\"description\":\"Ask what changed between Q2 and Q4 and get an answer grounded in what was said at the time.\",\"url\":\"https://docs.anonalabs.com/use-cases/financial-analyst\",\"mainEntityOfPage\":{\"@id\":\"https://docs.anonalabs.com/use-cases/financial-analyst#webpage\"},\"dateModified\":\"2026-10-24T17:13:54.929Z\",\"publisher\":{\"@id\":\"https://docs.anonalabs.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.anonalabs.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Anona Memory\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Anona Memory","nav":{"global":{"anchors":[{"anchor":"GitHub","icon":"github","href":"https://github.com/anonalabs/Anona-Memory-SDK"}]},"groups":[{"group":"Getting Started","pages":[{"title":"Anona Memory","sidebarTitle":"Introduction","href":"/introduction"},{"title":"Quickstart","href":"/quickstart"},{"title":"Core Concepts","href":"/concepts"},{"title":"Plans and billing","href":"/guides/plans-and-billing"}]},{"group":"For Agents","pages":[{"title":"Agent Self-Onboarding","sidebarTitle":"Self-Onboarding","href":"/agents/self-onboarding"},{"title":"Self-Onboarding Prompt","sidebarTitle":"Onboarding Prompt","href":"/agents/onboarding-prompt"},{"title":"Temporary profiles","sidebarTitle":"Temporary profiles","href":"/agents/temp-profiles"}]},{"group":"Anona CLI","pages":[{"title":"Anona CLI","sidebarTitle":"Overview \u0026 install","href":"/cli/overview"},{"title":"Sign in \u0026 credentials","sidebarTitle":"Sign in \u0026 credentials","href":"/cli/sign-in"},{"group":"Command reference","pages":[{"title":"record, retrieve, reason","sidebarTitle":"record, retrieve, reason","href":"/cli/memory"},{"title":"spaces","sidebarTitle":"spaces","href":"/cli/spaces"},{"title":"memories","sidebarTitle":"memories","href":"/cli/memories"},{"title":"documents","sidebarTitle":"documents","href":"/cli/documents"},{"title":"jobs","sidebarTitle":"jobs","href":"/cli/jobs"},{"title":"Space settings","sidebarTitle":"settings","href":"/cli/settings"},{"title":"llm-models and model","sidebarTitle":"models","href":"/cli/models"},{"title":"profile, user-profile, usage","sidebarTitle":"profile, user-profile, usage","href":"/cli/profiles-and-usage"},{"title":"Memory models, profile, rules, webhooks, routing","sidebarTitle":"space config","href":"/cli/space-config"},{"title":"Explore: graph, entities, receipts, chat","sidebarTitle":"explore","href":"/cli/explore"},{"title":"Account: org, keys, members, billing, exports","sidebarTitle":"account","href":"/cli/account"}]},{"title":"Scripting \u0026 automation","sidebarTitle":"Scripting \u0026 automation","href":"/cli/scripting"},{"title":"The CLI for AI agents","sidebarTitle":"For AI agents","href":"/cli/agents"},{"title":"Troubleshooting the CLI","sidebarTitle":"Troubleshooting","href":"/cli/troubleshooting"}]},{"group":"API Essentials","pages":[{"title":"API Overview","href":"/api-reference/overview"},{"title":"Authentication","href":"/api-reference/authentication"},{"title":"Errors","href":"/api-reference/errors"}]},{"group":"Memory (data plane)","pages":[{"title":"Memories","href":"/api-reference/memories"},{"title":"Documents","href":"/api-reference/documents"},{"title":"Retrieve","href":"/api-reference/retrieve"},{"title":"Context Receipts","href":"/api-reference/context-receipts"},{"title":"Reason","href":"/api-reference/reason"},{"title":"Model selection","href":"/api-reference/model-selection"},{"title":"User Profiles","href":"/api-reference/user-profiles"},{"title":"Memory models","href":"/api-reference/models"},{"title":"Graph","href":"/api-reference/graph"},{"title":"Draw","href":"/api-reference/draw"},{"title":"Artifacts","href":"/api-reference/artifacts"},{"title":"Extraction settings","href":"/api-reference/extraction-settings"},{"title":"Webhooks","href":"/api-reference/webhooks"}]},{"group":"LLM Proxy (drop-in)","pages":[{"title":"Chat","href":"/api-reference/chat"},{"title":"Responses","href":"/api-reference/responses"},{"title":"Messages","href":"/api-reference/messages"}]},{"group":"Account (control plane)","pages":[{"title":"Organization","href":"/api-reference/organization"},{"title":"Spaces","href":"/api-reference/spaces"},{"title":"API Keys","href":"/api-reference/api-keys"},{"title":"Usage","href":"/api-reference/usage"},{"title":"Billing","href":"/api-reference/billing"},{"title":"Feedback","href":"/api-reference/feedback"},{"title":"Sales enquiry","href":"/api-reference/sales-enquiry"}]},{"group":"SDKs \u0026 MCP","pages":[{"title":"Python SDK","href":"/sdk/python"},{"title":"TypeScript SDK","sidebarTitle":"TypeScript","href":"/sdk/javascript"},{"title":"MCP Integration","sidebarTitle":"MCP","href":"/mcp-integration"},{"title":"Slack","href":"/slack"},{"title":"GitHub","href":"/github"}]},{"group":"Integrations","pages":[{"title":"Integrations","href":"/integrations/overview"},{"title":"Agent Skills","sidebarTitle":"Agent Skills","href":"/integrations/skills"},{"title":"LangChain \u0026 LangGraph","href":"/integrations/langchain"},{"title":"CrewAI","href":"/integrations/crewai"},{"title":"LlamaIndex","href":"/integrations/llamaindex"},{"title":"Google ADK","href":"/integrations/google-adk"},{"title":"Microsoft Agent Framework","href":"/integrations/microsoft-agent-framework"},{"title":"AWS Strands","href":"/integrations/strands"},{"title":"Softmax","href":"/integrations/softmax"},{"title":"Examples","href":"/integrations/examples"}]},{"group":"Guides","pages":[{"title":"Charts, diagrams and artifacts","href":"/guides/charts-diagrams-artifacts"},{"title":"Scoping Memory by User, Agent, or Session","href":"/guides/scoping-multi-tenant"},{"title":"Automatic Space Routing","href":"/guides/automatic-routing"},{"title":"Searching Over Time","href":"/guides/temporal-search"},{"title":"Migrating to the Drop-in Proxy","href":"/guides/migrating-to-proxy"},{"title":"Bulk-Importing History with Webhooks","href":"/guides/bulk-import-webhooks"},{"title":"Tuning Recall Quality","href":"/guides/tuning-recall"},{"title":"Export Your Memory","href":"/guides/export"}]},{"group":"Use Cases","pages":[{"title":"Use Cases","href":"/use-cases/overview"},{"group":"Personal","pages":[{"title":"Remember the people you meet","href":"/use-cases/remember-people"},{"title":"Keep your own promises","href":"/use-cases/keep-your-promises"},{"title":"Think out loud, keep the thought","href":"/use-cases/think-out-loud"},{"title":"Stop re-solving the same bug","href":"/use-cases/stop-resolving-the-same-bug"}]},{"group":"Build","pages":[{"title":"The three calls you actually need","href":"/use-cases/the-three-calls"},{"title":"One line, keep your OpenAI SDK","href":"/use-cases/drop-in-proxy"},{"title":"Chat with your documents","href":"/use-cases/chat-with-your-documents"},{"title":"Turn a meeting recording into memory","href":"/use-cases/meeting-recording-to-memory"},{"title":"Backfill a year of history","href":"/use-cases/backfill-history"},{"title":"Know the moment ingestion finishes","href":"/use-cases/events-not-polling"},{"title":"Teach it your vocabulary","href":"/use-cases/teach-it-your-vocabulary"},{"title":"Browse what it knows","href":"/use-cases/browse-what-it-knows"},{"title":"One space or many?","href":"/use-cases/one-space-or-many"},{"title":"Stop a runaway import","href":"/use-cases/stop-a-runaway-import"}]},{"group":"Support","pages":[{"title":"Support agent that knows each customer","href":"/use-cases/support-agent-per-customer"},{"title":"Everything you know about one user","href":"/use-cases/one-user-profile"},{"title":"Support memory the whole team shares","href":"/use-cases/shared-team-support-memory"},{"title":"Tutor that remembers the learner","href":"/use-cases/tutor-that-remembers"}]},{"group":"Research","pages":[{"title":"Who your agent keeps meeting","href":"/use-cases/entity-graph"},{"title":"What was true back then","href":"/use-cases/what-was-true-back-then"},{"title":"Competitive intelligence that accumulates","description":"Press releases, pricing changes and job postings become a position you can query, not a folder nobody reads.","href":"/use-cases/competitive-intelligence"},{"title":"Financial analyst across quarters","href":"/use-cases/financial-analyst"},{"title":"Contract and policy memory","description":"Which clause, in which agreement, agreed when — with the provenance to prove where the answer came from.","href":"/use-cases/contract-and-policy-memory"},{"title":"A briefing that keeps itself current","href":"/use-cases/self-refreshing-briefing"},{"title":"Give the space a mission","href":"/use-cases/give-the-space-a-mission"},{"title":"A shelf of standing questions","href":"/use-cases/a-shelf-of-standing-questions"}]},{"group":"Team","pages":[{"title":"Two agents, one space","href":"/use-cases/two-agents-one-space"},{"title":"Memory for your coding agent","href":"/use-cases/memory-for-your-coding-agent"},{"title":"Onboarding agent for new hires","href":"/use-cases/onboarding-agent"},{"title":"Search across everything the company knows","href":"/use-cases/company-wide-search"},{"title":"Incident copilot that has read every postmortem","href":"/use-cases/incident-copilot"},{"title":"Account memory that outlives the rep","href":"/use-cases/account-memory"},{"title":"Candidate memory across interviewers","href":"/use-cases/candidate-memory"}]},{"group":"Governance","pages":[{"title":"Why the answer used what it used","href":"/use-cases/why-the-answer-used-what-it-used"},{"title":"Correct a memory without losing the record","href":"/use-cases/correct-a-memory"},{"title":"Delete a user's memories, provably","href":"/use-cases/delete-a-users-memories"},{"title":"Cut the bill without cutting recall","href":"/use-cases/cut-the-bill"},{"title":"Prove the memory is earning its place","href":"/use-cases/prove-memory-helps"},{"title":"Choose the model a space thinks with","href":"/use-cases/choose-the-model"},{"title":"Take everything with you","href":"/use-cases/take-everything-with-you"}]}]},{"group":"Legal","pages":[{"title":"Subprocessors","href":"/legal/subprocessors"}]},{"group":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},"title":"Financial analyst across quarters - Anona Memory","buildId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","deploymentId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","dynamics":[],"chunks":[]}