@arbidocs/client 0.3.145 → 0.3.147

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/index.d.cts +270 -355
  2. package/dist/index.d.ts +270 -355
  3. package/package.json +1 -1
package/dist/index.d.cts CHANGED
@@ -885,15 +885,37 @@ interface paths {
885
885
  put?: never;
886
886
  /**
887
887
  * Copy Workspace Data
888
- * @description Copy documents from source workspace (current) to target workspace.
888
+ * @description Copy selected items from the source workspace (current) to a target workspace.
889
889
  *
890
890
  * Requires workspace-scoped JWT for the source workspace.
891
891
  * Target workspace key is provided in the request body (SecretBox-encrypted with session key).
892
892
  *
893
- * Copies:
894
- * - Document metadata (title, doc_date, shared status, etc.)
895
- * - MinIO encrypted files (downloaded to server memory, re-encrypted, uploaded)
896
- * - Qdrant vectors (with updated doc_ext_id and chunk_ext_id references)
893
+ * ``items`` is a flat, heterogeneous list of external IDs; the prefix selects
894
+ * what is copied, and **exactly** the listed items are copied — nothing rides
895
+ * along:
896
+ *
897
+ * - ``doc-`` document — row + MinIO files + Qdrant vectors, all re-encrypted
898
+ * with the target workspace key. Chunk external IDs are preserved.
899
+ * - ``tag-`` tag — merged into a same-named tag already in the target if there
900
+ * is one, otherwise created. A parent tag that is not in the target flattens
901
+ * the copy to a root tag.
902
+ * - ``dtj-`` doctag — requires BOTH its document (selected in the same request)
903
+ * and its tag (selected, or already present by name) in the target; RLS makes
904
+ * any other combination impossible. Fails with a reason otherwise.
905
+ * - ``fct-`` fact — content, date span, timezone and citations preserved; pins
906
+ * are not (a pin is the pinning account's own state).
907
+ * - ``con-`` chat — conversation + every message, with the parent/child tree
908
+ * and the encrypted ``tools`` blob rebuilt.
909
+ *
910
+ * Facts and chats need no vector copy: both live in pointer-only collections
911
+ * keyed by external ID and are indexed on write / by the lazy backfill.
912
+ *
913
+ * ``created_by`` is NOT preserved. Every content table's RLS ``WITH CHECK``
914
+ * forces it to the copying user, so copies are attributed to whoever ran the
915
+ * copy, never to the original author.
916
+ *
917
+ * Each item is copied in its own savepoint, so one failure does not abort the
918
+ * batch; per-item outcomes are in ``results``.
897
919
  */
898
920
  post: operations['copy_workspace_data'];
899
921
  delete?: never;
@@ -930,28 +952,6 @@ interface paths {
930
952
  patch: operations['update_workspace'];
931
953
  trace?: never;
932
954
  };
933
- '/v1/workspace/{workspace_ext_id}/chronology': {
934
- parameters: {
935
- query?: never;
936
- header?: never;
937
- path?: never;
938
- cookie?: never;
939
- };
940
- /**
941
- * Get Workspace Chronology
942
- * @description Return the last-generated chronology for a workspace.
943
- *
944
- * Returns all-null fields when no chronology has been generated yet.
945
- */
946
- get: operations['get_workspace_chronology'];
947
- put?: never;
948
- post?: never;
949
- delete?: never;
950
- options?: never;
951
- head?: never;
952
- patch?: never;
953
- trace?: never;
954
- };
955
955
  '/v1/document/list': {
956
956
  parameters: {
957
957
  query?: never;
@@ -1345,30 +1345,6 @@ interface paths {
1345
1345
  patch?: never;
1346
1346
  trace?: never;
1347
1347
  };
1348
- '/v1/document/chronology': {
1349
- parameters: {
1350
- query?: never;
1351
- header?: never;
1352
- path?: never;
1353
- cookie?: never;
1354
- };
1355
- get?: never;
1356
- put?: never;
1357
- /**
1358
- * Generate Workspace Chronology
1359
- * @description Generate a chronological timeline of events from the specified documents.
1360
- *
1361
- * Runs LLM analysis over the selected documents and persists the result in the
1362
- * workspace_chronology table (one row per workspace, upserted on each generation).
1363
- * Returns the generated events alongside metadata about when they were produced.
1364
- */
1365
- post: operations['generate_chronology'];
1366
- delete?: never;
1367
- options?: never;
1368
- head?: never;
1369
- patch?: never;
1370
- trace?: never;
1371
- };
1372
1348
  '/v1/conversation/list': {
1373
1349
  parameters: {
1374
1350
  query?: never;
@@ -1945,7 +1921,7 @@ interface paths {
1945
1921
  patch: operations['update_tag'];
1946
1922
  trace?: never;
1947
1923
  };
1948
- '/v1/notes/': {
1924
+ '/v1/facts/': {
1949
1925
  parameters: {
1950
1926
  query?: never;
1951
1927
  header?: never;
@@ -1955,17 +1931,17 @@ interface paths {
1955
1931
  get?: never;
1956
1932
  put?: never;
1957
1933
  /**
1958
- * Create Note Endpoint
1934
+ * Create Fact Endpoint
1959
1935
  * @description Create a note in the active workspace.
1960
1936
  */
1961
- post: operations['create_note'];
1937
+ post: operations['create_fact'];
1962
1938
  delete?: never;
1963
1939
  options?: never;
1964
1940
  head?: never;
1965
1941
  patch?: never;
1966
1942
  trace?: never;
1967
1943
  };
1968
- '/v1/notes/list': {
1944
+ '/v1/facts/list': {
1969
1945
  parameters: {
1970
1946
  query?: never;
1971
1947
  header?: never;
@@ -1973,15 +1949,15 @@ interface paths {
1973
1949
  cookie?: never;
1974
1950
  };
1975
1951
  /**
1976
- * List Notes Endpoint
1977
- * @description List notes visible in the active workspace.
1952
+ * List Facts Endpoint
1953
+ * @description List facts visible in the active workspace.
1978
1954
  *
1979
1955
  * Newest first by default. Passing a date range (or ``dated_only``) turns this
1980
- * into the timeline: only dated notes, ordered by when they happened. Each
1956
+ * into the timeline: only dated facts, ordered by when they happened. Each
1981
1957
  * bound is read at its own precision and widened outward, so ``date_to=2019``
1982
1958
  * runs through 31 December rather than stopping on 1 January.
1983
1959
  */
1984
- get: operations['list_notes'];
1960
+ get: operations['list_facts'];
1985
1961
  put?: never;
1986
1962
  post?: never;
1987
1963
  delete?: never;
@@ -1990,7 +1966,7 @@ interface paths {
1990
1966
  patch?: never;
1991
1967
  trace?: never;
1992
1968
  };
1993
- '/v1/notes/search': {
1969
+ '/v1/facts/search': {
1994
1970
  parameters: {
1995
1971
  query?: never;
1996
1972
  header?: never;
@@ -2000,17 +1976,17 @@ interface paths {
2000
1976
  get?: never;
2001
1977
  put?: never;
2002
1978
  /**
2003
- * Search Notes Endpoint
2004
- * @description Hybrid recall over the workspace's notes.
1979
+ * Search Facts Endpoint
1980
+ * @description Hybrid recall over the workspace's facts.
2005
1981
  */
2006
- post: operations['search_notes'];
1982
+ post: operations['search_facts'];
2007
1983
  delete?: never;
2008
1984
  options?: never;
2009
1985
  head?: never;
2010
1986
  patch?: never;
2011
1987
  trace?: never;
2012
1988
  };
2013
- '/v1/notes/{note_ext_id}': {
1989
+ '/v1/facts/{fact_ext_id}': {
2014
1990
  parameters: {
2015
1991
  query?: never;
2016
1992
  header?: never;
@@ -2021,20 +1997,20 @@ interface paths {
2021
1997
  put?: never;
2022
1998
  post?: never;
2023
1999
  /**
2024
- * Delete Note Endpoint
2000
+ * Delete Fact Endpoint
2025
2001
  * @description Soft-delete a note. RLS governs permission; a blocked delete returns 403.
2026
2002
  */
2027
- delete: operations['delete_note'];
2003
+ delete: operations['delete_fact'];
2028
2004
  options?: never;
2029
2005
  head?: never;
2030
2006
  /**
2031
- * Update Note Endpoint
2007
+ * Update Fact Endpoint
2032
2008
  * @description Patch a note. A content edit replaces it (append + soft-delete); pin/share toggle in place.
2033
2009
  */
2034
- patch: operations['update_note'];
2010
+ patch: operations['update_fact'];
2035
2011
  trace?: never;
2036
2012
  };
2037
- '/v1/notes/{note_ext_id}/remind': {
2013
+ '/v1/facts/{fact_ext_id}/remind': {
2038
2014
  parameters: {
2039
2015
  query?: never;
2040
2016
  header?: never;
@@ -2044,20 +2020,20 @@ interface paths {
2044
2020
  get?: never;
2045
2021
  put?: never;
2046
2022
  /**
2047
- * Remind Note Endpoint
2023
+ * Remind Fact Endpoint
2048
2024
  * @description Set a one-off reminder for a dated note, and link it to the note.
2049
2025
  *
2050
2026
  * Give an explicit ``remind_at`` or a ``lead_minutes`` offset before the note's
2051
- * date; with neither it fires when the note's span starts. Only dated notes can
2027
+ * date; with neither it fires when the fact's span starts. Only dated facts can
2052
2028
  * be reminded about — there is nothing to fire relative to otherwise.
2053
2029
  *
2054
2030
  * The reminder is deliberately CONTENT-FREE: it names the note by external id
2055
- * and nothing else. ``tasks.name`` is plaintext while ``notes.content`` is
2031
+ * and nothing else. ``tasks.name`` is plaintext while ``facts.content`` is
2056
2032
  * encrypted under the workspace key, so copying the text into the reminder
2057
2033
  * would leak the very thing the note protects. The client resolves the text
2058
2034
  * from the note when it displays the notification.
2059
2035
  */
2060
- post: operations['remind_note'];
2036
+ post: operations['remind_fact'];
2061
2037
  delete?: never;
2062
2038
  options?: never;
2063
2039
  head?: never;
@@ -3543,14 +3519,14 @@ interface components {
3543
3519
  */
3544
3520
  PERSONAL_AGENT: boolean;
3545
3521
  /**
3546
- * Notes Enabled
3547
- * @description Workspace memory is readable AND writable by the agent: pinned core memories are injected into the prompt, and the agent gets the search_notes (recall) and create_note (write) tools.
3522
+ * Facts Enabled
3523
+ * @description Workspace facts are readable AND writable by the agent: pinned core facts are injected into the prompt, and the agent gets the search_facts (recall) and create_fact (write) tools.
3548
3524
  * @default false
3549
3525
  */
3550
- NOTES_ENABLED: boolean;
3526
+ FACTS_ENABLED: boolean;
3551
3527
  /**
3552
3528
  * Persist Learnings
3553
- * @description After each turn, the curator consolidates this turn's learnings into durable memories (dedupe + supersede). Independent of NOTES_ENABLED.
3529
+ * @description After each turn, the curator consolidates this turn's learnings into durable memories (dedupe + supersede). Independent of FACTS_ENABLED.
3554
3530
  * @default false
3555
3531
  */
3556
3532
  PERSIST_LEARNINGS: boolean;
@@ -3656,6 +3632,24 @@ interface components {
3656
3632
  * @default 10
3657
3633
  */
3658
3634
  AGENT_MAX_PARALLEL_TOOL_CALLS: number;
3635
+ /**
3636
+ * Agent Max Total Tool Calls
3637
+ * @description Run-wide cap on tool executions across the main agent AND all nested sub-agents (deep_research / run_skill / sub_agent) in a single user query. When reached, further tool calls are refused and the agent is forced to answer from what it has gathered; at 2x the run is hard-stopped. 0 = disabled.
3638
+ * @default 80
3639
+ */
3640
+ AGENT_MAX_TOTAL_TOOL_CALLS: number;
3641
+ /**
3642
+ * Agent Max Run Tokens
3643
+ * @description Run-wide cap on total tokens (input+output+reasoning, provider-reported) across every LLM call in a single user query — agent iterations, nested sub-agents, and helper calls (evaluator, reranker, goal judge). When reached the agent is forced to answer from what it has gathered; at 2x the run is hard-stopped. Best-effort metering — the exact AGENT_MAX_TOTAL_TOOL_CALLS meter backs it up. 0 = disabled.
3644
+ * @default 1500000
3645
+ */
3646
+ AGENT_MAX_RUN_TOKENS: number;
3647
+ /**
3648
+ * Agent Max Subagent Spawns
3649
+ * @description Run-wide cap on nested sub-agent spawns (deep_research / run_skill / sub_agent) in a single user query. Past the cap, spawning tools are refused while direct tools keep working until the tool-call cap. 0 = no spawns.
3650
+ * @default 4
3651
+ */
3652
+ AGENT_MAX_SUBAGENT_SPAWNS: number;
3659
3653
  /**
3660
3654
  * Agent History Char Threshold
3661
3655
  * @description Char threshold for conversation history injected into the agent context. Below: verbatim user/assistant pairs. Above: summarized by SummariseLLM.
@@ -3674,14 +3668,17 @@ interface components {
3674
3668
  * DOCUMENT INDEX:
3675
3669
  * The "Workspace Documents" table in your system prompt lists every document with its Id, Title, Date, and Pages. The Subject field is a brief navigation label only — it does not contain enough information to answer questions about a document's content. Use this table directly when the user asks to list, catalogue, or tabulate documents — do NOT call any tools for that. Only use tools when you need to read or search document content.
3676
3670
  *
3677
- * DOCUMENT STRATEGY:
3678
- * - For listing/cataloguing documents: use the document index already in your prompt — no tool calls needed.
3679
- * - For overview/summary requests: use get_table_of_contents first, then read key sections with read_document.
3680
- * - For specific questions: use search_inside_documents to find relevant sections, then read those sections with read_document.
3681
- * - For translation, deep analysis, or detailed summaries of a single document: use read_document with no ranges to load the complete text.
3682
- * - For extracting structured findings from passages: use read_document with digest=true or search_inside_documents with digest=true.
3683
- * - For open-ended investigative queries ("find interesting things", "what's notable", "what stands out", "explore X", "what should I know about", "any findings", "anything unusual", "key insights"): ALWAYS call search_inside_documents with multiple diverse queries covering different aspects of the documents before answering. The document index is never sufficient for investigative answers — you must retrieve actual content.
3684
- * - Never search for meta-queries like "summary", "overview", or "all documents" — search for the actual subject matter.
3671
+ * READING TOOL RESULTS:
3672
+ * Every retrieval result opens with a CAPTION line naming the call that produced it, what it contains, and what it does not (for example "FULL CONTENT … complete verbatim text, all 10 pages" or "DIGEST … verbatim page text is NOT part of this result"). The caption also tells you when you already retrieved that material earlier in this turn. Read it before choosing your next call — it is the record of what you already hold.
3673
+ *
3674
+ * DOCUMENT STRATEGY, in order:
3675
+ * 1. Listing or cataloguing documents: use the document index already in your prompt — no tool calls needed.
3676
+ * 2. Getting oriented in a document you have not read: call get_table_of_contents FIRST. It is cheap, returns the heading structure with page references, and tells you which pages actually matter. Do this before any read_document on a document longer than a few pages, rather than reading blind and then discovering the structure.
3677
+ * 3. Specific questions across several documents: search_inside_documents to locate the passages, then read_document on the pages it points to.
3678
+ * 4. Reading a document: read_document with page ranges for the sections you need, or with no ranges to load the complete text. A read with no ranges returns the WHOLE document — once you have it there is nothing further to retrieve from that document. Do not read it again, do not re-read ranges out of it, and do not ask for its outline afterwards.
3679
+ * 5. Prefer digest=true from the outset. It is the normal retrieval mode: findings with citations, compact context. Decide against it only when the task needs the exact words — translation, quotation, close reading of style or drafting. Choosing digest=false IS that decision, and it is final for that document: digest is a way of retrieving, not a way of processing text you already hold, so once you have loaded a document in full a digest of it is refused. Reason over the text you have.
3680
+ * 6. Open-ended investigative queries ("find interesting things", "what's notable", "what stands out", "explore X", "what should I know about", "any findings", "anything unusual", "key insights"): ALWAYS call search_inside_documents with multiple diverse queries covering different aspects of the documents before answering. The document index is never sufficient for investigative answers — you must retrieve actual content.
3681
+ * 7. Never search for meta-queries like "summary", "overview", or "all documents" — search for the actual subject matter.
3685
3682
  *
3686
3683
  * FORMATTING:
3687
3684
  * - Start your answer directly with the content — never open with a description of what you searched for or read (e.g. never write "Searching for X", "Reading Y", "I found Z documents" as the first lines of an answer).
@@ -3692,14 +3689,14 @@ interface components {
3692
3689
  * - Bold text for critical conclusions or decision points
3693
3690
  *
3694
3691
  * TOOL CALLING:
3695
- * - Your job is to gather context by calling tools, then answer only once every reasonable tool call has been made. Do not give a final answer while there is still relevant context you could retrieve.
3692
+ * - Your job is to gather the context the question needs, then answer. Do not give a final answer while there is relevant context you have not yet retrieved — but material already in your context counts as retrieved, and fetching it a second time is not progress.
3696
3693
  * - Always invoke tools using the tool-calling mechanism. NEVER write text that describes or simulates a tool call (e.g. never write "Searching for X...", "Reading document Y...", "Calling search_inside_documents" as prose — actually call the tool).
3697
3694
  * - If you intend to search or read, issue the tool call immediately. Do not narrate your intent first.
3698
3695
  *
3699
3696
  * EFFICIENCY:
3700
3697
  * 1. Before each step, review the results of prior steps. Adapt your approach based on what you learned — if a call was rejected or returned poor results, adjust your strategy.
3701
3698
  * 2. Call multiple tools in parallel when a query has several aspects.
3702
- * 3. NEVER repeat a tool call with the same arguments.
3699
+ * 3. NEVER repeat a tool call with the same arguments, and never re-retrieve material you already hold — the caption on each result tells you what that is.
3703
3700
  * 4. Use targeted queries and narrow page ranges per retrieval call.
3704
3701
  * 5. Stop when you have sufficient evidence — do not over-research.
3705
3702
  */
@@ -3786,14 +3783,14 @@ interface components {
3786
3783
  */
3787
3784
  CONVERSATION_SEARCH_ENABLED: boolean;
3788
3785
  /**
3789
- * Notes Enabled
3790
- * @description Workspace memory is readable AND writable by the agent: pinned core memories are injected into the prompt, and the agent gets the search_notes (recall) and create_note (write) tools.
3786
+ * Facts Enabled
3787
+ * @description Workspace facts are readable AND writable by the agent: pinned core facts are injected into the prompt, and the agent gets the search_facts (recall) and create_fact (write) tools.
3791
3788
  * @default false
3792
3789
  */
3793
- NOTES_ENABLED: boolean;
3790
+ FACTS_ENABLED: boolean;
3794
3791
  /**
3795
3792
  * Persist Learnings
3796
- * @description After each turn, the curator consolidates this turn's learnings into durable memories (dedupe + supersede). Independent of NOTES_ENABLED.
3793
+ * @description After each turn, the curator consolidates this turn's learnings into durable memories (dedupe + supersede). Independent of FACTS_ENABLED.
3797
3794
  * @default false
3798
3795
  */
3799
3796
  PERSIST_LEARNINGS: boolean;
@@ -3875,7 +3872,7 @@ interface components {
3875
3872
  * "VISION_ENABLED": false,
3876
3873
  * "CONVERSATION_SEARCH_ENABLED": false,
3877
3874
  * "PERSONAL_AGENT": false,
3878
- * "NOTES_ENABLED": false,
3875
+ * "FACTS_ENABLED": false,
3879
3876
  * "PERSIST_LEARNINGS": false,
3880
3877
  * "SKILLS_ENABLED": false,
3881
3878
  * "SKILL_CREATION": false,
@@ -3893,8 +3890,11 @@ interface components {
3893
3890
  * "AGENT_MAX_ITERATIONS": 20,
3894
3891
  * "AGENT_TURN_CREDIT_BUDGET": 50,
3895
3892
  * "AGENT_MAX_PARALLEL_TOOL_CALLS": 10,
3893
+ * "AGENT_MAX_TOTAL_TOOL_CALLS": 80,
3894
+ * "AGENT_MAX_RUN_TOKENS": 1500000,
3895
+ * "AGENT_MAX_SUBAGENT_SPAWNS": 4,
3896
3896
  * "AGENT_HISTORY_CHAR_THRESHOLD": 8000,
3897
- * "AGENT_SYSTEM_PROMPT": "Answer any question the user asks. You have access to workspace documents — use them when relevant. When no documents are relevant, answer from your own knowledge. Always provide a helpful answer.\n\nIMPORTANT: Never say \"I don't have information in the available documents\" or refuse to answer. If documents are not relevant, just answer the question directly from your own knowledge. If the user asks about a specific workspace document, call read_document or get_table_of_contents — never answer from memory.\n\nWhen using documents, retrieve actual document content — do not rely on metadata or headings alone. Cross-check information across sources. Not all assertions in sources are factual — some are arguments by a party. Attribute claims to their source where parties disagree.\n\nDOCUMENT INDEX:\nThe \"Workspace Documents\" table in your system prompt lists every document with its Id, Title, Date, and Pages. The Subject field is a brief navigation label only — it does not contain enough information to answer questions about a document's content. Use this table directly when the user asks to list, catalogue, or tabulate documents — do NOT call any tools for that. Only use tools when you need to read or search document content.\n\nDOCUMENT STRATEGY:\n- For listing/cataloguing documents: use the document index already in your prompt — no tool calls needed.\n- For overview/summary requests: use get_table_of_contents first, then read key sections with read_document.\n- For specific questions: use search_inside_documents to find relevant sections, then read those sections with read_document.\n- For translation, deep analysis, or detailed summaries of a single document: use read_document with no ranges to load the complete text.\n- For extracting structured findings from passages: use read_document with digest=true or search_inside_documents with digest=true.\n- For open-ended investigative queries (\"find interesting things\", \"what's notable\", \"what stands out\", \"explore X\", \"what should I know about\", \"any findings\", \"anything unusual\", \"key insights\"): ALWAYS call search_inside_documents with multiple diverse queries covering different aspects of the documents before answering. The document index is never sufficient for investigative answers — you must retrieve actual content.\n- Never search for meta-queries like \"summary\", \"overview\", or \"all documents\" — search for the actual subject matter.\n\nFORMATTING:\n- Start your answer directly with the content — never open with a description of what you searched for or read (e.g. never write \"Searching for X\", \"Reading Y\", \"I found Z documents\" as the first lines of an answer).\n- Use markdown: headings, bold, bullet points, numbered lists\n- Main conclusion first, followed by supporting points\n- Bullet points for lists of discrete items\n- Numbering for sequential steps or prioritized items\n- Bold text for critical conclusions or decision points\n\nTOOL CALLING:\n- Your job is to gather context by calling tools, then answer only once every reasonable tool call has been made. Do not give a final answer while there is still relevant context you could retrieve.\n- Always invoke tools using the tool-calling mechanism. NEVER write text that describes or simulates a tool call (e.g. never write \"Searching for X...\", \"Reading document Y...\", \"Calling search_inside_documents\" as prose — actually call the tool).\n- If you intend to search or read, issue the tool call immediately. Do not narrate your intent first.\n\nEFFICIENCY:\n1. Before each step, review the results of prior steps. Adapt your approach based on what you learned — if a call was rejected or returned poor results, adjust your strategy.\n2. Call multiple tools in parallel when a query has several aspects.\n3. NEVER repeat a tool call with the same arguments.\n4. Use targeted queries and narrow page ranges per retrieval call.\n5. Stop when you have sufficient evidence — do not over-research."
3897
+ * "AGENT_SYSTEM_PROMPT": "Answer any question the user asks. You have access to workspace documents — use them when relevant. When no documents are relevant, answer from your own knowledge. Always provide a helpful answer.\n\nIMPORTANT: Never say \"I don't have information in the available documents\" or refuse to answer. If documents are not relevant, just answer the question directly from your own knowledge. If the user asks about a specific workspace document, call read_document or get_table_of_contents — never answer from memory.\n\nWhen using documents, retrieve actual document content — do not rely on metadata or headings alone. Cross-check information across sources. Not all assertions in sources are factual — some are arguments by a party. Attribute claims to their source where parties disagree.\n\nDOCUMENT INDEX:\nThe \"Workspace Documents\" table in your system prompt lists every document with its Id, Title, Date, and Pages. The Subject field is a brief navigation label only — it does not contain enough information to answer questions about a document's content. Use this table directly when the user asks to list, catalogue, or tabulate documents — do NOT call any tools for that. Only use tools when you need to read or search document content.\n\nREADING TOOL RESULTS:\nEvery retrieval result opens with a CAPTION line naming the call that produced it, what it contains, and what it does not (for example \"FULL CONTENT … complete verbatim text, all 10 pages\" or \"DIGEST … verbatim page text is NOT part of this result\"). The caption also tells you when you already retrieved that material earlier in this turn. Read it before choosing your next call — it is the record of what you already hold.\n\nDOCUMENT STRATEGY, in order:\n1. Listing or cataloguing documents: use the document index already in your prompt — no tool calls needed.\n2. Getting oriented in a document you have not read: call get_table_of_contents FIRST. It is cheap, returns the heading structure with page references, and tells you which pages actually matter. Do this before any read_document on a document longer than a few pages, rather than reading blind and then discovering the structure.\n3. Specific questions across several documents: search_inside_documents to locate the passages, then read_document on the pages it points to.\n4. Reading a document: read_document with page ranges for the sections you need, or with no ranges to load the complete text. A read with no ranges returns the WHOLE document — once you have it there is nothing further to retrieve from that document. Do not read it again, do not re-read ranges out of it, and do not ask for its outline afterwards.\n5. Prefer digest=true from the outset. It is the normal retrieval mode: findings with citations, compact context. Decide against it only when the task needs the exact words — translation, quotation, close reading of style or drafting. Choosing digest=false IS that decision, and it is final for that document: digest is a way of retrieving, not a way of processing text you already hold, so once you have loaded a document in full a digest of it is refused. Reason over the text you have.\n6. Open-ended investigative queries (\"find interesting things\", \"what's notable\", \"what stands out\", \"explore X\", \"what should I know about\", \"any findings\", \"anything unusual\", \"key insights\"): ALWAYS call search_inside_documents with multiple diverse queries covering different aspects of the documents before answering. The document index is never sufficient for investigative answers — you must retrieve actual content.\n7. Never search for meta-queries like \"summary\", \"overview\", or \"all documents\" — search for the actual subject matter.\n\nFORMATTING:\n- Start your answer directly with the content — never open with a description of what you searched for or read (e.g. never write \"Searching for X\", \"Reading Y\", \"I found Z documents\" as the first lines of an answer).\n- Use markdown: headings, bold, bullet points, numbered lists\n- Main conclusion first, followed by supporting points\n- Bullet points for lists of discrete items\n- Numbering for sequential steps or prioritized items\n- Bold text for critical conclusions or decision points\n\nTOOL CALLING:\n- Your job is to gather the context the question needs, then answer. Do not give a final answer while there is relevant context you have not yet retrieved — but material already in your context counts as retrieved, and fetching it a second time is not progress.\n- Always invoke tools using the tool-calling mechanism. NEVER write text that describes or simulates a tool call (e.g. never write \"Searching for X...\", \"Reading document Y...\", \"Calling search_inside_documents\" as prose — actually call the tool).\n- If you intend to search or read, issue the tool call immediately. Do not narrate your intent first.\n\nEFFICIENCY:\n1. Before each step, review the results of prior steps. Adapt your approach based on what you learned — if a call was rejected or returned poor results, adjust your strategy.\n2. Call multiple tools in parallel when a query has several aspects.\n3. NEVER repeat a tool call with the same arguments, and never re-retrieve material you already hold — the caption on each result tells you what that is.\n4. Use targeted queries and narrow page ranges per retrieval call.\n5. Stop when you have sufficient evidence — do not over-research."
3898
3898
  * }
3899
3899
  */
3900
3900
  Agents: components['schemas']['AgentsConfig'];
@@ -4013,7 +4013,7 @@ interface components {
4013
4013
  * }
4014
4014
  * },
4015
4015
  * {
4016
- * "instruction": "What is the main subject or purpose of this document? Provide a brief 1-2 sentence description.",
4016
+ * "instruction": "What is the main subject or purpose of this document? Open with one concise phrase naming what it is and what it is about, in the form 'Email chain re the site access dispute between Acme and Byrne'. Then add one or two sentences of detail.",
4017
4017
  * "name": "doc_subject",
4018
4018
  * "tag_type": {
4019
4019
  * "options": [],
@@ -4250,7 +4250,7 @@ interface components {
4250
4250
  type: 'arbi.error';
4251
4251
  /**
4252
4252
  * Code
4253
- * @description Error code, e.g. 'QUOTA_EXCEEDED'
4253
+ * @description Error code, e.g. 'QUOTA_EXCEEDED' (billing — opens upgrade modal) or 'RUN_BUDGET_EXCEEDED' (per-run safety cap — generic error display).
4254
4254
  */
4255
4255
  code: string;
4256
4256
  /**
@@ -4286,6 +4286,11 @@ interface components {
4286
4286
  * field) while ours reads it. The item itself stays byte-for-byte standard.
4287
4287
  */
4288
4288
  ArbiItemMeta: {
4289
+ /**
4290
+ * Step
4291
+ * @description Which lifecycle moment this item IS — stated, not inferred. A Responses item type (message / function_call / reasoning) is too coarse for the trace: three different reasoning items are the goal, the plan and a goal check, and the answer is a `message` item that is nonetheless a trace row. Clients previously sniffed `label` prefixes to tell them apart, which broke the moment a label was reworded or localised. Absent on plain tool calls (they carry `detail`) and on narration messages (which are body text, not a step).
4292
+ */
4293
+ step?: ('goal' | 'skill' | 'interjection' | 'planning' | 'tool_progress' | 'goal_progress' | 'answering' | 'evaluation') | null;
4289
4294
  /**
4290
4295
  * Label
4291
4296
  * @description Human display label. Backend-owned.
@@ -4645,11 +4650,6 @@ interface components {
4645
4650
  } & {
4646
4651
  [key: string]: unknown;
4647
4652
  };
4648
- /** ChronologyRequest */
4649
- ChronologyRequest: {
4650
- /** Doc Ext Ids */
4651
- doc_ext_ids: string[];
4652
- };
4653
4653
  /** Chunk */
4654
4654
  Chunk: {
4655
4655
  metadata: components['schemas']['ChunkMetadata'];
@@ -5349,7 +5349,15 @@ interface components {
5349
5349
  /** Title */
5350
5350
  title: string;
5351
5351
  };
5352
- /** CopyDocumentResult */
5352
+ /**
5353
+ * CopyDocumentResult
5354
+ * @description Outcome of copying ONE selected item.
5355
+ *
5356
+ * Named for documents because that is all ``/workspace/copy`` used to move;
5357
+ * the field names are kept so existing clients keep parsing the response.
5358
+ * ``source_doc_ext_id`` / ``new_doc_ext_id`` carry the source and new external
5359
+ * ID of whatever ``kind`` the item is.
5360
+ */
5353
5361
  CopyDocumentResult: {
5354
5362
  /** Source Doc Ext Id */
5355
5363
  source_doc_ext_id: string;
@@ -5359,7 +5367,17 @@ interface components {
5359
5367
  new_doc_ext_id?: string | null;
5360
5368
  /** Error */
5361
5369
  error?: string | null;
5370
+ /** @default document */
5371
+ kind: components['schemas']['CopyItemKind'];
5372
+ /** Warning */
5373
+ warning?: string | null;
5362
5374
  };
5375
+ /**
5376
+ * CopyItemKind
5377
+ * @description Which entity a copy result refers to — derived from the ext-id prefix.
5378
+ * @enum {string}
5379
+ */
5380
+ CopyItemKind: 'document' | 'tag' | 'doctag' | 'fact' | 'chat' | 'unknown';
5363
5381
  /** CopyRequest */
5364
5382
  CopyRequest: {
5365
5383
  /** Target Workspace Ext Id */
@@ -5371,7 +5389,7 @@ interface components {
5371
5389
  target_workspace_key: string;
5372
5390
  /**
5373
5391
  * Items
5374
- * @description List of document external IDs to copy (e.g., ['doc-a1b2c3d4', 'doc-e5f6g7h8'])
5392
+ * @description External IDs to copy. Heterogeneous: documents (doc-), tags (tag-), doctags (dtj-), facts (fct-) and chats (con-) may be mixed in one call — the server dispatches on the prefix and copies them in dependency order (tags → documents → doctags/facts → chats). Selection is exact: nothing is copied that was not listed.
5375
5393
  */
5376
5394
  items: string[];
5377
5395
  };
@@ -5384,6 +5402,18 @@ interface components {
5384
5402
  * @default 0
5385
5403
  */
5386
5404
  documents_copied: number;
5405
+ /**
5406
+ * Items Copied
5407
+ * @default 0
5408
+ */
5409
+ items_copied: number;
5410
+ /**
5411
+ * Copied By Kind
5412
+ * @default {}
5413
+ */
5414
+ copied_by_kind: {
5415
+ [key: string]: number;
5416
+ };
5387
5417
  /**
5388
5418
  * Results
5389
5419
  * @default []
@@ -5506,10 +5536,10 @@ interface components {
5506
5536
  citations?: components['schemas']['CitationSources'] | null;
5507
5537
  };
5508
5538
  /**
5509
- * CreateNoteRequest
5510
- * @description Create a note in the active workspace.
5539
+ * CreateFactRequest
5540
+ * @description Create a fact in the active workspace.
5511
5541
  */
5512
- CreateNoteRequest: {
5542
+ CreateFactRequest: {
5513
5543
  /** Text */
5514
5544
  text: string;
5515
5545
  /**
@@ -5881,6 +5911,8 @@ interface components {
5881
5911
  /** Note */
5882
5912
  note?: string | null;
5883
5913
  citations?: components['schemas']['CitationSources'] | null;
5914
+ /** External Id */
5915
+ external_id: string;
5884
5916
  /** Doc Ext Id */
5885
5917
  doc_ext_id: string;
5886
5918
  /** Tag Ext Id */
@@ -6292,17 +6324,6 @@ interface components {
6292
6324
  /** Message */
6293
6325
  message: string;
6294
6326
  };
6295
- /**
6296
- * EvaluationDetail
6297
- * @description Detail for an evaluation learning entry.
6298
- */
6299
- EvaluationDetail: {
6300
- /**
6301
- * Statement
6302
- * @description Citation/finding statement
6303
- */
6304
- statement: string;
6305
- };
6306
6327
  /** EvaluatorLLMConfig */
6307
6328
  EvaluatorLLMConfig: {
6308
6329
  /**
@@ -6367,6 +6388,113 @@ interface components {
6367
6388
  */
6368
6389
  EVAL_BATCH_TIMEOUT_S: number;
6369
6390
  };
6391
+ /** FactDeleteResponse */
6392
+ FactDeleteResponse: {
6393
+ /**
6394
+ * Detail
6395
+ * @default Note deleted successfully
6396
+ */
6397
+ detail: string;
6398
+ };
6399
+ /** FactResponse */
6400
+ FactResponse: {
6401
+ /** Text */
6402
+ text: string;
6403
+ citations?: components['schemas']['CitationSources'] | null;
6404
+ /** External Id */
6405
+ external_id: string;
6406
+ /** Workspace Ext Id */
6407
+ workspace_ext_id: string;
6408
+ /** Pinned */
6409
+ pinned: boolean;
6410
+ /** Shared */
6411
+ shared: boolean;
6412
+ /** Confirmed */
6413
+ confirmed: boolean;
6414
+ /** Date Start */
6415
+ date_start?: string | null;
6416
+ /** Date End */
6417
+ date_end?: string | null;
6418
+ /** Timezone */
6419
+ timezone?: string | null;
6420
+ /**
6421
+ * Reminder Task Ext Ids
6422
+ * @default []
6423
+ */
6424
+ reminder_task_ext_ids: string[];
6425
+ /**
6426
+ * Tags
6427
+ * @default []
6428
+ */
6429
+ tags: components['schemas']['FactTagResponse'][];
6430
+ /** Created By Ext Id */
6431
+ created_by_ext_id: string;
6432
+ /**
6433
+ * Created At
6434
+ * Format: date-time
6435
+ */
6436
+ created_at: string;
6437
+ /**
6438
+ * Updated At
6439
+ * Format: date-time
6440
+ */
6441
+ updated_at: string;
6442
+ };
6443
+ /** FactSearchHit */
6444
+ FactSearchHit: {
6445
+ /** External Id */
6446
+ external_id: string;
6447
+ /** Text */
6448
+ text: string;
6449
+ /** Pinned */
6450
+ pinned: boolean;
6451
+ /** Confirmed */
6452
+ confirmed: boolean;
6453
+ /** Score */
6454
+ score: number;
6455
+ };
6456
+ /**
6457
+ * FactSearchRequest
6458
+ * @description Hybrid recall over the workspace's facts.
6459
+ */
6460
+ FactSearchRequest: {
6461
+ /**
6462
+ * Query
6463
+ * @description Search query text
6464
+ */
6465
+ query: string;
6466
+ /**
6467
+ * Search Mode
6468
+ * @description Retrieval mode
6469
+ * @default hybrid
6470
+ * @enum {string}
6471
+ */
6472
+ search_mode: 'semantic' | 'keyword' | 'hybrid';
6473
+ /**
6474
+ * Limit
6475
+ * @description Maximum number of notes to return
6476
+ * @default 10
6477
+ */
6478
+ limit: number;
6479
+ };
6480
+ /** FactSearchResponse */
6481
+ FactSearchResponse: {
6482
+ /**
6483
+ * Facts
6484
+ * @default []
6485
+ */
6486
+ facts: components['schemas']['FactSearchHit'][];
6487
+ };
6488
+ /**
6489
+ * FactTagResponse
6490
+ * @description A tag attached to a note — the tag's identity, decrypted name included.
6491
+ */
6492
+ FactTagResponse: {
6493
+ /** Tag Ext Id */
6494
+ tag_ext_id: string;
6495
+ /** Name */
6496
+ name: string;
6497
+ };
6370
6498
  /**
6371
6499
  * FileDeleteResponse
6372
6500
  * @description OpenAI-compatible file deletion response.
@@ -7006,7 +7134,7 @@ interface components {
7006
7134
  * MemoryLLMConfig
7007
7135
  * @description Configuration for MemoryLLM — the post-turn curator.
7008
7136
  *
7009
- * Judges which of a turn's learnings are worth keeping as durable Notes and
7137
+ * Judges which of a turn's learnings are worth keeping as durable Facts and
7010
7138
  * reconciles them against existing ones (dedupe + supersede). It never
7011
7139
  * re-authors text: each kept learning is stored verbatim.
7012
7140
  *
@@ -7507,113 +7635,6 @@ interface components {
7507
7635
  DoctagLLM: components['schemas']['DoctagLLMUserConfig'];
7508
7636
  Parser: components['schemas']['ParserUserConfig'];
7509
7637
  };
7510
- /** NoteDeleteResponse */
7511
- NoteDeleteResponse: {
7512
- /**
7513
- * Detail
7514
- * @default Note deleted successfully
7515
- */
7516
- detail: string;
7517
- };
7518
- /** NoteResponse */
7519
- NoteResponse: {
7520
- /** Text */
7521
- text: string;
7522
- citations?: components['schemas']['CitationSources'] | null;
7523
- /** External Id */
7524
- external_id: string;
7525
- /** Workspace Ext Id */
7526
- workspace_ext_id: string;
7527
- /** Pinned */
7528
- pinned: boolean;
7529
- /** Shared */
7530
- shared: boolean;
7531
- /** Confirmed */
7532
- confirmed: boolean;
7533
- /** Date Start */
7534
- date_start?: string | null;
7535
- /** Date End */
7536
- date_end?: string | null;
7537
- /** Timezone */
7538
- timezone?: string | null;
7539
- /**
7540
- * Reminder Task Ext Ids
7541
- * @default []
7542
- */
7543
- reminder_task_ext_ids: string[];
7544
- /**
7545
- * Tags
7546
- * @default []
7547
- */
7548
- tags: components['schemas']['NoteTagResponse'][];
7549
- /** Created By Ext Id */
7550
- created_by_ext_id: string;
7551
- /**
7552
- * Created At
7553
- * Format: date-time
7554
- */
7555
- created_at: string;
7556
- /**
7557
- * Updated At
7558
- * Format: date-time
7559
- */
7560
- updated_at: string;
7561
- };
7562
- /** NoteSearchHit */
7563
- NoteSearchHit: {
7564
- /** External Id */
7565
- external_id: string;
7566
- /** Text */
7567
- text: string;
7568
- /** Pinned */
7569
- pinned: boolean;
7570
- /** Confirmed */
7571
- confirmed: boolean;
7572
- /** Score */
7573
- score: number;
7574
- };
7575
- /**
7576
- * NoteSearchRequest
7577
- * @description Hybrid recall over the workspace's notes.
7578
- */
7579
- NoteSearchRequest: {
7580
- /**
7581
- * Query
7582
- * @description Search query text
7583
- */
7584
- query: string;
7585
- /**
7586
- * Search Mode
7587
- * @description Retrieval mode
7588
- * @default hybrid
7589
- * @enum {string}
7590
- */
7591
- search_mode: 'semantic' | 'keyword' | 'hybrid';
7592
- /**
7593
- * Limit
7594
- * @description Maximum number of notes to return
7595
- * @default 10
7596
- */
7597
- limit: number;
7598
- };
7599
- /** NoteSearchResponse */
7600
- NoteSearchResponse: {
7601
- /**
7602
- * Notes
7603
- * @default []
7604
- */
7605
- notes: components['schemas']['NoteSearchHit'][];
7606
- };
7607
- /**
7608
- * NoteTagResponse
7609
- * @description A tag attached to a note — the tag's identity, decrypted name included.
7610
- */
7611
- NoteTagResponse: {
7612
- /** Tag Ext Id */
7613
- tag_ext_id: string;
7614
- /** Name */
7615
- name: string;
7616
- };
7617
7638
  /**
7618
7639
  * NotificationResponse
7619
7640
  * @description Notification response model for API and WebSocket.
@@ -8460,7 +8481,7 @@ interface components {
8460
8481
  picture?: string | null;
8461
8482
  };
8462
8483
  /**
8463
- * RemindNoteRequest
8484
+ * RemindFactRequest
8464
8485
  * @description Set a one-off reminder for a dated note.
8465
8486
  *
8466
8487
  * Give either an explicit ``remind_at`` or a ``lead_minutes`` offset before
@@ -8470,7 +8491,7 @@ interface components {
8470
8491
  * synthesises an inline ``Body_*`` schema for those, which is not strict, and
8471
8492
  * the client generator rejects request bodies that accept unknown fields.
8472
8493
  */
8473
- RemindNoteRequest: {
8494
+ RemindFactRequest: {
8474
8495
  /** Remind At */
8475
8496
  remind_at?: string | null;
8476
8497
  /** Lead Minutes */
@@ -9491,8 +9512,6 @@ interface components {
9491
9512
  detail_run_code?: components['schemas']['RunCodeDetail'] | null;
9492
9513
  detail_create_artifact?: components['schemas']['CreateArtifactDetail'] | null;
9493
9514
  detail_ask_user?: components['schemas']['AskUserDetail'] | null;
9494
- detail_evaluation?: components['schemas']['EvaluationDetail'] | null;
9495
- detail_tool_progress?: components['schemas']['ToolProgressDetail'] | null;
9496
9515
  detail_goal_progress?: components['schemas']['GoalProgressDetail'] | null;
9497
9516
  };
9498
9517
  /**
@@ -10493,22 +10512,6 @@ interface components {
10493
10512
  /** @description Aggregate usage across all LLM calls in the request */
10494
10513
  all_llm_calls?: components['schemas']['AllLlmCallsAggregate'] | null;
10495
10514
  };
10496
- /**
10497
- * ToolProgressDetail
10498
- * @description Detail for a tool progress update.
10499
- */
10500
- ToolProgressDetail: {
10501
- /**
10502
- * Tool
10503
- * @description Tool name
10504
- */
10505
- tool: string;
10506
- /**
10507
- * Message
10508
- * @description Progress message
10509
- */
10510
- message: string;
10511
- };
10512
10515
  /**
10513
10516
  * TraceTool
10514
10517
  * @description Execution trace tool that captures the full execution history of a request.
@@ -10574,12 +10577,12 @@ interface components {
10574
10577
  documents: components['schemas']['DocUpdateRequest'][];
10575
10578
  };
10576
10579
  /**
10577
- * UpdateNoteRequest
10578
- * @description Patch a note. An edit to ``text`` soft-deletes the old row and
10580
+ * UpdateFactRequest
10581
+ * @description Patch a fact. An edit to ``text`` soft-deletes the old row and
10579
10582
  * inserts a replacement (append + soft-delete lifecycle); ``pinned``/``shared``/
10580
10583
  * ``tag_ext_ids`` update in place.
10581
10584
  */
10582
- UpdateNoteRequest: {
10585
+ UpdateFactRequest: {
10583
10586
  /** Text */
10584
10587
  text?: string | null;
10585
10588
  /** Pinned */
@@ -11020,11 +11023,6 @@ interface components {
11020
11023
  * @default false
11021
11024
  */
11022
11025
  show_skills: boolean;
11023
- /**
11024
- * Show Chronology
11025
- * @default false
11026
- */
11027
- show_chronology: boolean;
11028
11026
  /**
11029
11027
  * Show Pa Mode
11030
11028
  * @default false
@@ -11148,8 +11146,6 @@ interface components {
11148
11146
  show_templates?: boolean | null;
11149
11147
  /** Show Skills */
11150
11148
  show_skills?: boolean | null;
11151
- /** Show Chronology */
11152
- show_chronology?: boolean | null;
11153
11149
  /** Show Pa Mode */
11154
11150
  show_pa_mode?: boolean | null;
11155
11151
  /** Show Conversation Search */
@@ -11358,23 +11354,6 @@ interface components {
11358
11354
  auth?: components['schemas']['AuthMessage'] | null;
11359
11355
  send_message?: components['schemas']['SendMessageRequest'] | null;
11360
11356
  };
11361
- /**
11362
- * WorkspaceChronologyOut
11363
- * @description API response for both POST /v1/document/chronology and GET /v1/workspace/chronology.
11364
- *
11365
- * For POST: all fields are always populated (generation just happened).
11366
- * For GET: all fields are null when no chronology has been generated yet.
11367
- */
11368
- WorkspaceChronologyOut: {
11369
- /** Events */
11370
- events?: {
11371
- [key: string]: unknown;
11372
- }[] | null;
11373
- /** Generated At */
11374
- generated_at?: string | null;
11375
- /** Doc Count */
11376
- doc_count?: number | null;
11377
- };
11378
11357
  /** WorkspaceCreateRequest */
11379
11358
  WorkspaceCreateRequest: {
11380
11359
  /** Name */
@@ -12935,37 +12914,6 @@ interface operations {
12935
12914
  };
12936
12915
  };
12937
12916
  };
12938
- get_workspace_chronology: {
12939
- parameters: {
12940
- query?: never;
12941
- header?: never;
12942
- path: {
12943
- workspace_ext_id: string;
12944
- };
12945
- cookie?: never;
12946
- };
12947
- requestBody?: never;
12948
- responses: {
12949
- /** @description Successful Response */
12950
- 200: {
12951
- headers: {
12952
- [name: string]: unknown;
12953
- };
12954
- content: {
12955
- 'application/json': components['schemas']['WorkspaceChronologyOut'];
12956
- };
12957
- };
12958
- /** @description Validation Error */
12959
- 422: {
12960
- headers: {
12961
- [name: string]: unknown;
12962
- };
12963
- content: {
12964
- 'application/json': components['schemas']['HTTPValidationError'];
12965
- };
12966
- };
12967
- };
12968
- };
12969
12917
  list_documents: {
12970
12918
  parameters: {
12971
12919
  query?: {
@@ -13575,39 +13523,6 @@ interface operations {
13575
13523
  };
13576
13524
  };
13577
13525
  };
13578
- generate_chronology: {
13579
- parameters: {
13580
- query?: never;
13581
- header?: never;
13582
- path?: never;
13583
- cookie?: never;
13584
- };
13585
- requestBody: {
13586
- content: {
13587
- 'application/json': components['schemas']['ChronologyRequest'];
13588
- };
13589
- };
13590
- responses: {
13591
- /** @description Successful Response */
13592
- 200: {
13593
- headers: {
13594
- [name: string]: unknown;
13595
- };
13596
- content: {
13597
- 'application/json': components['schemas']['WorkspaceChronologyOut'];
13598
- };
13599
- };
13600
- /** @description Validation Error */
13601
- 422: {
13602
- headers: {
13603
- [name: string]: unknown;
13604
- };
13605
- content: {
13606
- 'application/json': components['schemas']['HTTPValidationError'];
13607
- };
13608
- };
13609
- };
13610
- };
13611
13526
  list_conversations: {
13612
13527
  parameters: {
13613
13528
  query?: never;
@@ -14316,7 +14231,7 @@ interface operations {
14316
14231
  };
14317
14232
  };
14318
14233
  };
14319
- create_note: {
14234
+ create_fact: {
14320
14235
  parameters: {
14321
14236
  query?: never;
14322
14237
  header?: never;
@@ -14325,7 +14240,7 @@ interface operations {
14325
14240
  };
14326
14241
  requestBody: {
14327
14242
  content: {
14328
- 'application/json': components['schemas']['CreateNoteRequest'];
14243
+ 'application/json': components['schemas']['CreateFactRequest'];
14329
14244
  };
14330
14245
  };
14331
14246
  responses: {
@@ -14335,7 +14250,7 @@ interface operations {
14335
14250
  [name: string]: unknown;
14336
14251
  };
14337
14252
  content: {
14338
- 'application/json': components['schemas']['NoteResponse'];
14253
+ 'application/json': components['schemas']['FactResponse'];
14339
14254
  };
14340
14255
  };
14341
14256
  /** @description Validation Error */
@@ -14349,7 +14264,7 @@ interface operations {
14349
14264
  };
14350
14265
  };
14351
14266
  };
14352
- list_notes: {
14267
+ list_facts: {
14353
14268
  parameters: {
14354
14269
  query?: {
14355
14270
  pinned_only?: boolean;
@@ -14357,7 +14272,7 @@ interface operations {
14357
14272
  date_from?: string | null;
14358
14273
  /** @description Range end, any precision */
14359
14274
  date_to?: string | null;
14360
- /** @description Only notes that carry a date — the timeline view */
14275
+ /** @description Only facts that carry a date — the timeline view */
14361
14276
  dated_only?: boolean;
14362
14277
  };
14363
14278
  header?: never;
@@ -14372,7 +14287,7 @@ interface operations {
14372
14287
  [name: string]: unknown;
14373
14288
  };
14374
14289
  content: {
14375
- 'application/json': components['schemas']['NoteResponse'][];
14290
+ 'application/json': components['schemas']['FactResponse'][];
14376
14291
  };
14377
14292
  };
14378
14293
  /** @description Validation Error */
@@ -14386,7 +14301,7 @@ interface operations {
14386
14301
  };
14387
14302
  };
14388
14303
  };
14389
- search_notes: {
14304
+ search_facts: {
14390
14305
  parameters: {
14391
14306
  query?: never;
14392
14307
  header?: never;
@@ -14395,7 +14310,7 @@ interface operations {
14395
14310
  };
14396
14311
  requestBody: {
14397
14312
  content: {
14398
- 'application/json': components['schemas']['NoteSearchRequest'];
14313
+ 'application/json': components['schemas']['FactSearchRequest'];
14399
14314
  };
14400
14315
  };
14401
14316
  responses: {
@@ -14405,7 +14320,7 @@ interface operations {
14405
14320
  [name: string]: unknown;
14406
14321
  };
14407
14322
  content: {
14408
- 'application/json': components['schemas']['NoteSearchResponse'];
14323
+ 'application/json': components['schemas']['FactSearchResponse'];
14409
14324
  };
14410
14325
  };
14411
14326
  /** @description Validation Error */
@@ -14419,12 +14334,12 @@ interface operations {
14419
14334
  };
14420
14335
  };
14421
14336
  };
14422
- delete_note: {
14337
+ delete_fact: {
14423
14338
  parameters: {
14424
14339
  query?: never;
14425
14340
  header?: never;
14426
14341
  path: {
14427
- note_ext_id: string;
14342
+ fact_ext_id: string;
14428
14343
  };
14429
14344
  cookie?: never;
14430
14345
  };
@@ -14436,7 +14351,7 @@ interface operations {
14436
14351
  [name: string]: unknown;
14437
14352
  };
14438
14353
  content: {
14439
- 'application/json': components['schemas']['NoteDeleteResponse'];
14354
+ 'application/json': components['schemas']['FactDeleteResponse'];
14440
14355
  };
14441
14356
  };
14442
14357
  /** @description Validation Error */
@@ -14450,18 +14365,18 @@ interface operations {
14450
14365
  };
14451
14366
  };
14452
14367
  };
14453
- update_note: {
14368
+ update_fact: {
14454
14369
  parameters: {
14455
14370
  query?: never;
14456
14371
  header?: never;
14457
14372
  path: {
14458
- note_ext_id: string;
14373
+ fact_ext_id: string;
14459
14374
  };
14460
14375
  cookie?: never;
14461
14376
  };
14462
14377
  requestBody: {
14463
14378
  content: {
14464
- 'application/json': components['schemas']['UpdateNoteRequest'];
14379
+ 'application/json': components['schemas']['UpdateFactRequest'];
14465
14380
  };
14466
14381
  };
14467
14382
  responses: {
@@ -14471,7 +14386,7 @@ interface operations {
14471
14386
  [name: string]: unknown;
14472
14387
  };
14473
14388
  content: {
14474
- 'application/json': components['schemas']['NoteResponse'];
14389
+ 'application/json': components['schemas']['FactResponse'];
14475
14390
  };
14476
14391
  };
14477
14392
  /** @description Validation Error */
@@ -14485,18 +14400,18 @@ interface operations {
14485
14400
  };
14486
14401
  };
14487
14402
  };
14488
- remind_note: {
14403
+ remind_fact: {
14489
14404
  parameters: {
14490
14405
  query?: never;
14491
14406
  header?: never;
14492
14407
  path: {
14493
- note_ext_id: string;
14408
+ fact_ext_id: string;
14494
14409
  };
14495
14410
  cookie?: never;
14496
14411
  };
14497
14412
  requestBody?: {
14498
14413
  content: {
14499
- 'application/json': components['schemas']['RemindNoteRequest'];
14414
+ 'application/json': components['schemas']['RemindFactRequest'];
14500
14415
  };
14501
14416
  };
14502
14417
  responses: {
@@ -14506,7 +14421,7 @@ interface operations {
14506
14421
  [name: string]: unknown;
14507
14422
  };
14508
14423
  content: {
14509
- 'application/json': components['schemas']['NoteResponse'];
14424
+ 'application/json': components['schemas']['FactResponse'];
14510
14425
  };
14511
14426
  };
14512
14427
  /** @description Validation Error */