@marrowid/sdk
Advanced tools
@@ -16,3 +16,3 @@ import type { IngestJobListResponse, IngestJobResponse, IngestPlanResponse, QueryResult } from "./types.js"; | ||
| readonly ingestJobFailure: readonly ["code", "category", "stage", "message", "requestId", "retryable", "failedAt", "metric", "limit", "estimate", "unit", "limitWindow", "creditsRemaining", "resetAt", "nextAction"]; | ||
| readonly ingestPlan: readonly ["dryRun", "status", "planId", "expiresAt", "consumed", "estimatedCredits", "fileType", "source", "records", "sourcePreviews", "review", "warnings", "nextAction"]; | ||
| readonly ingestPlan: readonly ["dryRun", "status", "planId", "expiresAt", "consumed", "estimatedCredits", "committable", "commitRequires", "fileType", "source", "records", "sourcePreviews", "review", "warnings", "nextAction"]; | ||
| readonly ingestSource: readonly ["kind", "path", "bytes", "pages", "lines", "url", "title", "contentType", "datedAt"]; | ||
@@ -19,0 +19,0 @@ readonly ingestSourcePreview: readonly ["title", "wordCount", "textPreview"]; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"projection.d.ts","sources":["marrow-sdk:///src/projection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,EAElB,WAAW,EACZ,MAAM,YAAY,CAAC;AAQpB,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDN,CAAC;AAmGX,eAAO,MAAM,mBAAmB,EAE1B,QAAQ,CAAC,MAAM,CAAC,MAAM,OAAO,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;AAsJnE,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,OAAO,UAAU,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA2B/F;AAiED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAa9D;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,kBAAkB,GAAG,iBAAiB,CAiB9F;AAID,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,iBAAiB,CAc1E;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,qBAAqB,CAS1E;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAG9E;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAMlE"} | ||
| {"version":3,"file":"projection.d.ts","sources":["marrow-sdk:///src/projection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,EAElB,WAAW,EACZ,MAAM,YAAY,CAAC;AAQpB,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDN,CAAC;AAoGX,eAAO,MAAM,mBAAmB,EAE1B,QAAQ,CAAC,MAAM,CAAC,MAAM,OAAO,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;AAsJnE,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,OAAO,UAAU,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA2B/F;AAiED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAa9D;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,kBAAkB,GAAG,iBAAiB,CAiB9F;AAID,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,iBAAiB,CAc1E;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,qBAAqB,CAS1E;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAG9E;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAMlE"} |
@@ -16,3 +16,3 @@ import { MarrowResponseError } from "./errors.js"; | ||
| ingestJobFailure: ["code", "category", "stage", "message", "requestId", "retryable", "failedAt", "metric", "limit", "estimate", "unit", "limitWindow", "creditsRemaining", "resetAt", "nextAction"], | ||
| ingestPlan: ["dryRun", "status", "planId", "expiresAt", "consumed", "estimatedCredits", "fileType", "source", "records", "sourcePreviews", "review", "warnings", "nextAction"], | ||
| ingestPlan: ["dryRun", "status", "planId", "expiresAt", "consumed", "estimatedCredits", "committable", "commitRequires", "fileType", "source", "records", "sourcePreviews", "review", "warnings", "nextAction"], | ||
| ingestSource: ["kind", "path", "bytes", "pages", "lines", "url", "title", "contentType", "datedAt"], | ||
@@ -91,3 +91,4 @@ ingestSourcePreview: ["title", "wordCount", "textPreview"], | ||
| { key: "dryRun" }, { key: "status" }, { key: "planId" }, { key: "expiresAt" }, | ||
| { key: "consumed" }, { key: "estimatedCredits" }, { key: "fileType" }, { key: "source", nested: "ingestSource" }, | ||
| { key: "consumed" }, { key: "estimatedCredits" }, { key: "committable" }, { key: "commitRequires" }, | ||
| { key: "fileType" }, { key: "source", nested: "ingestSource" }, | ||
| { key: "records", nested: "ingestRecordSummary" }, { key: "sourcePreviews", items: "ingestSourcePreview" }, | ||
@@ -94,0 +95,0 @@ { key: "review", nested: "ingestReview" }, { key: "warnings" }, { key: "nextAction" }, |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"projection.js","sources":["marrow-sdk:///src/projection.ts"],"names":[],"mappings":"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","sourcesContent":["import { MarrowResponseError } from \"./errors.js\";\nimport type {\n IngestJobListResponse,\n IngestJobResponse,\n IngestPlanResponse,\n JobStatus,\n QueryResult,\n} from \"./types.js\";\n\ninterface FieldDescriptor {\n readonly key: string;\n readonly nested?: string;\n readonly items?: string;\n}\n\nconst DTO_FIELDS = {\n evidenceQueryResult: [\"schemaVersion\", \"generatedAt\", \"query\", \"answer\", \"results\", \"persona\", \"warnings\", \"operation\"],\n operationCharge: [\"correlationId\", \"creditsCharged\", \"balance\"],\n operationCreditBalance: [\"totalCreditsRemaining\", \"monthlyCreditsRemaining\", \"onboardingCreditsRemaining\"],\n evidenceAnswer: [\"status\", \"text\", \"citations\", \"limitations\"],\n evidenceResult: [\"rank\", \"title\", \"snippet\", \"evidence\", \"authority\", \"supportStatus\", \"enclosingContext\"],\n evidenceCitation: [\"citationId\", \"excerpt\", \"sourceLabel\", \"support\", \"charOffsetStart\", \"charOffsetEnd\"],\n evidenceEnclosingContext: [\"sessionLabel\", \"sessionDate\", \"window\", \"synthesis\"],\n evidenceWindowMember: [\"excerpt\", \"charOffsetStart\", \"charOffsetEnd\"],\n ingestJob: [\"id\", \"sourceId\", \"kind\", \"status\", \"request\", \"result\", \"failure\", \"attempts\", \"maxAttempts\", \"completedAt\", \"createdAt\", \"updatedAt\", \"operation\"],\n ingestJobRequest: [\"source\"],\n ingestJobRequestSource: [\"kind\", \"url\", \"filename\", \"contentType\", \"datedAt\", \"bytes\"],\n ingestJobResult: [\"mode\", \"records\", \"warnings\", \"source\", \"review\"],\n ingestJobFailure: [\"code\", \"category\", \"stage\", \"message\", \"requestId\", \"retryable\", \"failedAt\", \"metric\", \"limit\", \"estimate\", \"unit\", \"limitWindow\", \"creditsRemaining\", \"resetAt\", \"nextAction\"],\n ingestPlan: [\"dryRun\", \"status\", \"planId\", \"expiresAt\", \"consumed\", \"estimatedCredits\", \"fileType\", \"source\", \"records\", \"sourcePreviews\", \"review\", \"warnings\", \"nextAction\"],\n ingestSource: [\"kind\", \"path\", \"bytes\", \"pages\", \"lines\", \"url\", \"title\", \"contentType\", \"datedAt\"],\n ingestSourcePreview: [\"title\", \"wordCount\", \"textPreview\"],\n ingestReview: [\"status\", \"warnings\"],\n ingestRecordSummary: [\"total\", \"sourceExcerpts\", \"facts\", \"links\"],\n claim: [\"id\", \"content\", \"peer_id\", \"agent_id\", \"session_id\", \"authority\", \"state\", \"eligibility\", \"support_status\", \"valid_at\", \"invalid_at\", \"created_at\", \"updated_at\", \"head_revision\", \"metadata\", \"categories\", \"citations\"],\n claimCitation: [\"excerpt\", \"source_label\", \"char_offset_start\", \"char_offset_end\"],\n claimHistoryEntry: [\"id\", \"event\", \"prior_claim\", \"successor_claim\", \"valid_at\", \"invalid_at\", \"created_at\", \"deterministic\"],\n claimUpdateResult: [\"id\", \"content\", \"event\", \"message\", \"valid_at\", \"invalid_at\", \"deterministic\", \"authority\", \"state\", \"eligibility\", \"head_revision\"],\n claimDeleteReceipt: [\"id\", \"invalid_at\", \"expired_at\"],\n memoryContext: [\"status\", \"placement\", \"context\", \"messages\", \"blocks\", \"citations\", \"conflicts\", \"warnings\"],\n contextBlock: [\"authority\", \"state\", \"text\", \"support_status\", \"citations\"],\n contextMessage: [\"role\", \"content\"],\n messagesCreateReceipt: [\"event_id\", \"status\", \"results\", \"authority\", \"eligibility\"],\n claimRef: [\"id\"],\n representationResponse: [\"peer_id\", \"generated_at\", \"count\", \"claims\"],\n eventStatus: [\"event_id\", \"status\"],\n queueStatus: [\"queued\", \"running\", \"succeeded\", \"failed\"],\n peer: [\"id\", \"metadata\", \"created_at\"],\n session: [\"id\", \"metadata\", \"peer_ids\", \"created_at\"],\n message: [\"role\", \"content\", \"peer_id\", \"created_at\"],\n workspace: [\"id\", \"created_at\"],\n memoryMetadata: [],\n Page_Claim: [\"items\", \"total\", \"page\", \"size\"],\n Page_Peer: [\"items\", \"total\", \"page\", \"size\"],\n Page_Session: [\"items\", \"total\", \"page\", \"size\"],\n Page_Message: [\"items\", \"total\", \"page\", \"size\"],\n Page_Workspace: [\"items\", \"total\", \"page\", \"size\"],\n currentAccess: [\"schemaVersion\", \"credential\", \"context\", \"quotas\", \"credits\"],\n currentAccessCredential: [\"id\", \"name\", \"type\", \"scopes\", \"expiresAt\"],\n currentAccessContext: [\"allowedWorkspaces\", \"allowedAudiences\", \"defaultWorkspace\", \"defaultAudience\"],\n accountUsageQuotas: [\"query\", \"ingest\"],\n accountUsageQuotaPair: [\"day\", \"month\"],\n accountUsageQuotaCounter: [\"period\", \"periodStart\", \"limit\", \"used\", \"remaining\", \"resetAt\"],\n accountCreditBalance: [\"monthlyPeriodStart\", \"monthlyCreditsGranted\", \"monthlyCreditsRemaining\", \"onboardingCreditsGranted\", \"onboardingCreditsRemaining\", \"totalCreditsGranted\", \"totalCreditsRemaining\", \"updatedAt\"],\n} as const;\n\nconst DESCRIPTORS: Readonly<Record<keyof typeof DTO_FIELDS, readonly FieldDescriptor[]>> = {\n evidenceQueryResult: [\n { key: \"schemaVersion\" }, { key: \"generatedAt\" }, { key: \"query\" },\n { key: \"answer\", nested: \"evidenceAnswer\" }, { key: \"results\", items: \"evidenceResult\" },\n { key: \"persona\" }, { key: \"warnings\" }, { key: \"operation\", nested: \"operationCharge\" },\n ],\n operationCharge: [\n { key: \"correlationId\" }, { key: \"creditsCharged\" }, { key: \"balance\", nested: \"operationCreditBalance\" },\n ],\n operationCreditBalance: DTO_FIELDS.operationCreditBalance.map((key) => ({ key })),\n evidenceAnswer: [\n { key: \"status\" }, { key: \"text\" }, { key: \"citations\", items: \"evidenceCitation\" }, { key: \"limitations\" },\n ],\n evidenceResult: [\n { key: \"rank\" }, { key: \"title\" }, { key: \"snippet\" },\n { key: \"evidence\", items: \"evidenceCitation\" }, { key: \"authority\" }, { key: \"supportStatus\" },\n { key: \"enclosingContext\", nested: \"evidenceEnclosingContext\" },\n ],\n evidenceCitation: DTO_FIELDS.evidenceCitation.map((key) => ({ key })),\n evidenceEnclosingContext: [\n { key: \"sessionLabel\" }, { key: \"sessionDate\" }, { key: \"window\", items: \"evidenceWindowMember\" }, { key: \"synthesis\" },\n ],\n evidenceWindowMember: DTO_FIELDS.evidenceWindowMember.map((key) => ({ key })),\n ingestJob: [\n { key: \"id\" }, { key: \"sourceId\" }, { key: \"kind\" }, { key: \"status\" }, { key: \"request\", nested: \"ingestJobRequest\" },\n { key: \"result\", nested: \"ingestJobResult\" }, { key: \"failure\", nested: \"ingestJobFailure\" },\n { key: \"attempts\" }, { key: \"maxAttempts\" }, { key: \"completedAt\" }, { key: \"createdAt\" }, { key: \"updatedAt\" },\n { key: \"operation\", nested: \"operationCharge\" },\n ],\n ingestJobRequest: [{ key: \"source\", nested: \"ingestJobRequestSource\" }],\n ingestJobRequestSource: DTO_FIELDS.ingestJobRequestSource.map((key) => ({ key })),\n ingestJobResult: [\n { key: \"mode\" }, { key: \"records\", nested: \"ingestRecordSummary\" }, { key: \"warnings\" },\n { key: \"source\", nested: \"ingestSource\" }, { key: \"review\", nested: \"ingestReview\" },\n ],\n ingestJobFailure: DTO_FIELDS.ingestJobFailure.map((key) => ({ key })),\n ingestPlan: [\n { key: \"dryRun\" }, { key: \"status\" }, { key: \"planId\" }, { key: \"expiresAt\" },\n { key: \"consumed\" }, { key: \"estimatedCredits\" }, { key: \"fileType\" }, { key: \"source\", nested: \"ingestSource\" },\n { key: \"records\", nested: \"ingestRecordSummary\" }, { key: \"sourcePreviews\", items: \"ingestSourcePreview\" },\n { key: \"review\", nested: \"ingestReview\" }, { key: \"warnings\" }, { key: \"nextAction\" },\n ],\n ingestSource: DTO_FIELDS.ingestSource.map((key) => ({ key })),\n ingestSourcePreview: DTO_FIELDS.ingestSourcePreview.map((key) => ({ key })),\n ingestReview: DTO_FIELDS.ingestReview.map((key) => ({ key })),\n ingestRecordSummary: DTO_FIELDS.ingestRecordSummary.map((key) => ({ key })),\n claim: [\n ...DTO_FIELDS.claim.slice(0, 14).map((key) => ({ key })),\n { key: \"metadata\", nested: \"memoryMetadata\" }, { key: \"categories\" }, { key: \"citations\", items: \"claimCitation\" },\n ],\n claimCitation: DTO_FIELDS.claimCitation.map((key) => ({ key })),\n claimHistoryEntry: DTO_FIELDS.claimHistoryEntry.map((key) => ({ key })),\n claimUpdateResult: DTO_FIELDS.claimUpdateResult.map((key) => ({ key })),\n claimDeleteReceipt: DTO_FIELDS.claimDeleteReceipt.map((key) => ({ key })),\n memoryContext: [\n { key: \"status\" }, { key: \"placement\" }, { key: \"context\" }, { key: \"messages\", items: \"contextMessage\" },\n { key: \"blocks\", items: \"contextBlock\" }, { key: \"citations\", items: \"claimCitation\" },\n { key: \"conflicts\" }, { key: \"warnings\" },\n ],\n contextBlock: [\n { key: \"authority\" }, { key: \"state\" }, { key: \"text\" }, { key: \"support_status\" },\n { key: \"citations\", items: \"claimCitation\" },\n ],\n contextMessage: DTO_FIELDS.contextMessage.map((key) => ({ key })),\n messagesCreateReceipt: [\n { key: \"event_id\" }, { key: \"status\" }, { key: \"results\", items: \"claimRef\" },\n { key: \"authority\" }, { key: \"eligibility\" },\n ],\n claimRef: DTO_FIELDS.claimRef.map((key) => ({ key })),\n representationResponse: [\n { key: \"peer_id\" }, { key: \"generated_at\" }, { key: \"count\" }, { key: \"claims\", items: \"claim\" },\n ],\n eventStatus: DTO_FIELDS.eventStatus.map((key) => ({ key })),\n queueStatus: DTO_FIELDS.queueStatus.map((key) => ({ key })),\n peer: [{ key: \"id\" }, { key: \"metadata\", nested: \"memoryMetadata\" }, { key: \"created_at\" }],\n session: [{ key: \"id\" }, { key: \"metadata\", nested: \"memoryMetadata\" }, { key: \"peer_ids\" }, { key: \"created_at\" }],\n message: DTO_FIELDS.message.map((key) => ({ key })),\n workspace: DTO_FIELDS.workspace.map((key) => ({ key })),\n memoryMetadata: [],\n Page_Claim: [{ key: \"items\", items: \"claim\" }, { key: \"total\" }, { key: \"page\" }, { key: \"size\" }],\n Page_Peer: [{ key: \"items\", items: \"peer\" }, { key: \"total\" }, { key: \"page\" }, { key: \"size\" }],\n Page_Session: [{ key: \"items\", items: \"session\" }, { key: \"total\" }, { key: \"page\" }, { key: \"size\" }],\n Page_Message: [{ key: \"items\", items: \"message\" }, { key: \"total\" }, { key: \"page\" }, { key: \"size\" }],\n Page_Workspace: [{ key: \"items\", items: \"workspace\" }, { key: \"total\" }, { key: \"page\" }, { key: \"size\" }],\n currentAccess: [\n { key: \"schemaVersion\" }, { key: \"credential\", nested: \"currentAccessCredential\" },\n { key: \"context\", nested: \"currentAccessContext\" }, { key: \"quotas\", nested: \"accountUsageQuotas\" },\n { key: \"credits\", nested: \"accountCreditBalance\" },\n ],\n currentAccessCredential: DTO_FIELDS.currentAccessCredential.map((key) => ({ key })),\n currentAccessContext: DTO_FIELDS.currentAccessContext.map((key) => ({ key })),\n accountUsageQuotas: [{ key: \"query\", nested: \"accountUsageQuotaPair\" }, { key: \"ingest\", nested: \"accountUsageQuotaPair\" }],\n accountUsageQuotaPair: [{ key: \"day\", nested: \"accountUsageQuotaCounter\" }, { key: \"month\", nested: \"accountUsageQuotaCounter\" }],\n accountUsageQuotaCounter: DTO_FIELDS.accountUsageQuotaCounter.map((key) => ({ key })),\n accountCreditBalance: DTO_FIELDS.accountCreditBalance.map((key) => ({ key })),\n};\n\nexport const SDK_RESPONSE_FIELDS = Object.freeze(Object.fromEntries(\n Object.entries(DESCRIPTORS).map(([id, fields]) => [id, Object.freeze(fields.map((field) => field.key))]),\n)) as Readonly<Record<keyof typeof DTO_FIELDS, readonly string[]>>;\n\nfor (const id of Object.keys(DTO_FIELDS) as Array<keyof typeof DTO_FIELDS>) {\n if (DTO_FIELDS[id].length !== SDK_RESPONSE_FIELDS[id].length\n || DTO_FIELDS[id].some((field, index) => SDK_RESPONSE_FIELDS[id][index] !== field)) {\n throw new Error(`TypeScript SDK response projection descriptor drift for ${id}`);\n }\n}\n\nconst REQUIRED_FIELDS: Readonly<Partial<Record<keyof typeof DTO_FIELDS, readonly string[]>>> = {\n evidenceQueryResult: [\"schemaVersion\", \"generatedAt\", \"query\", \"answer\", \"results\", \"warnings\"],\n evidenceAnswer: [\"status\", \"text\", \"citations\", \"limitations\"],\n evidenceResult: [\"rank\", \"title\", \"snippet\", \"evidence\"],\n evidenceCitation: [\"citationId\", \"excerpt\", \"sourceLabel\"],\n ingestJob: [\"id\", \"kind\", \"status\", \"createdAt\"],\n ingestJobRequest: [\"source\"],\n ingestJobResult: [\"mode\"],\n ingestJobFailure: DTO_FIELDS.ingestJobFailure,\n ingestPlan: [\"dryRun\", \"status\", \"source\", \"records\", \"review\", \"warnings\", \"nextAction\"],\n ingestSourcePreview: [\"wordCount\"],\n claim: [\"id\", \"content\", \"peer_id\", \"agent_id\", \"session_id\", \"authority\", \"state\", \"eligibility\", \"support_status\", \"valid_at\", \"invalid_at\", \"created_at\", \"updated_at\", \"head_revision\", \"categories\", \"citations\"],\n claimCitation: [\"excerpt\", \"source_label\", \"char_offset_start\", \"char_offset_end\"],\n claimHistoryEntry: [\"id\", \"event\", \"prior_claim\", \"successor_claim\", \"valid_at\", \"invalid_at\", \"created_at\", \"deterministic\"],\n claimUpdateResult: DTO_FIELDS.claimUpdateResult,\n claimDeleteReceipt: DTO_FIELDS.claimDeleteReceipt,\n memoryContext: DTO_FIELDS.memoryContext,\n contextBlock: DTO_FIELDS.contextBlock,\n contextMessage: DTO_FIELDS.contextMessage,\n messagesCreateReceipt: DTO_FIELDS.messagesCreateReceipt,\n claimRef: DTO_FIELDS.claimRef,\n representationResponse: DTO_FIELDS.representationResponse,\n eventStatus: DTO_FIELDS.eventStatus,\n queueStatus: DTO_FIELDS.queueStatus,\n peer: DTO_FIELDS.peer,\n session: DTO_FIELDS.session,\n message: DTO_FIELDS.message,\n workspace: DTO_FIELDS.workspace,\n Page_Claim: DTO_FIELDS.Page_Claim,\n Page_Peer: DTO_FIELDS.Page_Peer,\n Page_Session: DTO_FIELDS.Page_Session,\n Page_Message: DTO_FIELDS.Page_Message,\n Page_Workspace: DTO_FIELDS.Page_Workspace,\n currentAccess: DTO_FIELDS.currentAccess,\n currentAccessCredential: DTO_FIELDS.currentAccessCredential,\n currentAccessContext: DTO_FIELDS.currentAccessContext,\n accountUsageQuotas: DTO_FIELDS.accountUsageQuotas,\n accountUsageQuotaPair: DTO_FIELDS.accountUsageQuotaPair,\n accountUsageQuotaCounter: DTO_FIELDS.accountUsageQuotaCounter,\n accountCreditBalance: DTO_FIELDS.accountCreditBalance,\n};\n\nconst NULLABLE_FIELDS: Readonly<Partial<Record<keyof typeof DTO_FIELDS, readonly string[]>>> = {\n ingestJob: [\"result\", \"failure\", \"completedAt\"],\n currentAccessCredential: [\"expiresAt\"],\n claim: [\"peer_id\", \"agent_id\", \"session_id\", \"valid_at\", \"invalid_at\", \"created_at\", \"updated_at\"],\n claimHistoryEntry: [\"prior_claim\", \"successor_claim\", \"valid_at\", \"invalid_at\", \"created_at\"],\n claimUpdateResult: [\"invalid_at\"],\n peer: [\"created_at\"],\n session: [\"peer_ids\", \"created_at\"],\n message: [\"peer_id\", \"created_at\"],\n workspace: [\"created_at\"],\n};\n\nconst LITERAL_RULES: Readonly<Partial<Record<keyof typeof DTO_FIELDS, Readonly<Record<string, readonly (string | boolean)[]>>>>> = {\n evidenceQueryResult: { schemaVersion: [\"marrow-evidence-query-v2\"] },\n evidenceAnswer: { status: [\"partial\", \"insufficient_evidence\"] },\n evidenceCitation: { support: [\"quotation\", \"compression\", \"inference\"] },\n ingestJob: {\n kind: [\"url\", \"file\", \"source_deletion\"],\n status: [\"queued\", \"running\", \"succeeded\", \"failed\", \"quarantined\"],\n },\n ingestJobResult: { mode: [\"completed\", \"review_required\", \"unknown\"] },\n ingestPlan: { dryRun: [true], status: [\"preview_ready\"] },\n ingestReview: { status: [\"ready\", \"not_recommended\", \"needs_review\"] },\n claimHistoryEntry: { event: [\"ADD\", \"UPDATE\", \"DELETE\"] },\n claimUpdateResult: {\n event: [\"UPDATE\"],\n authority: [\"correction_memory\"],\n state: [\"current\"],\n eligibility: [\"eligible\"],\n },\n memoryContext: { status: [\"ready\", \"partial\", \"insufficient_evidence\", \"conflicted\", \"withheld\"] },\n messagesCreateReceipt: { status: [\"processing\"] },\n eventStatus: { status: [\"queued\", \"running\", \"succeeded\", \"failed\", \"quarantined\"] },\n message: { role: [\"user\", \"assistant\", \"system\", \"tool\"] },\n currentAccess: { schemaVersion: [\"marrow-access-v1\"] },\n currentAccessCredential: { type: [\"customer_api_key\"] },\n};\n\ntype ScalarRule = \"string\" | \"nullable-string\" | \"integer\" | \"boolean\" | \"strings\" | \"nullable-strings\";\n\nconst SCALAR_RULES: Readonly<Partial<Record<keyof typeof DTO_FIELDS, Readonly<Record<string, ScalarRule>>>>> = {\n evidenceQueryResult: { schemaVersion: \"string\", generatedAt: \"string\", query: \"string\", persona: \"string\", warnings: \"strings\" },\n operationCharge: { correlationId: \"string\", creditsCharged: \"integer\" },\n operationCreditBalance: { totalCreditsRemaining: \"integer\", monthlyCreditsRemaining: \"integer\", onboardingCreditsRemaining: \"integer\" },\n evidenceAnswer: { status: \"string\", text: \"string\", limitations: \"strings\" },\n evidenceResult: { rank: \"integer\", title: \"string\", snippet: \"string\", authority: \"string\", supportStatus: \"string\" },\n evidenceCitation: { citationId: \"integer\", excerpt: \"string\", sourceLabel: \"string\", support: \"string\", charOffsetStart: \"integer\", charOffsetEnd: \"integer\" },\n evidenceEnclosingContext: { sessionLabel: \"string\", sessionDate: \"string\", synthesis: \"string\" },\n evidenceWindowMember: { excerpt: \"string\", charOffsetStart: \"integer\", charOffsetEnd: \"integer\" },\n ingestJob: { id: \"string\", sourceId: \"string\", kind: \"string\", status: \"string\", attempts: \"integer\", maxAttempts: \"integer\", completedAt: \"nullable-string\", createdAt: \"string\", updatedAt: \"string\" },\n ingestJobRequestSource: { kind: \"string\", url: \"string\", filename: \"string\", contentType: \"string\", datedAt: \"string\", bytes: \"integer\" },\n ingestJobResult: { mode: \"string\", warnings: \"strings\" },\n ingestJobFailure: { code: \"string\", category: \"string\", stage: \"string\", message: \"string\", requestId: \"string\", retryable: \"boolean\", failedAt: \"string\", metric: \"string\", limit: \"integer\", estimate: \"integer\", unit: \"string\", limitWindow: \"string\", creditsRemaining: \"integer\", resetAt: \"nullable-string\", nextAction: \"string\" },\n ingestPlan: { dryRun: \"boolean\", status: \"string\", planId: \"string\", expiresAt: \"string\", consumed: \"boolean\", estimatedCredits: \"integer\", fileType: \"string\", warnings: \"strings\", nextAction: \"string\" },\n ingestSource: { kind: \"string\", path: \"string\", bytes: \"integer\", pages: \"integer\", lines: \"integer\", url: \"string\", title: \"string\", contentType: \"string\", datedAt: \"string\" },\n ingestSourcePreview: { title: \"string\", wordCount: \"integer\", textPreview: \"string\" },\n ingestReview: { status: \"string\", warnings: \"strings\" },\n ingestRecordSummary: { total: \"integer\", sourceExcerpts: \"integer\", facts: \"integer\", links: \"integer\" },\n claim: { id: \"string\", content: \"string\", peer_id: \"nullable-string\", agent_id: \"nullable-string\", session_id: \"nullable-string\", authority: \"string\", state: \"string\", eligibility: \"string\", support_status: \"string\", valid_at: \"nullable-string\", invalid_at: \"nullable-string\", created_at: \"nullable-string\", updated_at: \"nullable-string\", head_revision: \"string\", categories: \"strings\" },\n claimCitation: { excerpt: \"string\", source_label: \"string\", char_offset_start: \"integer\", char_offset_end: \"integer\" },\n claimHistoryEntry: { id: \"string\", event: \"string\", prior_claim: \"nullable-string\", successor_claim: \"nullable-string\", valid_at: \"nullable-string\", invalid_at: \"nullable-string\", created_at: \"nullable-string\", deterministic: \"boolean\" },\n claimUpdateResult: { id: \"string\", content: \"string\", event: \"string\", message: \"string\", valid_at: \"string\", invalid_at: \"nullable-string\", deterministic: \"boolean\", authority: \"string\", state: \"string\", eligibility: \"string\", head_revision: \"string\" },\n claimDeleteReceipt: { id: \"string\", invalid_at: \"string\", expired_at: \"string\" },\n memoryContext: { status: \"string\", placement: \"string\", context: \"string\", conflicts: \"strings\", warnings: \"strings\" },\n contextBlock: { authority: \"string\", state: \"string\", text: \"string\", support_status: \"string\" },\n contextMessage: { role: \"string\", content: \"string\" },\n messagesCreateReceipt: { event_id: \"string\", status: \"string\", authority: \"string\", eligibility: \"string\" },\n claimRef: { id: \"string\" },\n representationResponse: { peer_id: \"string\", generated_at: \"string\", count: \"integer\" },\n eventStatus: { event_id: \"string\", status: \"string\" },\n queueStatus: { queued: \"integer\", running: \"integer\", succeeded: \"integer\", failed: \"integer\" },\n peer: { id: \"string\", created_at: \"nullable-string\" },\n session: { id: \"string\", peer_ids: \"nullable-strings\", created_at: \"nullable-string\" },\n message: { role: \"string\", content: \"string\", peer_id: \"nullable-string\", created_at: \"nullable-string\" },\n workspace: { id: \"string\", created_at: \"nullable-string\" },\n Page_Claim: { total: \"integer\", page: \"integer\", size: \"integer\" },\n Page_Peer: { total: \"integer\", page: \"integer\", size: \"integer\" },\n Page_Session: { total: \"integer\", page: \"integer\", size: \"integer\" },\n Page_Message: { total: \"integer\", page: \"integer\", size: \"integer\" },\n Page_Workspace: { total: \"integer\", page: \"integer\", size: \"integer\" },\n currentAccess: { schemaVersion: \"string\" },\n currentAccessCredential: { id: \"string\", name: \"string\", type: \"string\", scopes: \"strings\", expiresAt: \"nullable-string\" },\n currentAccessContext: { allowedWorkspaces: \"strings\", allowedAudiences: \"strings\", defaultWorkspace: \"string\", defaultAudience: \"string\" },\n accountUsageQuotaCounter: { period: \"string\", periodStart: \"string\", limit: \"integer\", used: \"integer\", remaining: \"integer\", resetAt: \"string\" },\n accountCreditBalance: { monthlyPeriodStart: \"string\", monthlyCreditsGranted: \"integer\", monthlyCreditsRemaining: \"integer\", onboardingCreditsGranted: \"integer\", onboardingCreditsRemaining: \"integer\", totalCreditsGranted: \"integer\", totalCreditsRemaining: \"integer\", updatedAt: \"string\" },\n};\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value);\n}\n\nfunction projectLeaf(value: unknown, path: string): unknown {\n if (value === null || [\"string\", \"number\", \"boolean\"].includes(typeof value)) return value;\n if (Array.isArray(value)) {\n return value.map((item, index) => projectLeaf(item, `${path}[${index}]`));\n }\n throw new MarrowResponseError(`${path} must contain only public scalar values`);\n}\n\nexport function projectDto(id: keyof typeof DTO_FIELDS, value: unknown): Record<string, unknown> {\n if (!isRecord(value)) throw new MarrowResponseError(`${id} response must be an object`);\n const output: Record<string, unknown> = {};\n for (const field of DESCRIPTORS[id]) {\n if (!Object.hasOwn(value, field.key)) continue;\n const fieldValue = value[field.key];\n if (fieldValue === null) {\n if (!(NULLABLE_FIELDS[id] ?? []).includes(field.key)) {\n throw new MarrowResponseError(`${id}.${field.key} cannot be null`);\n }\n output[field.key] = null;\n } else if (field.nested !== undefined) {\n output[field.key] = projectDto(field.nested as keyof typeof DTO_FIELDS, fieldValue);\n } else if (field.items !== undefined) {\n if (!Array.isArray(fieldValue)) throw new MarrowResponseError(`${id}.${field.key} must be an array`);\n output[field.key] = fieldValue.map((item) => projectDto(field.items as keyof typeof DTO_FIELDS, item));\n } else {\n output[field.key] = projectLeaf(fieldValue, `${id}.${field.key}`);\n }\n }\n for (const field of REQUIRED_FIELDS[id] ?? []) {\n if (!Object.hasOwn(output, field)) throw new MarrowResponseError(`${id}.${field} is required`);\n }\n validateScalarFields(id, output);\n validateLiteralFields(id, output);\n validateDependentFields(id, output);\n return output;\n}\n\nfunction validateScalarFields(id: keyof typeof DTO_FIELDS, value: Record<string, unknown>): void {\n for (const [field, rule] of Object.entries(SCALAR_RULES[id] ?? {})) {\n if (!Object.hasOwn(value, field)) continue;\n const found = value[field];\n const valid = rule === \"string\"\n ? typeof found === \"string\"\n : rule === \"nullable-string\"\n ? found === null || typeof found === \"string\"\n : rule === \"integer\"\n ? typeof found === \"number\" && Number.isSafeInteger(found)\n : rule === \"boolean\"\n ? typeof found === \"boolean\"\n : rule === \"strings\"\n ? Array.isArray(found) && found.every((item) => typeof item === \"string\")\n : found === null || (Array.isArray(found) && found.every((item) => typeof item === \"string\"));\n if (!valid) throw new MarrowResponseError(`${id}.${field} has an invalid public value`);\n }\n}\n\nfunction validateLiteralFields(id: keyof typeof DTO_FIELDS, value: Record<string, unknown>): void {\n for (const [field, allowed] of Object.entries(LITERAL_RULES[id] ?? {})) {\n if (!Object.hasOwn(value, field)) continue;\n if (!allowed.includes(value[field] as string | boolean)) {\n throw new MarrowResponseError(`${id}.${field} has an invalid public literal`);\n }\n }\n}\n\nfunction validateDependentFields(id: keyof typeof DTO_FIELDS, value: Record<string, unknown>): void {\n if (id !== \"evidenceCitation\") return;\n if ((value.citationId as number) < 1) {\n throw new MarrowResponseError(\"evidenceCitation.citationId must be at least 1\");\n }\n const hasStart = Object.hasOwn(value, \"charOffsetStart\");\n const hasEnd = Object.hasOwn(value, \"charOffsetEnd\");\n if (hasStart !== hasEnd) {\n throw new MarrowResponseError(\"evidenceCitation.charOffsetStart and charOffsetEnd must be provided together\");\n }\n if (hasStart && ((value.charOffsetStart as number) < 0 || (value.charOffsetEnd as number) < 0)) {\n throw new MarrowResponseError(\"evidenceCitation character offsets must be at least 0\");\n }\n}\n\nfunction requireString(value: Record<string, unknown>, field: string, owner: string): string {\n const found = value[field];\n if (typeof found !== \"string\" || found.length === 0) throw new MarrowResponseError(`${owner}.${field} must be a non-empty string`);\n return found;\n}\n\nfunction requireNumber(value: Record<string, unknown>, field: string, owner: string): number {\n const found = value[field];\n if (typeof found !== \"number\" || !Number.isFinite(found)) throw new MarrowResponseError(`${owner}.${field} must be a number`);\n return found;\n}\n\nfunction projectPagination(value: unknown): Record<string, unknown> {\n if (!isRecord(value)) throw new MarrowResponseError(\"ingest pagination must be an object\");\n return {\n ...(typeof value.limit === \"number\" ? { limit: value.limit } : {}),\n ...(typeof value.nextCursor === \"string\" || value.nextCursor === null ? { nextCursor: value.nextCursor } : {}),\n };\n}\n\nexport function projectQueryResult(value: unknown): QueryResult {\n const result = projectDto(\"evidenceQueryResult\", value);\n if (result.schemaVersion !== \"marrow-evidence-query-v2\") {\n throw new MarrowResponseError(\"query response must use marrow-evidence-query-v2\");\n }\n requireString(result, \"generatedAt\", \"query response\");\n requireString(result, \"query\", \"query response\");\n const answer = result.answer as Record<string, unknown>;\n if (answer.status !== \"partial\" && answer.status !== \"insufficient_evidence\") {\n throw new MarrowResponseError(\"query response answer.status must be partial or insufficient_evidence\");\n }\n if (typeof answer.text !== \"string\") throw new MarrowResponseError(\"query response answer.text must be a string\");\n return result as unknown as QueryResult;\n}\n\nexport function projectIngestSubmission(value: unknown): IngestPlanResponse | IngestJobResponse {\n if (!isRecord(value)) throw new MarrowResponseError(\"ingest response must be an object\");\n if (value.schemaVersion === \"marrow-ingest-job-v1\") return projectIngestJobResponse(value);\n if (value.schemaVersion !== \"marrow-url-ingest-plan-v1\" && value.schemaVersion !== \"marrow-file-ingest-plan-v1\") {\n throw new MarrowResponseError(\"ingest response has an unsupported schemaVersion\");\n }\n if (value.mode !== \"dry-run\") throw new MarrowResponseError(\"ingest plan mode must be dry-run\");\n const plan = projectDto(\"ingestPlan\", value.plan);\n if (plan.dryRun !== true || plan.status !== \"preview_ready\") {\n throw new MarrowResponseError(\"ingest plan must be a preview_ready dry run\");\n }\n return {\n schemaVersion: value.schemaVersion,\n mode: \"dry-run\",\n plan,\n ...(Array.isArray(value.warnings) ? { warnings: projectLeaf(value.warnings, \"ingest.warnings\") } : {}),\n } as unknown as IngestPlanResponse;\n}\n\nconst JOB_STATUSES = new Set<JobStatus>([\"queued\", \"running\", \"succeeded\", \"failed\", \"quarantined\"]);\n\nexport function projectIngestJobResponse(value: unknown): IngestJobResponse {\n if (!isRecord(value) || value.schemaVersion !== \"marrow-ingest-job-v1\") {\n throw new MarrowResponseError(\"ingest job response must use marrow-ingest-job-v1\");\n }\n const job = projectDto(\"ingestJob\", value.job);\n requireString(job, \"id\", \"ingest job\");\n requireString(job, \"createdAt\", \"ingest job\");\n if (!JOB_STATUSES.has(job.status as JobStatus)) throw new MarrowResponseError(\"ingest job status is invalid\");\n return {\n schemaVersion: \"marrow-ingest-job-v1\",\n ...(value.mode === \"queued\" ? { mode: \"queued\" as const } : {}),\n ...(typeof value.created === \"boolean\" ? { created: value.created } : {}),\n job,\n } as unknown as IngestJobResponse;\n}\n\nexport function projectIngestJobList(value: unknown): IngestJobListResponse {\n if (!isRecord(value) || value.schemaVersion !== \"marrow-ingest-job-list-v1\" || !Array.isArray(value.jobs)) {\n throw new MarrowResponseError(\"ingest job list must use marrow-ingest-job-list-v1 and include jobs\");\n }\n return {\n schemaVersion: \"marrow-ingest-job-list-v1\",\n jobs: value.jobs.map((job) => projectIngestJobResponse({ schemaVersion: \"marrow-ingest-job-v1\", job }).job),\n pagination: projectPagination(value.pagination),\n };\n}\n\nexport function assertPage(value: Record<string, unknown>, owner: string): void {\n if (!Array.isArray(value.items)) throw new MarrowResponseError(`${owner}.items must be an array`);\n for (const field of [\"total\", \"page\", \"size\"]) requireNumber(value, field, owner);\n}\n\nexport function assertContext(value: Record<string, unknown>): void {\n if (![\"ready\", \"partial\", \"insufficient_evidence\", \"conflicted\", \"withheld\"].includes(String(value.status))) {\n throw new MarrowResponseError(\"memoryContext.status is invalid\");\n }\n requireString(value, \"placement\", \"memoryContext\");\n if (typeof value.context !== \"string\") throw new MarrowResponseError(\"memoryContext.context must be a string\");\n}\n"]} | ||
| {"version":3,"file":"projection.js","sources":["marrow-sdk:///src/projection.ts"],"names":[],"mappings":"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","sourcesContent":["import { MarrowResponseError } from \"./errors.js\";\nimport type {\n IngestJobListResponse,\n IngestJobResponse,\n IngestPlanResponse,\n JobStatus,\n QueryResult,\n} from \"./types.js\";\n\ninterface FieldDescriptor {\n readonly key: string;\n readonly nested?: string;\n readonly items?: string;\n}\n\nconst DTO_FIELDS = {\n evidenceQueryResult: [\"schemaVersion\", \"generatedAt\", \"query\", \"answer\", \"results\", \"persona\", \"warnings\", \"operation\"],\n operationCharge: [\"correlationId\", \"creditsCharged\", \"balance\"],\n operationCreditBalance: [\"totalCreditsRemaining\", \"monthlyCreditsRemaining\", \"onboardingCreditsRemaining\"],\n evidenceAnswer: [\"status\", \"text\", \"citations\", \"limitations\"],\n evidenceResult: [\"rank\", \"title\", \"snippet\", \"evidence\", \"authority\", \"supportStatus\", \"enclosingContext\"],\n evidenceCitation: [\"citationId\", \"excerpt\", \"sourceLabel\", \"support\", \"charOffsetStart\", \"charOffsetEnd\"],\n evidenceEnclosingContext: [\"sessionLabel\", \"sessionDate\", \"window\", \"synthesis\"],\n evidenceWindowMember: [\"excerpt\", \"charOffsetStart\", \"charOffsetEnd\"],\n ingestJob: [\"id\", \"sourceId\", \"kind\", \"status\", \"request\", \"result\", \"failure\", \"attempts\", \"maxAttempts\", \"completedAt\", \"createdAt\", \"updatedAt\", \"operation\"],\n ingestJobRequest: [\"source\"],\n ingestJobRequestSource: [\"kind\", \"url\", \"filename\", \"contentType\", \"datedAt\", \"bytes\"],\n ingestJobResult: [\"mode\", \"records\", \"warnings\", \"source\", \"review\"],\n ingestJobFailure: [\"code\", \"category\", \"stage\", \"message\", \"requestId\", \"retryable\", \"failedAt\", \"metric\", \"limit\", \"estimate\", \"unit\", \"limitWindow\", \"creditsRemaining\", \"resetAt\", \"nextAction\"],\n ingestPlan: [\"dryRun\", \"status\", \"planId\", \"expiresAt\", \"consumed\", \"estimatedCredits\", \"committable\", \"commitRequires\", \"fileType\", \"source\", \"records\", \"sourcePreviews\", \"review\", \"warnings\", \"nextAction\"],\n ingestSource: [\"kind\", \"path\", \"bytes\", \"pages\", \"lines\", \"url\", \"title\", \"contentType\", \"datedAt\"],\n ingestSourcePreview: [\"title\", \"wordCount\", \"textPreview\"],\n ingestReview: [\"status\", \"warnings\"],\n ingestRecordSummary: [\"total\", \"sourceExcerpts\", \"facts\", \"links\"],\n claim: [\"id\", \"content\", \"peer_id\", \"agent_id\", \"session_id\", \"authority\", \"state\", \"eligibility\", \"support_status\", \"valid_at\", \"invalid_at\", \"created_at\", \"updated_at\", \"head_revision\", \"metadata\", \"categories\", \"citations\"],\n claimCitation: [\"excerpt\", \"source_label\", \"char_offset_start\", \"char_offset_end\"],\n claimHistoryEntry: [\"id\", \"event\", \"prior_claim\", \"successor_claim\", \"valid_at\", \"invalid_at\", \"created_at\", \"deterministic\"],\n claimUpdateResult: [\"id\", \"content\", \"event\", \"message\", \"valid_at\", \"invalid_at\", \"deterministic\", \"authority\", \"state\", \"eligibility\", \"head_revision\"],\n claimDeleteReceipt: [\"id\", \"invalid_at\", \"expired_at\"],\n memoryContext: [\"status\", \"placement\", \"context\", \"messages\", \"blocks\", \"citations\", \"conflicts\", \"warnings\"],\n contextBlock: [\"authority\", \"state\", \"text\", \"support_status\", \"citations\"],\n contextMessage: [\"role\", \"content\"],\n messagesCreateReceipt: [\"event_id\", \"status\", \"results\", \"authority\", \"eligibility\"],\n claimRef: [\"id\"],\n representationResponse: [\"peer_id\", \"generated_at\", \"count\", \"claims\"],\n eventStatus: [\"event_id\", \"status\"],\n queueStatus: [\"queued\", \"running\", \"succeeded\", \"failed\"],\n peer: [\"id\", \"metadata\", \"created_at\"],\n session: [\"id\", \"metadata\", \"peer_ids\", \"created_at\"],\n message: [\"role\", \"content\", \"peer_id\", \"created_at\"],\n workspace: [\"id\", \"created_at\"],\n memoryMetadata: [],\n Page_Claim: [\"items\", \"total\", \"page\", \"size\"],\n Page_Peer: [\"items\", \"total\", \"page\", \"size\"],\n Page_Session: [\"items\", \"total\", \"page\", \"size\"],\n Page_Message: [\"items\", \"total\", \"page\", \"size\"],\n Page_Workspace: [\"items\", \"total\", \"page\", \"size\"],\n currentAccess: [\"schemaVersion\", \"credential\", \"context\", \"quotas\", \"credits\"],\n currentAccessCredential: [\"id\", \"name\", \"type\", \"scopes\", \"expiresAt\"],\n currentAccessContext: [\"allowedWorkspaces\", \"allowedAudiences\", \"defaultWorkspace\", \"defaultAudience\"],\n accountUsageQuotas: [\"query\", \"ingest\"],\n accountUsageQuotaPair: [\"day\", \"month\"],\n accountUsageQuotaCounter: [\"period\", \"periodStart\", \"limit\", \"used\", \"remaining\", \"resetAt\"],\n accountCreditBalance: [\"monthlyPeriodStart\", \"monthlyCreditsGranted\", \"monthlyCreditsRemaining\", \"onboardingCreditsGranted\", \"onboardingCreditsRemaining\", \"totalCreditsGranted\", \"totalCreditsRemaining\", \"updatedAt\"],\n} as const;\n\nconst DESCRIPTORS: Readonly<Record<keyof typeof DTO_FIELDS, readonly FieldDescriptor[]>> = {\n evidenceQueryResult: [\n { key: \"schemaVersion\" }, { key: \"generatedAt\" }, { key: \"query\" },\n { key: \"answer\", nested: \"evidenceAnswer\" }, { key: \"results\", items: \"evidenceResult\" },\n { key: \"persona\" }, { key: \"warnings\" }, { key: \"operation\", nested: \"operationCharge\" },\n ],\n operationCharge: [\n { key: \"correlationId\" }, { key: \"creditsCharged\" }, { key: \"balance\", nested: \"operationCreditBalance\" },\n ],\n operationCreditBalance: DTO_FIELDS.operationCreditBalance.map((key) => ({ key })),\n evidenceAnswer: [\n { key: \"status\" }, { key: \"text\" }, { key: \"citations\", items: \"evidenceCitation\" }, { key: \"limitations\" },\n ],\n evidenceResult: [\n { key: \"rank\" }, { key: \"title\" }, { key: \"snippet\" },\n { key: \"evidence\", items: \"evidenceCitation\" }, { key: \"authority\" }, { key: \"supportStatus\" },\n { key: \"enclosingContext\", nested: \"evidenceEnclosingContext\" },\n ],\n evidenceCitation: DTO_FIELDS.evidenceCitation.map((key) => ({ key })),\n evidenceEnclosingContext: [\n { key: \"sessionLabel\" }, { key: \"sessionDate\" }, { key: \"window\", items: \"evidenceWindowMember\" }, { key: \"synthesis\" },\n ],\n evidenceWindowMember: DTO_FIELDS.evidenceWindowMember.map((key) => ({ key })),\n ingestJob: [\n { key: \"id\" }, { key: \"sourceId\" }, { key: \"kind\" }, { key: \"status\" }, { key: \"request\", nested: \"ingestJobRequest\" },\n { key: \"result\", nested: \"ingestJobResult\" }, { key: \"failure\", nested: \"ingestJobFailure\" },\n { key: \"attempts\" }, { key: \"maxAttempts\" }, { key: \"completedAt\" }, { key: \"createdAt\" }, { key: \"updatedAt\" },\n { key: \"operation\", nested: \"operationCharge\" },\n ],\n ingestJobRequest: [{ key: \"source\", nested: \"ingestJobRequestSource\" }],\n ingestJobRequestSource: DTO_FIELDS.ingestJobRequestSource.map((key) => ({ key })),\n ingestJobResult: [\n { key: \"mode\" }, { key: \"records\", nested: \"ingestRecordSummary\" }, { key: \"warnings\" },\n { key: \"source\", nested: \"ingestSource\" }, { key: \"review\", nested: \"ingestReview\" },\n ],\n ingestJobFailure: DTO_FIELDS.ingestJobFailure.map((key) => ({ key })),\n ingestPlan: [\n { key: \"dryRun\" }, { key: \"status\" }, { key: \"planId\" }, { key: \"expiresAt\" },\n { key: \"consumed\" }, { key: \"estimatedCredits\" }, { key: \"committable\" }, { key: \"commitRequires\" },\n { key: \"fileType\" }, { key: \"source\", nested: \"ingestSource\" },\n { key: \"records\", nested: \"ingestRecordSummary\" }, { key: \"sourcePreviews\", items: \"ingestSourcePreview\" },\n { key: \"review\", nested: \"ingestReview\" }, { key: \"warnings\" }, { key: \"nextAction\" },\n ],\n ingestSource: DTO_FIELDS.ingestSource.map((key) => ({ key })),\n ingestSourcePreview: DTO_FIELDS.ingestSourcePreview.map((key) => ({ key })),\n ingestReview: DTO_FIELDS.ingestReview.map((key) => ({ key })),\n ingestRecordSummary: DTO_FIELDS.ingestRecordSummary.map((key) => ({ key })),\n claim: [\n ...DTO_FIELDS.claim.slice(0, 14).map((key) => ({ key })),\n { key: \"metadata\", nested: \"memoryMetadata\" }, { key: \"categories\" }, { key: \"citations\", items: \"claimCitation\" },\n ],\n claimCitation: DTO_FIELDS.claimCitation.map((key) => ({ key })),\n claimHistoryEntry: DTO_FIELDS.claimHistoryEntry.map((key) => ({ key })),\n claimUpdateResult: DTO_FIELDS.claimUpdateResult.map((key) => ({ key })),\n claimDeleteReceipt: DTO_FIELDS.claimDeleteReceipt.map((key) => ({ key })),\n memoryContext: [\n { key: \"status\" }, { key: \"placement\" }, { key: \"context\" }, { key: \"messages\", items: \"contextMessage\" },\n { key: \"blocks\", items: \"contextBlock\" }, { key: \"citations\", items: \"claimCitation\" },\n { key: \"conflicts\" }, { key: \"warnings\" },\n ],\n contextBlock: [\n { key: \"authority\" }, { key: \"state\" }, { key: \"text\" }, { key: \"support_status\" },\n { key: \"citations\", items: \"claimCitation\" },\n ],\n contextMessage: DTO_FIELDS.contextMessage.map((key) => ({ key })),\n messagesCreateReceipt: [\n { key: \"event_id\" }, { key: \"status\" }, { key: \"results\", items: \"claimRef\" },\n { key: \"authority\" }, { key: \"eligibility\" },\n ],\n claimRef: DTO_FIELDS.claimRef.map((key) => ({ key })),\n representationResponse: [\n { key: \"peer_id\" }, { key: \"generated_at\" }, { key: \"count\" }, { key: \"claims\", items: \"claim\" },\n ],\n eventStatus: DTO_FIELDS.eventStatus.map((key) => ({ key })),\n queueStatus: DTO_FIELDS.queueStatus.map((key) => ({ key })),\n peer: [{ key: \"id\" }, { key: \"metadata\", nested: \"memoryMetadata\" }, { key: \"created_at\" }],\n session: [{ key: \"id\" }, { key: \"metadata\", nested: \"memoryMetadata\" }, { key: \"peer_ids\" }, { key: \"created_at\" }],\n message: DTO_FIELDS.message.map((key) => ({ key })),\n workspace: DTO_FIELDS.workspace.map((key) => ({ key })),\n memoryMetadata: [],\n Page_Claim: [{ key: \"items\", items: \"claim\" }, { key: \"total\" }, { key: \"page\" }, { key: \"size\" }],\n Page_Peer: [{ key: \"items\", items: \"peer\" }, { key: \"total\" }, { key: \"page\" }, { key: \"size\" }],\n Page_Session: [{ key: \"items\", items: \"session\" }, { key: \"total\" }, { key: \"page\" }, { key: \"size\" }],\n Page_Message: [{ key: \"items\", items: \"message\" }, { key: \"total\" }, { key: \"page\" }, { key: \"size\" }],\n Page_Workspace: [{ key: \"items\", items: \"workspace\" }, { key: \"total\" }, { key: \"page\" }, { key: \"size\" }],\n currentAccess: [\n { key: \"schemaVersion\" }, { key: \"credential\", nested: \"currentAccessCredential\" },\n { key: \"context\", nested: \"currentAccessContext\" }, { key: \"quotas\", nested: \"accountUsageQuotas\" },\n { key: \"credits\", nested: \"accountCreditBalance\" },\n ],\n currentAccessCredential: DTO_FIELDS.currentAccessCredential.map((key) => ({ key })),\n currentAccessContext: DTO_FIELDS.currentAccessContext.map((key) => ({ key })),\n accountUsageQuotas: [{ key: \"query\", nested: \"accountUsageQuotaPair\" }, { key: \"ingest\", nested: \"accountUsageQuotaPair\" }],\n accountUsageQuotaPair: [{ key: \"day\", nested: \"accountUsageQuotaCounter\" }, { key: \"month\", nested: \"accountUsageQuotaCounter\" }],\n accountUsageQuotaCounter: DTO_FIELDS.accountUsageQuotaCounter.map((key) => ({ key })),\n accountCreditBalance: DTO_FIELDS.accountCreditBalance.map((key) => ({ key })),\n};\n\nexport const SDK_RESPONSE_FIELDS = Object.freeze(Object.fromEntries(\n Object.entries(DESCRIPTORS).map(([id, fields]) => [id, Object.freeze(fields.map((field) => field.key))]),\n)) as Readonly<Record<keyof typeof DTO_FIELDS, readonly string[]>>;\n\nfor (const id of Object.keys(DTO_FIELDS) as Array<keyof typeof DTO_FIELDS>) {\n if (DTO_FIELDS[id].length !== SDK_RESPONSE_FIELDS[id].length\n || DTO_FIELDS[id].some((field, index) => SDK_RESPONSE_FIELDS[id][index] !== field)) {\n throw new Error(`TypeScript SDK response projection descriptor drift for ${id}`);\n }\n}\n\nconst REQUIRED_FIELDS: Readonly<Partial<Record<keyof typeof DTO_FIELDS, readonly string[]>>> = {\n evidenceQueryResult: [\"schemaVersion\", \"generatedAt\", \"query\", \"answer\", \"results\", \"warnings\"],\n evidenceAnswer: [\"status\", \"text\", \"citations\", \"limitations\"],\n evidenceResult: [\"rank\", \"title\", \"snippet\", \"evidence\"],\n evidenceCitation: [\"citationId\", \"excerpt\", \"sourceLabel\"],\n ingestJob: [\"id\", \"kind\", \"status\", \"createdAt\"],\n ingestJobRequest: [\"source\"],\n ingestJobResult: [\"mode\"],\n ingestJobFailure: DTO_FIELDS.ingestJobFailure,\n ingestPlan: [\"dryRun\", \"status\", \"source\", \"records\", \"review\", \"warnings\", \"nextAction\"],\n ingestSourcePreview: [\"wordCount\"],\n claim: [\"id\", \"content\", \"peer_id\", \"agent_id\", \"session_id\", \"authority\", \"state\", \"eligibility\", \"support_status\", \"valid_at\", \"invalid_at\", \"created_at\", \"updated_at\", \"head_revision\", \"categories\", \"citations\"],\n claimCitation: [\"excerpt\", \"source_label\", \"char_offset_start\", \"char_offset_end\"],\n claimHistoryEntry: [\"id\", \"event\", \"prior_claim\", \"successor_claim\", \"valid_at\", \"invalid_at\", \"created_at\", \"deterministic\"],\n claimUpdateResult: DTO_FIELDS.claimUpdateResult,\n claimDeleteReceipt: DTO_FIELDS.claimDeleteReceipt,\n memoryContext: DTO_FIELDS.memoryContext,\n contextBlock: DTO_FIELDS.contextBlock,\n contextMessage: DTO_FIELDS.contextMessage,\n messagesCreateReceipt: DTO_FIELDS.messagesCreateReceipt,\n claimRef: DTO_FIELDS.claimRef,\n representationResponse: DTO_FIELDS.representationResponse,\n eventStatus: DTO_FIELDS.eventStatus,\n queueStatus: DTO_FIELDS.queueStatus,\n peer: DTO_FIELDS.peer,\n session: DTO_FIELDS.session,\n message: DTO_FIELDS.message,\n workspace: DTO_FIELDS.workspace,\n Page_Claim: DTO_FIELDS.Page_Claim,\n Page_Peer: DTO_FIELDS.Page_Peer,\n Page_Session: DTO_FIELDS.Page_Session,\n Page_Message: DTO_FIELDS.Page_Message,\n Page_Workspace: DTO_FIELDS.Page_Workspace,\n currentAccess: DTO_FIELDS.currentAccess,\n currentAccessCredential: DTO_FIELDS.currentAccessCredential,\n currentAccessContext: DTO_FIELDS.currentAccessContext,\n accountUsageQuotas: DTO_FIELDS.accountUsageQuotas,\n accountUsageQuotaPair: DTO_FIELDS.accountUsageQuotaPair,\n accountUsageQuotaCounter: DTO_FIELDS.accountUsageQuotaCounter,\n accountCreditBalance: DTO_FIELDS.accountCreditBalance,\n};\n\nconst NULLABLE_FIELDS: Readonly<Partial<Record<keyof typeof DTO_FIELDS, readonly string[]>>> = {\n ingestJob: [\"result\", \"failure\", \"completedAt\"],\n currentAccessCredential: [\"expiresAt\"],\n claim: [\"peer_id\", \"agent_id\", \"session_id\", \"valid_at\", \"invalid_at\", \"created_at\", \"updated_at\"],\n claimHistoryEntry: [\"prior_claim\", \"successor_claim\", \"valid_at\", \"invalid_at\", \"created_at\"],\n claimUpdateResult: [\"invalid_at\"],\n peer: [\"created_at\"],\n session: [\"peer_ids\", \"created_at\"],\n message: [\"peer_id\", \"created_at\"],\n workspace: [\"created_at\"],\n};\n\nconst LITERAL_RULES: Readonly<Partial<Record<keyof typeof DTO_FIELDS, Readonly<Record<string, readonly (string | boolean)[]>>>>> = {\n evidenceQueryResult: { schemaVersion: [\"marrow-evidence-query-v2\"] },\n evidenceAnswer: { status: [\"partial\", \"insufficient_evidence\"] },\n evidenceCitation: { support: [\"quotation\", \"compression\", \"inference\"] },\n ingestJob: {\n kind: [\"url\", \"file\", \"source_deletion\"],\n status: [\"queued\", \"running\", \"succeeded\", \"failed\", \"quarantined\"],\n },\n ingestJobResult: { mode: [\"completed\", \"review_required\", \"unknown\"] },\n ingestPlan: { dryRun: [true], status: [\"preview_ready\"] },\n ingestReview: { status: [\"ready\", \"not_recommended\", \"needs_review\"] },\n claimHistoryEntry: { event: [\"ADD\", \"UPDATE\", \"DELETE\"] },\n claimUpdateResult: {\n event: [\"UPDATE\"],\n authority: [\"correction_memory\"],\n state: [\"current\"],\n eligibility: [\"eligible\"],\n },\n memoryContext: { status: [\"ready\", \"partial\", \"insufficient_evidence\", \"conflicted\", \"withheld\"] },\n messagesCreateReceipt: { status: [\"processing\"] },\n eventStatus: { status: [\"queued\", \"running\", \"succeeded\", \"failed\", \"quarantined\"] },\n message: { role: [\"user\", \"assistant\", \"system\", \"tool\"] },\n currentAccess: { schemaVersion: [\"marrow-access-v1\"] },\n currentAccessCredential: { type: [\"customer_api_key\"] },\n};\n\ntype ScalarRule = \"string\" | \"nullable-string\" | \"integer\" | \"boolean\" | \"strings\" | \"nullable-strings\";\n\nconst SCALAR_RULES: Readonly<Partial<Record<keyof typeof DTO_FIELDS, Readonly<Record<string, ScalarRule>>>>> = {\n evidenceQueryResult: { schemaVersion: \"string\", generatedAt: \"string\", query: \"string\", persona: \"string\", warnings: \"strings\" },\n operationCharge: { correlationId: \"string\", creditsCharged: \"integer\" },\n operationCreditBalance: { totalCreditsRemaining: \"integer\", monthlyCreditsRemaining: \"integer\", onboardingCreditsRemaining: \"integer\" },\n evidenceAnswer: { status: \"string\", text: \"string\", limitations: \"strings\" },\n evidenceResult: { rank: \"integer\", title: \"string\", snippet: \"string\", authority: \"string\", supportStatus: \"string\" },\n evidenceCitation: { citationId: \"integer\", excerpt: \"string\", sourceLabel: \"string\", support: \"string\", charOffsetStart: \"integer\", charOffsetEnd: \"integer\" },\n evidenceEnclosingContext: { sessionLabel: \"string\", sessionDate: \"string\", synthesis: \"string\" },\n evidenceWindowMember: { excerpt: \"string\", charOffsetStart: \"integer\", charOffsetEnd: \"integer\" },\n ingestJob: { id: \"string\", sourceId: \"string\", kind: \"string\", status: \"string\", attempts: \"integer\", maxAttempts: \"integer\", completedAt: \"nullable-string\", createdAt: \"string\", updatedAt: \"string\" },\n ingestJobRequestSource: { kind: \"string\", url: \"string\", filename: \"string\", contentType: \"string\", datedAt: \"string\", bytes: \"integer\" },\n ingestJobResult: { mode: \"string\", warnings: \"strings\" },\n ingestJobFailure: { code: \"string\", category: \"string\", stage: \"string\", message: \"string\", requestId: \"string\", retryable: \"boolean\", failedAt: \"string\", metric: \"string\", limit: \"integer\", estimate: \"integer\", unit: \"string\", limitWindow: \"string\", creditsRemaining: \"integer\", resetAt: \"nullable-string\", nextAction: \"string\" },\n ingestPlan: { dryRun: \"boolean\", status: \"string\", planId: \"string\", expiresAt: \"string\", consumed: \"boolean\", estimatedCredits: \"integer\", fileType: \"string\", warnings: \"strings\", nextAction: \"string\" },\n ingestSource: { kind: \"string\", path: \"string\", bytes: \"integer\", pages: \"integer\", lines: \"integer\", url: \"string\", title: \"string\", contentType: \"string\", datedAt: \"string\" },\n ingestSourcePreview: { title: \"string\", wordCount: \"integer\", textPreview: \"string\" },\n ingestReview: { status: \"string\", warnings: \"strings\" },\n ingestRecordSummary: { total: \"integer\", sourceExcerpts: \"integer\", facts: \"integer\", links: \"integer\" },\n claim: { id: \"string\", content: \"string\", peer_id: \"nullable-string\", agent_id: \"nullable-string\", session_id: \"nullable-string\", authority: \"string\", state: \"string\", eligibility: \"string\", support_status: \"string\", valid_at: \"nullable-string\", invalid_at: \"nullable-string\", created_at: \"nullable-string\", updated_at: \"nullable-string\", head_revision: \"string\", categories: \"strings\" },\n claimCitation: { excerpt: \"string\", source_label: \"string\", char_offset_start: \"integer\", char_offset_end: \"integer\" },\n claimHistoryEntry: { id: \"string\", event: \"string\", prior_claim: \"nullable-string\", successor_claim: \"nullable-string\", valid_at: \"nullable-string\", invalid_at: \"nullable-string\", created_at: \"nullable-string\", deterministic: \"boolean\" },\n claimUpdateResult: { id: \"string\", content: \"string\", event: \"string\", message: \"string\", valid_at: \"string\", invalid_at: \"nullable-string\", deterministic: \"boolean\", authority: \"string\", state: \"string\", eligibility: \"string\", head_revision: \"string\" },\n claimDeleteReceipt: { id: \"string\", invalid_at: \"string\", expired_at: \"string\" },\n memoryContext: { status: \"string\", placement: \"string\", context: \"string\", conflicts: \"strings\", warnings: \"strings\" },\n contextBlock: { authority: \"string\", state: \"string\", text: \"string\", support_status: \"string\" },\n contextMessage: { role: \"string\", content: \"string\" },\n messagesCreateReceipt: { event_id: \"string\", status: \"string\", authority: \"string\", eligibility: \"string\" },\n claimRef: { id: \"string\" },\n representationResponse: { peer_id: \"string\", generated_at: \"string\", count: \"integer\" },\n eventStatus: { event_id: \"string\", status: \"string\" },\n queueStatus: { queued: \"integer\", running: \"integer\", succeeded: \"integer\", failed: \"integer\" },\n peer: { id: \"string\", created_at: \"nullable-string\" },\n session: { id: \"string\", peer_ids: \"nullable-strings\", created_at: \"nullable-string\" },\n message: { role: \"string\", content: \"string\", peer_id: \"nullable-string\", created_at: \"nullable-string\" },\n workspace: { id: \"string\", created_at: \"nullable-string\" },\n Page_Claim: { total: \"integer\", page: \"integer\", size: \"integer\" },\n Page_Peer: { total: \"integer\", page: \"integer\", size: \"integer\" },\n Page_Session: { total: \"integer\", page: \"integer\", size: \"integer\" },\n Page_Message: { total: \"integer\", page: \"integer\", size: \"integer\" },\n Page_Workspace: { total: \"integer\", page: \"integer\", size: \"integer\" },\n currentAccess: { schemaVersion: \"string\" },\n currentAccessCredential: { id: \"string\", name: \"string\", type: \"string\", scopes: \"strings\", expiresAt: \"nullable-string\" },\n currentAccessContext: { allowedWorkspaces: \"strings\", allowedAudiences: \"strings\", defaultWorkspace: \"string\", defaultAudience: \"string\" },\n accountUsageQuotaCounter: { period: \"string\", periodStart: \"string\", limit: \"integer\", used: \"integer\", remaining: \"integer\", resetAt: \"string\" },\n accountCreditBalance: { monthlyPeriodStart: \"string\", monthlyCreditsGranted: \"integer\", monthlyCreditsRemaining: \"integer\", onboardingCreditsGranted: \"integer\", onboardingCreditsRemaining: \"integer\", totalCreditsGranted: \"integer\", totalCreditsRemaining: \"integer\", updatedAt: \"string\" },\n};\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value);\n}\n\nfunction projectLeaf(value: unknown, path: string): unknown {\n if (value === null || [\"string\", \"number\", \"boolean\"].includes(typeof value)) return value;\n if (Array.isArray(value)) {\n return value.map((item, index) => projectLeaf(item, `${path}[${index}]`));\n }\n throw new MarrowResponseError(`${path} must contain only public scalar values`);\n}\n\nexport function projectDto(id: keyof typeof DTO_FIELDS, value: unknown): Record<string, unknown> {\n if (!isRecord(value)) throw new MarrowResponseError(`${id} response must be an object`);\n const output: Record<string, unknown> = {};\n for (const field of DESCRIPTORS[id]) {\n if (!Object.hasOwn(value, field.key)) continue;\n const fieldValue = value[field.key];\n if (fieldValue === null) {\n if (!(NULLABLE_FIELDS[id] ?? []).includes(field.key)) {\n throw new MarrowResponseError(`${id}.${field.key} cannot be null`);\n }\n output[field.key] = null;\n } else if (field.nested !== undefined) {\n output[field.key] = projectDto(field.nested as keyof typeof DTO_FIELDS, fieldValue);\n } else if (field.items !== undefined) {\n if (!Array.isArray(fieldValue)) throw new MarrowResponseError(`${id}.${field.key} must be an array`);\n output[field.key] = fieldValue.map((item) => projectDto(field.items as keyof typeof DTO_FIELDS, item));\n } else {\n output[field.key] = projectLeaf(fieldValue, `${id}.${field.key}`);\n }\n }\n for (const field of REQUIRED_FIELDS[id] ?? []) {\n if (!Object.hasOwn(output, field)) throw new MarrowResponseError(`${id}.${field} is required`);\n }\n validateScalarFields(id, output);\n validateLiteralFields(id, output);\n validateDependentFields(id, output);\n return output;\n}\n\nfunction validateScalarFields(id: keyof typeof DTO_FIELDS, value: Record<string, unknown>): void {\n for (const [field, rule] of Object.entries(SCALAR_RULES[id] ?? {})) {\n if (!Object.hasOwn(value, field)) continue;\n const found = value[field];\n const valid = rule === \"string\"\n ? typeof found === \"string\"\n : rule === \"nullable-string\"\n ? found === null || typeof found === \"string\"\n : rule === \"integer\"\n ? typeof found === \"number\" && Number.isSafeInteger(found)\n : rule === \"boolean\"\n ? typeof found === \"boolean\"\n : rule === \"strings\"\n ? Array.isArray(found) && found.every((item) => typeof item === \"string\")\n : found === null || (Array.isArray(found) && found.every((item) => typeof item === \"string\"));\n if (!valid) throw new MarrowResponseError(`${id}.${field} has an invalid public value`);\n }\n}\n\nfunction validateLiteralFields(id: keyof typeof DTO_FIELDS, value: Record<string, unknown>): void {\n for (const [field, allowed] of Object.entries(LITERAL_RULES[id] ?? {})) {\n if (!Object.hasOwn(value, field)) continue;\n if (!allowed.includes(value[field] as string | boolean)) {\n throw new MarrowResponseError(`${id}.${field} has an invalid public literal`);\n }\n }\n}\n\nfunction validateDependentFields(id: keyof typeof DTO_FIELDS, value: Record<string, unknown>): void {\n if (id !== \"evidenceCitation\") return;\n if ((value.citationId as number) < 1) {\n throw new MarrowResponseError(\"evidenceCitation.citationId must be at least 1\");\n }\n const hasStart = Object.hasOwn(value, \"charOffsetStart\");\n const hasEnd = Object.hasOwn(value, \"charOffsetEnd\");\n if (hasStart !== hasEnd) {\n throw new MarrowResponseError(\"evidenceCitation.charOffsetStart and charOffsetEnd must be provided together\");\n }\n if (hasStart && ((value.charOffsetStart as number) < 0 || (value.charOffsetEnd as number) < 0)) {\n throw new MarrowResponseError(\"evidenceCitation character offsets must be at least 0\");\n }\n}\n\nfunction requireString(value: Record<string, unknown>, field: string, owner: string): string {\n const found = value[field];\n if (typeof found !== \"string\" || found.length === 0) throw new MarrowResponseError(`${owner}.${field} must be a non-empty string`);\n return found;\n}\n\nfunction requireNumber(value: Record<string, unknown>, field: string, owner: string): number {\n const found = value[field];\n if (typeof found !== \"number\" || !Number.isFinite(found)) throw new MarrowResponseError(`${owner}.${field} must be a number`);\n return found;\n}\n\nfunction projectPagination(value: unknown): Record<string, unknown> {\n if (!isRecord(value)) throw new MarrowResponseError(\"ingest pagination must be an object\");\n return {\n ...(typeof value.limit === \"number\" ? { limit: value.limit } : {}),\n ...(typeof value.nextCursor === \"string\" || value.nextCursor === null ? { nextCursor: value.nextCursor } : {}),\n };\n}\n\nexport function projectQueryResult(value: unknown): QueryResult {\n const result = projectDto(\"evidenceQueryResult\", value);\n if (result.schemaVersion !== \"marrow-evidence-query-v2\") {\n throw new MarrowResponseError(\"query response must use marrow-evidence-query-v2\");\n }\n requireString(result, \"generatedAt\", \"query response\");\n requireString(result, \"query\", \"query response\");\n const answer = result.answer as Record<string, unknown>;\n if (answer.status !== \"partial\" && answer.status !== \"insufficient_evidence\") {\n throw new MarrowResponseError(\"query response answer.status must be partial or insufficient_evidence\");\n }\n if (typeof answer.text !== \"string\") throw new MarrowResponseError(\"query response answer.text must be a string\");\n return result as unknown as QueryResult;\n}\n\nexport function projectIngestSubmission(value: unknown): IngestPlanResponse | IngestJobResponse {\n if (!isRecord(value)) throw new MarrowResponseError(\"ingest response must be an object\");\n if (value.schemaVersion === \"marrow-ingest-job-v1\") return projectIngestJobResponse(value);\n if (value.schemaVersion !== \"marrow-url-ingest-plan-v1\" && value.schemaVersion !== \"marrow-file-ingest-plan-v1\") {\n throw new MarrowResponseError(\"ingest response has an unsupported schemaVersion\");\n }\n if (value.mode !== \"dry-run\") throw new MarrowResponseError(\"ingest plan mode must be dry-run\");\n const plan = projectDto(\"ingestPlan\", value.plan);\n if (plan.dryRun !== true || plan.status !== \"preview_ready\") {\n throw new MarrowResponseError(\"ingest plan must be a preview_ready dry run\");\n }\n return {\n schemaVersion: value.schemaVersion,\n mode: \"dry-run\",\n plan,\n ...(Array.isArray(value.warnings) ? { warnings: projectLeaf(value.warnings, \"ingest.warnings\") } : {}),\n } as unknown as IngestPlanResponse;\n}\n\nconst JOB_STATUSES = new Set<JobStatus>([\"queued\", \"running\", \"succeeded\", \"failed\", \"quarantined\"]);\n\nexport function projectIngestJobResponse(value: unknown): IngestJobResponse {\n if (!isRecord(value) || value.schemaVersion !== \"marrow-ingest-job-v1\") {\n throw new MarrowResponseError(\"ingest job response must use marrow-ingest-job-v1\");\n }\n const job = projectDto(\"ingestJob\", value.job);\n requireString(job, \"id\", \"ingest job\");\n requireString(job, \"createdAt\", \"ingest job\");\n if (!JOB_STATUSES.has(job.status as JobStatus)) throw new MarrowResponseError(\"ingest job status is invalid\");\n return {\n schemaVersion: \"marrow-ingest-job-v1\",\n ...(value.mode === \"queued\" ? { mode: \"queued\" as const } : {}),\n ...(typeof value.created === \"boolean\" ? { created: value.created } : {}),\n job,\n } as unknown as IngestJobResponse;\n}\n\nexport function projectIngestJobList(value: unknown): IngestJobListResponse {\n if (!isRecord(value) || value.schemaVersion !== \"marrow-ingest-job-list-v1\" || !Array.isArray(value.jobs)) {\n throw new MarrowResponseError(\"ingest job list must use marrow-ingest-job-list-v1 and include jobs\");\n }\n return {\n schemaVersion: \"marrow-ingest-job-list-v1\",\n jobs: value.jobs.map((job) => projectIngestJobResponse({ schemaVersion: \"marrow-ingest-job-v1\", job }).job),\n pagination: projectPagination(value.pagination),\n };\n}\n\nexport function assertPage(value: Record<string, unknown>, owner: string): void {\n if (!Array.isArray(value.items)) throw new MarrowResponseError(`${owner}.items must be an array`);\n for (const field of [\"total\", \"page\", \"size\"]) requireNumber(value, field, owner);\n}\n\nexport function assertContext(value: Record<string, unknown>): void {\n if (![\"ready\", \"partial\", \"insufficient_evidence\", \"conflicted\", \"withheld\"].includes(String(value.status))) {\n throw new MarrowResponseError(\"memoryContext.status is invalid\");\n }\n requireString(value, \"placement\", \"memoryContext\");\n if (typeof value.context !== \"string\") throw new MarrowResponseError(\"memoryContext.context must be a string\");\n}\n"]} |
+2
-2
| { | ||
| "name": "@marrowid/sdk", | ||
| "version": "1.0.9", | ||
| "gitHead": "57dfb4f66c4595578eecc8e9d70372139647691b", | ||
| "version": "1.0.10", | ||
| "gitHead": "40f5fdc9371ce2bb098c5eb9faa1cbd5135acc72", | ||
| "description": "Typed Marrow client for evidence-grounded, correctable agent memory.", | ||
@@ -6,0 +6,0 @@ "homepage": "https://marrow.id", |
+1
-1
@@ -10,3 +10,3 @@ # @marrowid/sdk | ||
| ```bash | ||
| npm install @marrowid/sdk@1.0.9 | ||
| npm install @marrowid/sdk@1.0.10 | ||
| ``` | ||
@@ -13,0 +13,0 @@ |
Explicitly Unlicensed Item
LicenseSomething was found which is explicitly marked as unlicensed.
Explicitly Unlicensed Item
LicenseSomething was found which is explicitly marked as unlicensed.
242587
0.13%1729
0.06%