@native-knowledge/knowledge-sdk 0.0.0-stage → 0.1.0-rc.2
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.
- package/LICENSE +202 -0
- package/NOTICE +29 -0
- package/README.md +34 -2
- package/dist/agent-entry.d.ts +291 -0
- package/dist/agent-entry.js +153 -0
- package/dist/agent-guidance-error.d.ts +15 -0
- package/dist/agent-guidance-error.js +46 -0
- package/dist/auth.d.ts +124 -0
- package/dist/auth.js +165 -0
- package/dist/index.d.ts +290 -0
- package/dist/index.js +166 -0
- package/dist/internal/contracts/artifact.d.ts +120 -0
- package/dist/internal/contracts/artifact.js +103 -0
- package/dist/internal/contracts/collection-control.d.ts +160 -0
- package/dist/internal/contracts/collection-control.js +69 -0
- package/dist/internal/contracts/collection.d.ts +263 -0
- package/dist/internal/contracts/collection.js +174 -0
- package/dist/internal/contracts/common.d.ts +17 -0
- package/dist/internal/contracts/common.js +16 -0
- package/dist/internal/contracts/currentness.d.ts +477 -0
- package/dist/internal/contracts/currentness.js +221 -0
- package/dist/internal/contracts/event.d.ts +60 -0
- package/dist/internal/contracts/event.js +35 -0
- package/dist/internal/contracts/evidence.d.ts +202 -0
- package/dist/internal/contracts/evidence.js +171 -0
- package/dist/internal/contracts/index.d.ts +54 -0
- package/dist/internal/contracts/index.js +54 -0
- package/dist/internal/contracts/material-capability.d.ts +88 -0
- package/dist/internal/contracts/material-capability.js +8 -0
- package/dist/internal/contracts/material-carrier.d.ts +104 -0
- package/dist/internal/contracts/material-carrier.js +15 -0
- package/dist/internal/contracts/material-context.d.ts +28 -0
- package/dist/internal/contracts/material-context.js +9 -0
- package/dist/internal/contracts/material-read.d.ts +152 -0
- package/dist/internal/contracts/material-read.js +12 -0
- package/dist/internal/contracts/observation.d.ts +75 -0
- package/dist/internal/contracts/observation.js +39 -0
- package/dist/internal/contracts/persistence.d.ts +370 -0
- package/dist/internal/contracts/persistence.js +239 -0
- package/dist/internal/contracts/project-intent.d.ts +218 -0
- package/dist/internal/contracts/project-intent.js +121 -0
- package/dist/internal/contracts/projection.d.ts +380 -0
- package/dist/internal/contracts/projection.js +194 -0
- package/dist/internal/contracts/public-reference.d.ts +237 -0
- package/dist/internal/contracts/public-reference.js +87 -0
- package/dist/internal/contracts/reference-record.d.ts +124 -0
- package/dist/internal/contracts/reference-record.js +55 -0
- package/dist/internal/contracts/remote-file.d.ts +128 -0
- package/dist/internal/contracts/remote-file.js +159 -0
- package/dist/internal/contracts/resource-scope.d.ts +40 -0
- package/dist/internal/contracts/resource-scope.js +38 -0
- package/dist/internal/contracts/review-packet.d.ts +274 -0
- package/dist/internal/contracts/review-packet.js +61 -0
- package/dist/internal/contracts/review-plane.d.ts +90 -0
- package/dist/internal/contracts/review-plane.js +89 -0
- package/dist/internal/contracts/rich-document.d.ts +641 -0
- package/dist/internal/contracts/rich-document.js +184 -0
- package/dist/internal/contracts/runtime-compatibility.d.ts +22 -0
- package/dist/internal/contracts/runtime-compatibility.js +55 -0
- package/dist/internal/contracts/runtime.d.ts +59 -0
- package/dist/internal/contracts/runtime.js +68 -0
- package/dist/internal/contracts/scheduler.d.ts +348 -0
- package/dist/internal/contracts/scheduler.js +256 -0
- package/dist/internal/contracts/signal.d.ts +113 -0
- package/dist/internal/contracts/signal.js +77 -0
- package/dist/internal/contracts/source-governance.d.ts +375 -0
- package/dist/internal/contracts/source-governance.js +194 -0
- package/dist/internal/contracts/source.d.ts +62 -0
- package/dist/internal/contracts/source.js +32 -0
- package/dist/internal/contracts/tenant-budget.d.ts +59 -0
- package/dist/internal/contracts/tenant-budget.js +34 -0
- package/dist/internal/contracts/tenant-collection-request.d.ts +209 -0
- package/dist/internal/contracts/tenant-collection-request.js +58 -0
- package/dist/internal/contracts/tenant-collection.d.ts +199 -0
- package/dist/internal/contracts/tenant-collection.js +66 -0
- package/dist/internal/contracts/tenant-currentness.d.ts +117 -0
- package/dist/internal/contracts/tenant-currentness.js +26 -0
- package/dist/internal/contracts/tenant-management.d.ts +286 -0
- package/dist/internal/contracts/tenant-management.js +27 -0
- package/dist/internal/contracts/tenant-material-api.d.ts +584 -0
- package/dist/internal/contracts/tenant-material-api.js +46 -0
- package/dist/internal/contracts/tenant-material-json-schema.js +16 -0
- package/dist/internal/contracts/tenant-pdf-text.d.ts +27 -0
- package/dist/internal/contracts/tenant-pdf-text.js +13 -0
- package/dist/internal/contracts/tenant-project-control.d.ts +94 -0
- package/dist/internal/contracts/tenant-project-control.js +19 -0
- package/dist/internal/contracts/tenant-public-reference.d.ts +179 -0
- package/dist/internal/contracts/tenant-public-reference.js +26 -0
- package/dist/internal/contracts/tenant-resource-api.d.ts +738 -0
- package/dist/internal/contracts/tenant-resource-api.js +70 -0
- package/dist/internal/contracts/tenant-resource.d.ts +298 -0
- package/dist/internal/contracts/tenant-resource.js +118 -0
- package/dist/internal/contracts/tenant-rich-document.d.ts +317 -0
- package/dist/internal/contracts/tenant-rich-document.js +17 -0
- package/dist/internal/contracts/tenant-source-binding.d.ts +44 -0
- package/dist/internal/contracts/tenant-source-binding.js +33 -0
- package/dist/internal/contracts/tenant-source-bridge.d.ts +70 -0
- package/dist/internal/contracts/tenant-source-bridge.js +9 -0
- package/dist/internal/contracts/tenant-source-cutover.d.ts +226 -0
- package/dist/internal/contracts/tenant-source-cutover.js +26 -0
- package/dist/internal/contracts/tenant-source-document.d.ts +163 -0
- package/dist/internal/contracts/tenant-source-document.js +38 -0
- package/dist/internal/contracts/tenant-source-lease.d.ts +1 -0
- package/dist/internal/contracts/tenant-source-lease.js +5 -0
- package/dist/internal/contracts/tenant-source.d.ts +223 -0
- package/dist/internal/contracts/tenant-source.js +83 -0
- package/dist/internal/contracts/tenant-web-collection.d.ts +287 -0
- package/dist/internal/contracts/tenant-web-collection.js +118 -0
- package/dist/internal/contracts/tenant-web-content-plan.d.ts +86 -0
- package/dist/internal/contracts/tenant-web-content-plan.js +39 -0
- package/dist/internal/contracts/tenant-web-content-result.d.ts +63 -0
- package/dist/internal/contracts/tenant-web-content-result.js +15 -0
- package/dist/internal/contracts/tenant-web-content.d.ts +383 -0
- package/dist/internal/contracts/tenant-web-content.js +16 -0
- package/dist/internal/contracts/tenant-web-crawl.d.ts +310 -0
- package/dist/internal/contracts/tenant-web-crawl.js +55 -0
- package/dist/internal/contracts/tenant-web-dynamic.d.ts +698 -0
- package/dist/internal/contracts/tenant-web-dynamic.js +68 -0
- package/dist/internal/contracts/tenant-web-results.d.ts +66 -0
- package/dist/internal/contracts/tenant-web-results.js +41 -0
- package/dist/internal/contracts/tenant-web-workflow.d.ts +494 -0
- package/dist/internal/contracts/tenant-web-workflow.js +29 -0
- package/dist/internal/serving-contracts/agent-catalog.d.ts +70 -0
- package/dist/internal/serving-contracts/agent-catalog.js +56 -0
- package/dist/internal/serving-contracts/agent-entry.d.ts +13148 -0
- package/dist/internal/serving-contracts/agent-entry.js +57 -0
- package/dist/internal/serving-contracts/agent-guidance-shapes.d.ts +263 -0
- package/dist/internal/serving-contracts/agent-guidance-shapes.js +12 -0
- package/dist/internal/serving-contracts/agent-input-hints.d.ts +24 -0
- package/dist/internal/serving-contracts/agent-input-hints.js +104 -0
- package/dist/internal/serving-contracts/body-search.d.ts +231 -0
- package/dist/internal/serving-contracts/body-search.js +16 -0
- package/dist/internal/serving-contracts/consumer.d.ts +989 -0
- package/dist/internal/serving-contracts/consumer.js +45 -0
- package/dist/internal/serving-contracts/core.d.ts +333 -0
- package/dist/internal/serving-contracts/core.js +76 -0
- package/dist/internal/serving-contracts/http.d.ts +2874 -0
- package/dist/internal/serving-contracts/http.js +64 -0
- package/dist/internal/serving-contracts/index.d.ts +24 -0
- package/dist/internal/serving-contracts/index.js +25 -0
- package/dist/internal/serving-contracts/management.d.ts +424 -0
- package/dist/internal/serving-contracts/management.js +15 -0
- package/dist/internal/serving-contracts/material-capabilities.d.ts +508 -0
- package/dist/internal/serving-contracts/material-capabilities.js +14 -0
- package/dist/internal/serving-contracts/material-index-status.d.ts +55 -0
- package/dist/internal/serving-contracts/material-index-status.js +5 -0
- package/dist/internal/serving-contracts/mcp.d.ts +2218 -0
- package/dist/internal/serving-contracts/mcp.js +140 -0
- package/dist/internal/serving-contracts/tenant-governance.d.ts +236 -0
- package/dist/internal/serving-contracts/tenant-governance.js +13 -0
- package/dist/internal/serving-contracts/tenant-management.d.ts +6276 -0
- package/dist/internal/serving-contracts/tenant-management.js +89 -0
- package/dist/internal/serving-contracts/tenant-project.d.ts +7550 -0
- package/dist/internal/serving-contracts/tenant-project.js +39 -0
- package/dist/internal/serving-contracts/tenant-runtime.d.ts +9674 -0
- package/dist/internal/serving-contracts/tenant-runtime.js +37 -0
- package/dist/internal/serving-contracts/tenant-session.d.ts +87 -0
- package/dist/internal/serving-contracts/tenant-session.js +8 -0
- package/dist/internal/serving-contracts/tenant-web-content.d.ts +4606 -0
- package/dist/internal/serving-contracts/tenant-web-content.js +20 -0
- package/dist/internal/serving-contracts/tenant-web-crawl.d.ts +2958 -0
- package/dist/internal/serving-contracts/tenant-web-crawl.js +13 -0
- package/dist/internal/serving-contracts/tenant-web-dynamic.d.ts +3902 -0
- package/dist/internal/serving-contracts/tenant-web-dynamic.js +20 -0
- package/dist/internal/serving-contracts/tenant-web-workflow.d.ts +5750 -0
- package/dist/internal/serving-contracts/tenant-web-workflow.js +36 -0
- package/dist/internal/serving-contracts/tenant-web.d.ts +6418 -0
- package/dist/internal/serving-contracts/tenant-web.js +53 -0
- package/dist/internal/serving-contracts/tenant-workspace.d.ts +6451 -0
- package/dist/internal/serving-contracts/tenant-workspace.js +28 -0
- package/dist/internal/serving-contracts/workflow.d.ts +439 -0
- package/dist/internal/serving-contracts/workflow.js +37 -0
- package/dist/material-stream.d.ts +18 -0
- package/dist/material-stream.js +29 -0
- package/dist/oauth.d.ts +268 -0
- package/dist/oauth.js +539 -0
- package/dist/resource.d.ts +88 -0
- package/dist/resource.js +123 -0
- package/dist/session.d.ts +4 -0
- package/dist/session.js +3 -0
- package/dist/tenant-client.d.ts +169 -0
- package/dist/tenant-client.js +58 -0
- package/dist/tenant-management.d.ts +240 -0
- package/dist/tenant-management.js +149 -0
- package/dist/tenant-project.d.ts +57 -0
- package/dist/tenant-project.js +63 -0
- package/dist/tenant-runtime.d.ts +174 -0
- package/dist/tenant-runtime.js +17 -0
- package/dist/tenant-web-content.d.ts +44 -0
- package/dist/tenant-web-content.js +70 -0
- package/dist/tenant-web-crawl.d.ts +42 -0
- package/dist/tenant-web-crawl.js +39 -0
- package/dist/tenant-web-dynamic.d.ts +42 -0
- package/dist/tenant-web-dynamic.js +39 -0
- package/dist/tenant-web-workflow.d.ts +43 -0
- package/dist/tenant-web-workflow.js +63 -0
- package/dist/tenant-web.d.ts +42 -0
- package/dist/tenant-web.js +39 -0
- package/dist/tenant-workspace.d.ts +36 -0
- package/dist/tenant-workspace.js +21 -0
- package/dist/token-provider.d.ts +14 -0
- package/dist/token-provider.js +21 -0
- package/package.json +45 -3
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { type MaterialStreamOptions } from './material-stream.js';
|
|
3
|
+
export * from './resource.js';
|
|
4
|
+
export type { MaterialStreamOptions, MaterialStreamResponse } from './material-stream.js';
|
|
5
|
+
export * from './oauth.js';
|
|
6
|
+
import { type MaterialOutboxWindow, type ServingArtifactListResponse, type ServingArtifactPageResponse, type ServingArtifactMaterialPageResponse, type ServingArtifactMaterialResponse, type ServingMaterialPageResponse, type ServingMaterialRoutePageResponse, type ServingMaterialPartitionsResponse, type ServingMaterialPartitionPageResponse, type ServingMaterialSearchResponse, type ServingArtifactResponse, type ServingContentDecisionResponse, type ServingCurrentnessResponse, type ServingEvidenceListResponse, type ServingEvidencePageResponse, type ServingEvidencePresentationResponse, type ServingEvidenceResponse, type ServingHealthResponse, type ServingReferenceListResponse, type ServingReferenceLookupResponse, type ServingReferenceResponse, type ServingReferenceMaterialPageResponse, type ServingReferenceMaterialResponse, type ReferenceLookupFilter, type ServingProjectIntentResponse, type ServingProjectSourceListResponse, type ServingProjectSourceResponse, type ServingSourceResponse } from './internal/serving-contracts/index.js';
|
|
7
|
+
export interface KnowledgeServingClientOptions {
|
|
8
|
+
baseUrl: string;
|
|
9
|
+
token: string;
|
|
10
|
+
projectKey: string;
|
|
11
|
+
fetchImpl?: typeof fetch;
|
|
12
|
+
allowInsecureHttp?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface ServingContentResponse {
|
|
15
|
+
decision: ServingContentDecisionResponse['decision'];
|
|
16
|
+
descriptor: {
|
|
17
|
+
contentHash: string;
|
|
18
|
+
mediaType: string;
|
|
19
|
+
byteLength: number;
|
|
20
|
+
};
|
|
21
|
+
content: Buffer;
|
|
22
|
+
}
|
|
23
|
+
export declare class KnowledgeServingClient {
|
|
24
|
+
readonly projectKey: string;
|
|
25
|
+
private readonly root;
|
|
26
|
+
private readonly basePath;
|
|
27
|
+
private readonly token;
|
|
28
|
+
private readonly fetchImpl;
|
|
29
|
+
constructor(options: KnowledgeServingClientOptions);
|
|
30
|
+
private url;
|
|
31
|
+
private request;
|
|
32
|
+
private json;
|
|
33
|
+
health(): Promise<ServingHealthResponse>;
|
|
34
|
+
listArtifacts(options?: {
|
|
35
|
+
kind?: string;
|
|
36
|
+
limit?: number;
|
|
37
|
+
}): Promise<ServingArtifactListResponse>;
|
|
38
|
+
pageArtifacts(options?: {
|
|
39
|
+
kind?: string;
|
|
40
|
+
limit?: number;
|
|
41
|
+
after?: string;
|
|
42
|
+
}): Promise<ServingArtifactPageResponse>;
|
|
43
|
+
pageArtifactMaterials(options?: {
|
|
44
|
+
kind?: string;
|
|
45
|
+
limit?: number;
|
|
46
|
+
after?: string;
|
|
47
|
+
}): Promise<ServingArtifactMaterialPageResponse>;
|
|
48
|
+
getMaterialOutboxWindow(): Promise<MaterialOutboxWindow>;
|
|
49
|
+
pageMaterials(options?: {
|
|
50
|
+
limit?: number;
|
|
51
|
+
after?: string;
|
|
52
|
+
}): Promise<ServingMaterialPageResponse>;
|
|
53
|
+
pageRouteMaterials(routeId: string, options?: {
|
|
54
|
+
after?: string;
|
|
55
|
+
limit?: number;
|
|
56
|
+
}): Promise<ServingMaterialRoutePageResponse>;
|
|
57
|
+
pageMaterialPartitions(options?: {
|
|
58
|
+
afterRouteId?: string;
|
|
59
|
+
limit?: number;
|
|
60
|
+
}): Promise<ServingMaterialPartitionsResponse>;
|
|
61
|
+
pageMaterialPartition(partition: 'OWNER' | 'LEGACY', options?: {
|
|
62
|
+
after?: string;
|
|
63
|
+
limit?: number;
|
|
64
|
+
}): Promise<ServingMaterialPartitionPageResponse>;
|
|
65
|
+
searchMaterials(query: string, options?: {
|
|
66
|
+
afterId?: number;
|
|
67
|
+
limit?: number;
|
|
68
|
+
resourceType?: string;
|
|
69
|
+
sourceProjectKey?: string;
|
|
70
|
+
}): Promise<ServingMaterialSearchResponse>;
|
|
71
|
+
getArtifactMaterial(ref: string): Promise<ServingArtifactMaterialResponse>;
|
|
72
|
+
getArtifact(ref: string): Promise<ServingArtifactResponse>;
|
|
73
|
+
listEvidence(options?: {
|
|
74
|
+
sourceId?: string;
|
|
75
|
+
limit?: number;
|
|
76
|
+
}): Promise<ServingEvidenceListResponse>;
|
|
77
|
+
/** 通用采集文件目录按 ref 续页;fileDecision 控制原文件,contentDecision 控制受治理正文。 */
|
|
78
|
+
pageEvidence(options?: {
|
|
79
|
+
sourceId?: string;
|
|
80
|
+
after?: string;
|
|
81
|
+
limit?: number;
|
|
82
|
+
}): Promise<ServingEvidencePageResponse>;
|
|
83
|
+
getEvidencePresentation(ref: string): Promise<ServingEvidencePresentationResponse>;
|
|
84
|
+
getEvidence(ref: string): Promise<ServingEvidenceResponse>;
|
|
85
|
+
getProjectIntent(): Promise<ServingProjectIntentResponse>;
|
|
86
|
+
listProjectSources(options?: {
|
|
87
|
+
enabled?: boolean;
|
|
88
|
+
limit?: number;
|
|
89
|
+
}): Promise<ServingProjectSourceListResponse>;
|
|
90
|
+
getProjectSource(sourceId: string): Promise<ServingProjectSourceResponse>;
|
|
91
|
+
getGovernanceSource(sourceId: string): Promise<ServingSourceResponse>;
|
|
92
|
+
getSource(sourceId: string): Promise<ServingSourceResponse>;
|
|
93
|
+
getCurrentness(ref: string): Promise<ServingCurrentnessResponse>;
|
|
94
|
+
listReferences(corpusKey: string, options?: {
|
|
95
|
+
recordType?: string;
|
|
96
|
+
limit?: number;
|
|
97
|
+
}): Promise<ServingReferenceListResponse>;
|
|
98
|
+
getReference(corpusKey: string, ref: string): Promise<ServingReferenceResponse>;
|
|
99
|
+
pageReferenceMaterials(options?: {
|
|
100
|
+
limit?: number;
|
|
101
|
+
after?: string;
|
|
102
|
+
}): Promise<ServingReferenceMaterialPageResponse>;
|
|
103
|
+
getReferenceMaterial(ref: string): Promise<ServingReferenceMaterialResponse>;
|
|
104
|
+
lookupReferences(options: ReferenceLookupFilter): Promise<ServingReferenceLookupResponse>;
|
|
105
|
+
private rawContent;
|
|
106
|
+
getMaterialContract(): Promise<{
|
|
107
|
+
schemaVersion: 2;
|
|
108
|
+
projectKey: string;
|
|
109
|
+
authentication: "API_KEY";
|
|
110
|
+
resourceTypeMode: "OPEN_IDENTIFIER";
|
|
111
|
+
capabilitiesEndpoint: "/v3/material-capabilities";
|
|
112
|
+
capabilityPageEndpoint: "/v3/material-page";
|
|
113
|
+
fileEndpoint: "/v2/material-file";
|
|
114
|
+
mediaPageEndpoint: "/v3/material-media-page";
|
|
115
|
+
indexStatusEndpoint: "/v3/material-index-status";
|
|
116
|
+
fileMethods: ["GET", "HEAD"];
|
|
117
|
+
fileRange: "SINGLE";
|
|
118
|
+
}>;
|
|
119
|
+
getMaterialCapabilities(ref: string): Promise<{
|
|
120
|
+
schemaVersion: 2;
|
|
121
|
+
projectKey: string;
|
|
122
|
+
material: {
|
|
123
|
+
item: {
|
|
124
|
+
ref: string;
|
|
125
|
+
resourceType: string;
|
|
126
|
+
sourceProjectKey: string;
|
|
127
|
+
identityHash: string;
|
|
128
|
+
kind: string;
|
|
129
|
+
classification: "TENANT" | "PUBLIC" | "PUBLIC_METADATA" | "INTERNAL" | "FDE_INTERNAL" | "ACCESS_CONTROLLED" | "UNKNOWN";
|
|
130
|
+
mediaType: string;
|
|
131
|
+
decision: {
|
|
132
|
+
schemaVersion: 1;
|
|
133
|
+
action: "ALLOW" | "DENY";
|
|
134
|
+
reasonCodes: ("NOT_FOUND" | "UNAVAILABLE" | "INTEGRITY_MISMATCH" | "CONTENT_ACCESS_DENIED" | "UNSUPPORTED_RESOURCE")[];
|
|
135
|
+
assessedAt: string;
|
|
136
|
+
};
|
|
137
|
+
};
|
|
138
|
+
materialAccess: {
|
|
139
|
+
schemaVersion: 1;
|
|
140
|
+
action: "ALLOW" | "DENY";
|
|
141
|
+
reasonCodes: ("NOT_FOUND" | "UNAVAILABLE" | "INTEGRITY_MISMATCH" | "CONTENT_ACCESS_DENIED" | "UNSUPPORTED_RESOURCE")[];
|
|
142
|
+
assessedAt: string;
|
|
143
|
+
};
|
|
144
|
+
representation: {
|
|
145
|
+
state: "MISSING" | "UNSUPPORTED" | "INTEGRITY_MISMATCH" | "READY" | "DENIED";
|
|
146
|
+
format: "JSON" | "BYTES";
|
|
147
|
+
transfer: "UNSUPPORTED" | "VERIFIED_STREAM" | "BUFFERED_JSON";
|
|
148
|
+
contentHash: string | null;
|
|
149
|
+
mediaType: string;
|
|
150
|
+
byteLength: number | null;
|
|
151
|
+
methods: ("GET" | "HEAD")[];
|
|
152
|
+
range: "NONE" | "SINGLE";
|
|
153
|
+
verification: "ON_READ";
|
|
154
|
+
verificationChunkBytes: number | null;
|
|
155
|
+
};
|
|
156
|
+
};
|
|
157
|
+
}>;
|
|
158
|
+
pageMaterialCapabilities(options?: {
|
|
159
|
+
limit?: number;
|
|
160
|
+
after?: string;
|
|
161
|
+
resourceType?: string;
|
|
162
|
+
sourceProjectKey?: string;
|
|
163
|
+
refPrefix?: string;
|
|
164
|
+
}): Promise<{
|
|
165
|
+
schemaVersion: 2;
|
|
166
|
+
projectKey: string;
|
|
167
|
+
items: {
|
|
168
|
+
item: {
|
|
169
|
+
ref: string;
|
|
170
|
+
resourceType: string;
|
|
171
|
+
sourceProjectKey: string;
|
|
172
|
+
identityHash: string;
|
|
173
|
+
kind: string;
|
|
174
|
+
classification: "TENANT" | "PUBLIC" | "PUBLIC_METADATA" | "INTERNAL" | "FDE_INTERNAL" | "ACCESS_CONTROLLED" | "UNKNOWN";
|
|
175
|
+
mediaType: string;
|
|
176
|
+
decision: {
|
|
177
|
+
schemaVersion: 1;
|
|
178
|
+
action: "ALLOW" | "DENY";
|
|
179
|
+
reasonCodes: ("NOT_FOUND" | "UNAVAILABLE" | "INTEGRITY_MISMATCH" | "CONTENT_ACCESS_DENIED" | "UNSUPPORTED_RESOURCE")[];
|
|
180
|
+
assessedAt: string;
|
|
181
|
+
};
|
|
182
|
+
};
|
|
183
|
+
materialAccess: {
|
|
184
|
+
schemaVersion: 1;
|
|
185
|
+
action: "ALLOW" | "DENY";
|
|
186
|
+
reasonCodes: ("NOT_FOUND" | "UNAVAILABLE" | "INTEGRITY_MISMATCH" | "CONTENT_ACCESS_DENIED" | "UNSUPPORTED_RESOURCE")[];
|
|
187
|
+
assessedAt: string;
|
|
188
|
+
};
|
|
189
|
+
representation: {
|
|
190
|
+
state: "MISSING" | "UNSUPPORTED" | "INTEGRITY_MISMATCH" | "READY" | "DENIED";
|
|
191
|
+
format: "JSON" | "BYTES";
|
|
192
|
+
transfer: "UNSUPPORTED" | "VERIFIED_STREAM" | "BUFFERED_JSON";
|
|
193
|
+
contentHash: string | null;
|
|
194
|
+
mediaType: string;
|
|
195
|
+
byteLength: number | null;
|
|
196
|
+
methods: ("GET" | "HEAD")[];
|
|
197
|
+
range: "NONE" | "SINGLE";
|
|
198
|
+
verification: "ON_READ";
|
|
199
|
+
verificationChunkBytes: number | null;
|
|
200
|
+
};
|
|
201
|
+
}[];
|
|
202
|
+
nextAfter: string | null;
|
|
203
|
+
}>;
|
|
204
|
+
pageMaterialMedia(ref: string, options?: {
|
|
205
|
+
afterOrdinal?: number;
|
|
206
|
+
limit?: number;
|
|
207
|
+
documentRef?: string;
|
|
208
|
+
}): Promise<{
|
|
209
|
+
schemaVersion: 2;
|
|
210
|
+
projectKey: string;
|
|
211
|
+
ref: string;
|
|
212
|
+
sourceContentHash: string;
|
|
213
|
+
documentRef: string | null;
|
|
214
|
+
documentContentHash: string | null;
|
|
215
|
+
state: "MISSING" | "UNSUPPORTED" | "INTEGRITY_MISMATCH" | "READY" | "DENIED";
|
|
216
|
+
items: {
|
|
217
|
+
ordinal: number;
|
|
218
|
+
kind: "IMAGE" | "AUDIO" | "VIDEO";
|
|
219
|
+
sourceUrl: string;
|
|
220
|
+
canonicalUrl: string | null;
|
|
221
|
+
availability: "UNAVAILABLE" | "MIRRORED" | "REMOTE_ONLY";
|
|
222
|
+
mediaRef: string | null;
|
|
223
|
+
contentHash: string | null;
|
|
224
|
+
mediaType: string | null;
|
|
225
|
+
byteLength: number | null;
|
|
226
|
+
state: "MISSING" | "UNAVAILABLE" | "INTEGRITY_MISMATCH" | "READY" | "DENIED" | "REMOTE_ONLY";
|
|
227
|
+
representation: {
|
|
228
|
+
state: "MISSING" | "UNSUPPORTED" | "INTEGRITY_MISMATCH" | "READY" | "DENIED";
|
|
229
|
+
format: "JSON" | "BYTES";
|
|
230
|
+
transfer: "UNSUPPORTED" | "VERIFIED_STREAM" | "BUFFERED_JSON";
|
|
231
|
+
contentHash: string | null;
|
|
232
|
+
mediaType: string;
|
|
233
|
+
byteLength: number | null;
|
|
234
|
+
methods: ("GET" | "HEAD")[];
|
|
235
|
+
range: "NONE" | "SINGLE";
|
|
236
|
+
verification: "ON_READ";
|
|
237
|
+
verificationChunkBytes: number | null;
|
|
238
|
+
} | null;
|
|
239
|
+
}[];
|
|
240
|
+
nextAfterOrdinal: number | null;
|
|
241
|
+
}>;
|
|
242
|
+
getMaterialIndexStatus(options?: {
|
|
243
|
+
afterSourceKey?: string;
|
|
244
|
+
afterNodeId?: string;
|
|
245
|
+
sourceProjectKey?: string;
|
|
246
|
+
limit?: number;
|
|
247
|
+
}): Promise<{
|
|
248
|
+
schemaVersion: 2;
|
|
249
|
+
projectKey: string;
|
|
250
|
+
queryCoverage: "DESCRIPTIVE_METADATA_V1";
|
|
251
|
+
indexedFields: ["TITLE", "SUMMARY"];
|
|
252
|
+
bodyIndexed: false;
|
|
253
|
+
semanticIndexed: false;
|
|
254
|
+
items: {
|
|
255
|
+
sourceProjectKey: string;
|
|
256
|
+
nodeId: string;
|
|
257
|
+
directoryThroughSeq: number;
|
|
258
|
+
searchThroughSeq: number | null;
|
|
259
|
+
observedMaxSeq: number | null;
|
|
260
|
+
checkpointUpdatedAt: string | null;
|
|
261
|
+
state: "PARTIAL_BACKFILL" | "SYNCED_AS_OF_CHECKPOINT";
|
|
262
|
+
}[];
|
|
263
|
+
nextAfter: {
|
|
264
|
+
sourceProjectKey: string;
|
|
265
|
+
nodeId: string;
|
|
266
|
+
} | null;
|
|
267
|
+
}>;
|
|
268
|
+
openMaterialStream(ref: string, options?: MaterialStreamOptions): Promise<import("./material-stream.js").MaterialStreamResponse>;
|
|
269
|
+
getMaterialFile(ref: string): Promise<ServingContentResponse | ServingContentDecisionResponse>;
|
|
270
|
+
getContent(ref: string): Promise<ServingContentResponse | ServingContentDecisionResponse>;
|
|
271
|
+
getArtifactFile(ref: string): Promise<ServingContentResponse | ServingContentDecisionResponse>;
|
|
272
|
+
getMedia(ref: string): Promise<ServingContentResponse | ServingContentDecisionResponse>;
|
|
273
|
+
getEvidenceMedia(ref: string): Promise<ServingContentResponse | ServingContentDecisionResponse>;
|
|
274
|
+
/** 读取未经知识审核的原始 Evidence 文件;调用方仍需自己处理其时效与适用性。 */
|
|
275
|
+
getEvidenceFile(ref: string): Promise<ServingContentResponse | ServingContentDecisionResponse>;
|
|
276
|
+
}
|
|
277
|
+
export * from './tenant-management.js';
|
|
278
|
+
export * from './tenant-workspace.js';
|
|
279
|
+
export * from './tenant-project.js';
|
|
280
|
+
export * from './tenant-runtime.js';
|
|
281
|
+
export * from './tenant-web.js';
|
|
282
|
+
export * from './tenant-web-crawl.js';
|
|
283
|
+
export * from './tenant-web-dynamic.js';
|
|
284
|
+
export * from './tenant-web-content.js';
|
|
285
|
+
export * from './tenant-web-workflow.js';
|
|
286
|
+
export * from './auth.js';
|
|
287
|
+
export * from './token-provider.js';
|
|
288
|
+
export * from './tenant-client.js';
|
|
289
|
+
export * from './agent-entry.js';
|
|
290
|
+
export * from './agent-guidance-error.js';
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { materialStream } from './material-stream.js';
|
|
2
|
+
export * from './resource.js';
|
|
3
|
+
import { apiKeyMaterialContractSchema, materialCapabilityResponseSchema, materialCapabilityPageSchema, materialMediaCapabilityPageSchema, materialIndexStatusSchema } from './internal/serving-contracts/index.js';
|
|
4
|
+
import { createHash } from 'node:crypto';
|
|
5
|
+
// OAuth 完整文件读取复用本包导出入口,避免每个消费者自行拼接鉴权 URL。
|
|
6
|
+
export * from './oauth.js';
|
|
7
|
+
import { projectKeySchema } from './internal/contracts/index.js';
|
|
8
|
+
import { materialOutboxWindowSchema, servingApiErrorSchema, servingArtifactListResponseSchema, servingArtifactPageResponseSchema, servingArtifactMaterialPageResponseSchema, servingArtifactMaterialResponseSchema, servingMaterialPageResponseSchema, servingMaterialRoutePageResponseSchema, servingMaterialPartitionsResponseSchema, servingMaterialPartitionPageResponseSchema, servingMaterialSearchResponseSchema, servingArtifactResponseSchema, servingContentDecisionResponseSchema, servingCurrentnessResponseSchema, servingEvidenceListResponseSchema, servingEvidencePageResponseSchema, servingEvidencePresentationResponseSchema, servingEvidenceResponseSchema, servingHealthResponseSchema, servingReferenceListResponseSchema, servingReferenceLookupResponseSchema, servingReferenceResponseSchema, servingReferenceMaterialPageResponseSchema, servingReferenceMaterialResponseSchema, servingProjectIntentResponseSchema, servingProjectSourceListResponseSchema, servingProjectSourceResponseSchema, servingSourceResponseSchema, } from './internal/serving-contracts/index.js';
|
|
9
|
+
function sha(bytes) { return `sha256:${createHash('sha256').update(bytes).digest('hex')}`; }
|
|
10
|
+
function baseUrl(value, allowInsecureHttp) {
|
|
11
|
+
const url = new URL(value);
|
|
12
|
+
if (url.username || url.password || url.search || url.hash)
|
|
13
|
+
throw new Error('SERVING_SDK_BASE_URL_INVALID');
|
|
14
|
+
if (!['http:', 'https:'].includes(url.protocol))
|
|
15
|
+
throw new Error('SERVING_SDK_SCHEME_INVALID');
|
|
16
|
+
if (url.protocol === 'http:' && !allowInsecureHttp)
|
|
17
|
+
throw new Error('SERVING_SDK_HTTPS_REQUIRED');
|
|
18
|
+
url.pathname = url.pathname.replace(/\/+$/, '');
|
|
19
|
+
return url;
|
|
20
|
+
}
|
|
21
|
+
export class KnowledgeServingClient {
|
|
22
|
+
projectKey;
|
|
23
|
+
root;
|
|
24
|
+
basePath;
|
|
25
|
+
token;
|
|
26
|
+
fetchImpl;
|
|
27
|
+
constructor(options) { this.projectKey = projectKeySchema.parse(options.projectKey); if (!options.token || options.token.length < 16 || options.token.length > 4096)
|
|
28
|
+
throw new Error('SERVING_SDK_TOKEN_INVALID'); this.token = options.token; this.root = baseUrl(options.baseUrl, options.allowInsecureHttp === true); this.basePath = this.root.pathname === '/' ? '' : this.root.pathname.replace(/\/+$/, ''); this.fetchImpl = options.fetchImpl ?? fetch; }
|
|
29
|
+
url(pathname, params = {}) { const url = new URL(`${this.basePath}${pathname}`, this.root.origin); url.searchParams.set('projectKey', this.projectKey); for (const [key, value] of Object.entries(params))
|
|
30
|
+
if (value !== undefined)
|
|
31
|
+
url.searchParams.set(key, String(value)); return url; }
|
|
32
|
+
async request(url) { let response; try {
|
|
33
|
+
response = await this.fetchImpl(url, { method: 'GET', headers: { authorization: `Bearer ${this.token}`, accept: 'application/json,application/octet-stream' }, redirect: 'error' });
|
|
34
|
+
}
|
|
35
|
+
catch {
|
|
36
|
+
throw new Error('SERVING_SDK_TRANSPORT_FAILURE');
|
|
37
|
+
} return response; }
|
|
38
|
+
async json(url, schema) { const response = await this.request(url); let raw; try {
|
|
39
|
+
raw = await response.json();
|
|
40
|
+
}
|
|
41
|
+
catch {
|
|
42
|
+
throw new Error('SERVING_SDK_RESPONSE_INVALID');
|
|
43
|
+
} if (!response.ok) {
|
|
44
|
+
const parsed = servingApiErrorSchema.safeParse(raw);
|
|
45
|
+
if (parsed.success)
|
|
46
|
+
throw new Error(parsed.data.errorCode);
|
|
47
|
+
throw new Error('SERVING_SDK_HTTP_FAILURE');
|
|
48
|
+
} return schema.parse(raw); }
|
|
49
|
+
health() { const url = new URL(`${this.basePath}/healthz`, this.root.origin); return this.json(url, servingHealthResponseSchema); }
|
|
50
|
+
listArtifacts(options = {}) { return this.json(this.url('/v1/artifacts', options), servingArtifactListResponseSchema); }
|
|
51
|
+
pageArtifacts(options = {}) { return this.json(this.url('/v2/artifact-page', options), servingArtifactPageResponseSchema); }
|
|
52
|
+
pageArtifactMaterials(options = {}) { return this.json(this.url('/v2/artifact-material-page', options), servingArtifactMaterialPageResponseSchema); }
|
|
53
|
+
getMaterialOutboxWindow() { return this.json(this.url('/v2/material-outbox-window'), materialOutboxWindowSchema); }
|
|
54
|
+
pageMaterials(options = {}) { return this.json(this.url('/v2/material-page', options), servingMaterialPageResponseSchema); }
|
|
55
|
+
pageRouteMaterials(routeId, options = {}) { return this.json(this.url('/v2/material-route-page', { routeId, ...options }), servingMaterialRoutePageResponseSchema); }
|
|
56
|
+
pageMaterialPartitions(options = {}) { return this.json(this.url('/v3/material-partitions', options), servingMaterialPartitionsResponseSchema); }
|
|
57
|
+
pageMaterialPartition(partition, options = {}) { return this.json(this.url('/v3/material-partition-page', { partition, ...options }), servingMaterialPartitionPageResponseSchema); }
|
|
58
|
+
searchMaterials(query, options = {}) { return this.json(this.url('/v2/material-search', { query, ...options }), servingMaterialSearchResponseSchema); }
|
|
59
|
+
getArtifactMaterial(ref) { return this.json(this.url('/v2/artifact-material', { ref }), servingArtifactMaterialResponseSchema); }
|
|
60
|
+
getArtifact(ref) { return this.json(this.url('/v1/artifact', { ref }), servingArtifactResponseSchema); }
|
|
61
|
+
listEvidence(options = {}) { return this.json(this.url('/v1/evidence-list', options), servingEvidenceListResponseSchema); }
|
|
62
|
+
/** 通用采集文件目录按 ref 续页;fileDecision 控制原文件,contentDecision 控制受治理正文。 */
|
|
63
|
+
pageEvidence(options = {}) { return this.json(this.url('/v1/evidence-page', options), servingEvidencePageResponseSchema); }
|
|
64
|
+
async getEvidencePresentation(ref) {
|
|
65
|
+
const response = await this.request(this.url('/v2/evidence-presentation', { ref }));
|
|
66
|
+
let raw;
|
|
67
|
+
try {
|
|
68
|
+
raw = await response.json();
|
|
69
|
+
}
|
|
70
|
+
catch {
|
|
71
|
+
throw new Error('SERVING_SDK_RESPONSE_INVALID');
|
|
72
|
+
}
|
|
73
|
+
const result = servingEvidencePresentationResponseSchema.safeParse(raw);
|
|
74
|
+
if (result.success)
|
|
75
|
+
return result.data;
|
|
76
|
+
const error = servingApiErrorSchema.safeParse(raw);
|
|
77
|
+
if (error.success)
|
|
78
|
+
throw new Error(error.data.errorCode);
|
|
79
|
+
throw new Error('SERVING_SDK_RESPONSE_INVALID');
|
|
80
|
+
}
|
|
81
|
+
getEvidence(ref) { return this.json(this.url('/v1/evidence', { ref }), servingEvidenceResponseSchema); }
|
|
82
|
+
getProjectIntent() { return this.json(this.url('/v1/project-intent'), servingProjectIntentResponseSchema); }
|
|
83
|
+
listProjectSources(options = {}) { return this.json(this.url('/v1/project-sources', { ...(options.enabled !== undefined ? { enabled: String(options.enabled) } : {}), ...(options.limit !== undefined ? { limit: options.limit } : {}) }), servingProjectSourceListResponseSchema); }
|
|
84
|
+
getProjectSource(sourceId) { return this.json(this.url('/v1/project-source', { sourceId }), servingProjectSourceResponseSchema); }
|
|
85
|
+
getGovernanceSource(sourceId) { return this.json(this.url('/v1/governance-source', { sourceId }), servingSourceResponseSchema); }
|
|
86
|
+
getSource(sourceId) { return this.getGovernanceSource(sourceId); }
|
|
87
|
+
getCurrentness(ref) { return this.json(this.url('/v1/currentness', { ref }), servingCurrentnessResponseSchema); }
|
|
88
|
+
listReferences(corpusKey, options = {}) { return this.json(this.url('/v1/references', { corpusKey, ...options }), servingReferenceListResponseSchema); }
|
|
89
|
+
getReference(corpusKey, ref) { return this.json(this.url('/v1/reference', { corpusKey, ref }), servingReferenceResponseSchema); }
|
|
90
|
+
pageReferenceMaterials(options = {}) { return this.json(this.url('/v2/reference-material-page', options), servingReferenceMaterialPageResponseSchema); }
|
|
91
|
+
getReferenceMaterial(ref) { return this.json(this.url('/v2/reference-material', { ref }), servingReferenceMaterialResponseSchema); }
|
|
92
|
+
lookupReferences(options) {
|
|
93
|
+
const url = this.url('/v1/reference-lookup', { ...(options.jurisdiction ? { jurisdiction: options.jurisdiction } : {}), ...(options.effectiveAt ? { effectiveAt: options.effectiveAt } : {}), ...(options.limit !== undefined ? { limit: options.limit } : {}) });
|
|
94
|
+
for (const value of options.corpusKeys ?? [])
|
|
95
|
+
url.searchParams.append('corpusKey', value);
|
|
96
|
+
for (const value of options.recordTypes ?? [])
|
|
97
|
+
url.searchParams.append('recordType', value);
|
|
98
|
+
for (const [key, values] of Object.entries(options.selectors ?? {}).sort(([a], [b]) => a.localeCompare(b)))
|
|
99
|
+
for (const value of values)
|
|
100
|
+
url.searchParams.append(`selector.${key}`, value);
|
|
101
|
+
return this.json(url, servingReferenceLookupResponseSchema);
|
|
102
|
+
}
|
|
103
|
+
async rawContent(pathname, ref) {
|
|
104
|
+
const response = await this.request(this.url(pathname, { ref }));
|
|
105
|
+
const action = response.headers.get('x-knowledge-serving-action');
|
|
106
|
+
if (response.ok && action === 'ALLOW') {
|
|
107
|
+
// 原始文件必须显式标注其语义,防止代理错误路由后把受治理正文当作文件响应。
|
|
108
|
+
if (pathname === '/v1/evidence-file' && response.headers.get('x-knowledge-evidence-class') !== 'RAW_EVIDENCE')
|
|
109
|
+
throw new Error('SERVING_SDK_EVIDENCE_CLASS_MISSING');
|
|
110
|
+
if (pathname === '/v2/evidence-media' && response.headers.get('x-knowledge-evidence-class') !== 'RAW_EVIDENCE_MEDIA')
|
|
111
|
+
throw new Error('SERVING_SDK_EVIDENCE_CLASS_MISSING');
|
|
112
|
+
if (pathname === '/v2/artifact-file' && response.headers.get('x-knowledge-content-class') !== 'ARTIFACT_SNAPSHOT')
|
|
113
|
+
throw new Error('SERVING_SDK_ARTIFACT_CLASS_MISSING');
|
|
114
|
+
if (pathname === '/v2/material-file' && !['ARTIFACT_SNAPSHOT', 'RAW_EVIDENCE', 'RAW_EVIDENCE_MEDIA', 'REFERENCE_SNAPSHOT', 'REGISTERED_MATERIAL'].includes(response.headers.get('x-knowledge-content-class') ?? ''))
|
|
115
|
+
throw new Error('SERVING_SDK_MATERIAL_CLASS_MISSING');
|
|
116
|
+
const content = Buffer.from(await response.arrayBuffer()), contentHash = response.headers.get('x-knowledge-content-hash'), mediaType = response.headers.get('content-type'), rawLength = response.headers.get('content-length'), assessedAt = response.headers.get('x-knowledge-assessed-at');
|
|
117
|
+
if (!contentHash || !mediaType || !rawLength || !assessedAt)
|
|
118
|
+
throw new Error('SERVING_SDK_CONTENT_HEADERS_MISSING');
|
|
119
|
+
const byteLength = Number(rawLength);
|
|
120
|
+
if (!Number.isSafeInteger(byteLength) || byteLength !== content.byteLength || sha(content) !== contentHash)
|
|
121
|
+
throw new Error('SERVING_SDK_CONTENT_INTEGRITY_MISMATCH');
|
|
122
|
+
return { decision: { schemaVersion: 1, action: 'ALLOW', reasonCodes: [], assessedAt }, descriptor: { contentHash, mediaType, byteLength }, content };
|
|
123
|
+
}
|
|
124
|
+
let raw;
|
|
125
|
+
try {
|
|
126
|
+
raw = await response.json();
|
|
127
|
+
}
|
|
128
|
+
catch {
|
|
129
|
+
throw new Error('SERVING_SDK_RESPONSE_INVALID');
|
|
130
|
+
}
|
|
131
|
+
const parsed = servingContentDecisionResponseSchema.safeParse(raw);
|
|
132
|
+
if (parsed.success)
|
|
133
|
+
return parsed.data;
|
|
134
|
+
const api = servingApiErrorSchema.safeParse(raw);
|
|
135
|
+
if (api.success)
|
|
136
|
+
throw new Error(api.data.errorCode);
|
|
137
|
+
throw new Error('SERVING_SDK_HTTP_FAILURE');
|
|
138
|
+
}
|
|
139
|
+
getMaterialContract() { return this.json(this.url('/v3/material-contract'), apiKeyMaterialContractSchema); }
|
|
140
|
+
getMaterialCapabilities(ref) { return this.json(this.url('/v3/material-capabilities', { ref }), materialCapabilityResponseSchema); }
|
|
141
|
+
pageMaterialCapabilities(options = {}) { return this.json(this.url('/v3/material-page', options), materialCapabilityPageSchema); }
|
|
142
|
+
pageMaterialMedia(ref, options = {}) { return this.json(this.url('/v3/material-media-page', { ref, ...options }), materialMediaCapabilityPageSchema); }
|
|
143
|
+
getMaterialIndexStatus(options = {}) { return this.json(this.url('/v3/material-index-status', options), materialIndexStatusSchema); }
|
|
144
|
+
openMaterialStream(ref, options = {}) { return materialStream(this.fetchImpl, this.url('/v2/material-file', { ref }), this.token, options); }
|
|
145
|
+
getMaterialFile(ref) { return this.rawContent('/v2/material-file', ref); }
|
|
146
|
+
getContent(ref) { return this.rawContent('/v1/content', ref); }
|
|
147
|
+
getArtifactFile(ref) { return this.rawContent('/v2/artifact-file', ref); }
|
|
148
|
+
getMedia(ref) { return this.rawContent('/v1/media', ref); }
|
|
149
|
+
getEvidenceMedia(ref) { return this.rawContent('/v2/evidence-media', ref); }
|
|
150
|
+
/** 读取未经知识审核的原始 Evidence 文件;调用方仍需自己处理其时效与适用性。 */
|
|
151
|
+
getEvidenceFile(ref) { return this.rawContent('/v1/evidence-file', ref); }
|
|
152
|
+
}
|
|
153
|
+
export * from './tenant-management.js';
|
|
154
|
+
export * from './tenant-workspace.js';
|
|
155
|
+
export * from './tenant-project.js';
|
|
156
|
+
export * from './tenant-runtime.js';
|
|
157
|
+
export * from './tenant-web.js';
|
|
158
|
+
export * from './tenant-web-crawl.js';
|
|
159
|
+
export * from './tenant-web-dynamic.js';
|
|
160
|
+
export * from './tenant-web-content.js';
|
|
161
|
+
export * from './tenant-web-workflow.js';
|
|
162
|
+
export * from './auth.js';
|
|
163
|
+
export * from './token-provider.js';
|
|
164
|
+
export * from './tenant-client.js';
|
|
165
|
+
export * from './agent-entry.js';
|
|
166
|
+
export * from './agent-guidance-error.js';
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const artifactIdSchema: z.ZodString;
|
|
3
|
+
export declare const artifactKindSchema: z.ZodEnum<{
|
|
4
|
+
SIGNAL_GENERATION: "SIGNAL_GENERATION";
|
|
5
|
+
RESEARCH: "RESEARCH";
|
|
6
|
+
REVIEW: "REVIEW";
|
|
7
|
+
KNOWLEDGE: "KNOWLEDGE";
|
|
8
|
+
INSIGHT: "INSIGHT";
|
|
9
|
+
}>;
|
|
10
|
+
export declare const artifactStatusSchema: z.ZodEnum<{
|
|
11
|
+
GENERATED: "GENERATED";
|
|
12
|
+
DRAFT: "DRAFT";
|
|
13
|
+
READY_FOR_REVIEW: "READY_FOR_REVIEW";
|
|
14
|
+
REWORK_REQUIRED: "REWORK_REQUIRED";
|
|
15
|
+
APPROVED: "APPROVED";
|
|
16
|
+
REJECTED: "REJECTED";
|
|
17
|
+
SUPERSEDED: "SUPERSEDED";
|
|
18
|
+
}>;
|
|
19
|
+
export declare const artifactManifestSchema: z.ZodObject<{
|
|
20
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
21
|
+
artifactId: z.ZodString;
|
|
22
|
+
kind: z.ZodEnum<{
|
|
23
|
+
SIGNAL_GENERATION: "SIGNAL_GENERATION";
|
|
24
|
+
RESEARCH: "RESEARCH";
|
|
25
|
+
REVIEW: "REVIEW";
|
|
26
|
+
KNOWLEDGE: "KNOWLEDGE";
|
|
27
|
+
INSIGHT: "INSIGHT";
|
|
28
|
+
}>;
|
|
29
|
+
projectKey: z.ZodString;
|
|
30
|
+
projectRef: z.ZodOptional<z.ZodString>;
|
|
31
|
+
version: z.ZodNumber;
|
|
32
|
+
ref: z.ZodString;
|
|
33
|
+
identityRef: z.ZodString;
|
|
34
|
+
status: z.ZodEnum<{
|
|
35
|
+
GENERATED: "GENERATED";
|
|
36
|
+
DRAFT: "DRAFT";
|
|
37
|
+
READY_FOR_REVIEW: "READY_FOR_REVIEW";
|
|
38
|
+
REWORK_REQUIRED: "REWORK_REQUIRED";
|
|
39
|
+
APPROVED: "APPROVED";
|
|
40
|
+
REJECTED: "REJECTED";
|
|
41
|
+
SUPERSEDED: "SUPERSEDED";
|
|
42
|
+
}>;
|
|
43
|
+
access: z.ZodDefault<z.ZodEnum<{
|
|
44
|
+
PUBLIC: "PUBLIC";
|
|
45
|
+
PUBLIC_METADATA: "PUBLIC_METADATA";
|
|
46
|
+
TENANT: "TENANT";
|
|
47
|
+
INTERNAL: "INTERNAL";
|
|
48
|
+
FDE_INTERNAL: "FDE_INTERNAL";
|
|
49
|
+
ACCESS_CONTROLLED: "ACCESS_CONTROLLED";
|
|
50
|
+
UNKNOWN: "UNKNOWN";
|
|
51
|
+
}>>;
|
|
52
|
+
title: z.ZodOptional<z.ZodString>;
|
|
53
|
+
createdAt: z.ZodISODateTime;
|
|
54
|
+
observedAt: z.ZodDefault<z.ZodNullable<z.ZodISODateTime>>;
|
|
55
|
+
validUntil: z.ZodDefault<z.ZodNullable<z.ZodISODateTime>>;
|
|
56
|
+
contentHash: z.ZodString;
|
|
57
|
+
mediaType: z.ZodString;
|
|
58
|
+
byteLength: z.ZodNumber;
|
|
59
|
+
evidenceRefs: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
60
|
+
relatedRefs: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
61
|
+
supersedesRef: z.ZodDefault<z.ZodNullable<z.ZodString>>;
|
|
62
|
+
}, z.core.$strict>;
|
|
63
|
+
export type ArtifactId = z.infer<typeof artifactIdSchema>;
|
|
64
|
+
export type ArtifactKind = z.infer<typeof artifactKindSchema>;
|
|
65
|
+
export type ArtifactStatus = z.infer<typeof artifactStatusSchema>;
|
|
66
|
+
export type ArtifactManifest = z.infer<typeof artifactManifestSchema>;
|
|
67
|
+
export declare const artifactWriteMetadataSchema: z.ZodObject<{
|
|
68
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
69
|
+
artifactId: z.ZodString;
|
|
70
|
+
kind: z.ZodEnum<{
|
|
71
|
+
SIGNAL_GENERATION: "SIGNAL_GENERATION";
|
|
72
|
+
RESEARCH: "RESEARCH";
|
|
73
|
+
REVIEW: "REVIEW";
|
|
74
|
+
KNOWLEDGE: "KNOWLEDGE";
|
|
75
|
+
INSIGHT: "INSIGHT";
|
|
76
|
+
}>;
|
|
77
|
+
projectKey: z.ZodString;
|
|
78
|
+
projectRef: z.ZodOptional<z.ZodString>;
|
|
79
|
+
version: z.ZodNumber;
|
|
80
|
+
status: z.ZodEnum<{
|
|
81
|
+
GENERATED: "GENERATED";
|
|
82
|
+
DRAFT: "DRAFT";
|
|
83
|
+
READY_FOR_REVIEW: "READY_FOR_REVIEW";
|
|
84
|
+
REWORK_REQUIRED: "REWORK_REQUIRED";
|
|
85
|
+
APPROVED: "APPROVED";
|
|
86
|
+
REJECTED: "REJECTED";
|
|
87
|
+
SUPERSEDED: "SUPERSEDED";
|
|
88
|
+
}>;
|
|
89
|
+
access: z.ZodDefault<z.ZodEnum<{
|
|
90
|
+
PUBLIC: "PUBLIC";
|
|
91
|
+
PUBLIC_METADATA: "PUBLIC_METADATA";
|
|
92
|
+
TENANT: "TENANT";
|
|
93
|
+
INTERNAL: "INTERNAL";
|
|
94
|
+
FDE_INTERNAL: "FDE_INTERNAL";
|
|
95
|
+
ACCESS_CONTROLLED: "ACCESS_CONTROLLED";
|
|
96
|
+
UNKNOWN: "UNKNOWN";
|
|
97
|
+
}>>;
|
|
98
|
+
title: z.ZodOptional<z.ZodString>;
|
|
99
|
+
createdAt: z.ZodISODateTime;
|
|
100
|
+
observedAt: z.ZodDefault<z.ZodNullable<z.ZodISODateTime>>;
|
|
101
|
+
validUntil: z.ZodDefault<z.ZodNullable<z.ZodISODateTime>>;
|
|
102
|
+
mediaType: z.ZodString;
|
|
103
|
+
evidenceRefs: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
104
|
+
relatedRefs: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
105
|
+
supersedesRef: z.ZodDefault<z.ZodNullable<z.ZodString>>;
|
|
106
|
+
}, z.core.$strict>;
|
|
107
|
+
export declare const reviewDecisionSchema: z.ZodObject<{
|
|
108
|
+
schemaVersion: z.ZodLiteral<1>;
|
|
109
|
+
targetRef: z.ZodString;
|
|
110
|
+
decision: z.ZodEnum<{
|
|
111
|
+
PASS: "PASS";
|
|
112
|
+
REWORK: "REWORK";
|
|
113
|
+
REJECT: "REJECT";
|
|
114
|
+
}>;
|
|
115
|
+
reviewedAt: z.ZodISODateTime;
|
|
116
|
+
summary: z.ZodString;
|
|
117
|
+
evidenceRefs: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
118
|
+
}, z.core.$strict>;
|
|
119
|
+
export type ArtifactWriteMetadata = z.infer<typeof artifactWriteMetadataSchema>;
|
|
120
|
+
export type ReviewDecision = z.infer<typeof reviewDecisionSchema>;
|