@treeseed/sdk 0.10.27 → 0.11.0
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/README.md +207 -6
- package/dist/capacity-provider.d.ts +3 -1
- package/dist/capacity-provider.js +25 -5
- package/dist/control-plane.d.ts +1 -0
- package/dist/control-plane.js +38 -13
- package/dist/db/market-schema.d.ts +8860 -6172
- package/dist/db/market-schema.js +108 -0
- package/dist/db/node-sqlite.js +7 -2
- package/dist/hosting/apps.d.ts +12 -0
- package/dist/hosting/apps.js +107 -0
- package/dist/hosting/builtins.d.ts +25 -0
- package/dist/hosting/builtins.js +791 -0
- package/dist/hosting/contracts.d.ts +207 -0
- package/dist/hosting/contracts.js +0 -0
- package/dist/hosting/graph.d.ts +192 -0
- package/dist/hosting/graph.js +1106 -0
- package/dist/hosting/index.d.ts +4 -0
- package/dist/hosting/index.js +4 -0
- package/dist/index.d.ts +11 -4
- package/dist/index.js +71 -7
- package/dist/managed-dependencies.js +1 -2
- package/dist/market-client.d.ts +63 -3
- package/dist/market-client.js +83 -11
- package/dist/operations/services/bootstrap-runner.d.ts +3 -1
- package/dist/operations/services/bootstrap-runner.js +22 -2
- package/dist/operations/services/config-runtime.d.ts +10 -5
- package/dist/operations/services/config-runtime.js +209 -66
- package/dist/operations/services/deploy.d.ts +70 -7
- package/dist/operations/services/deploy.js +579 -64
- package/dist/operations/services/deployment-readiness.d.ts +30 -0
- package/dist/operations/services/deployment-readiness.js +175 -0
- package/dist/operations/services/git-workflow.d.ts +2 -1
- package/dist/operations/services/git-workflow.js +9 -3
- package/dist/operations/services/github-actions-verification.d.ts +1 -0
- package/dist/operations/services/github-actions-verification.js +1 -0
- package/dist/operations/services/github-api.js +1 -1
- package/dist/operations/services/github-automation.d.ts +1 -1
- package/dist/operations/services/github-automation.js +4 -3
- package/dist/operations/services/github-credentials.d.ts +13 -0
- package/dist/operations/services/github-credentials.js +58 -0
- package/dist/operations/services/hosted-service-checks.d.ts +63 -0
- package/dist/operations/services/hosted-service-checks.js +327 -0
- package/dist/operations/services/hub-provider-launch.js +3 -3
- package/dist/operations/services/live-hosted-service-checks.d.ts +25 -0
- package/dist/operations/services/live-hosted-service-checks.js +350 -0
- package/dist/operations/services/managed-host-security.js +1 -1
- package/dist/operations/services/operations-runner-smoke.d.ts +30 -0
- package/dist/operations/services/operations-runner-smoke.js +180 -0
- package/dist/operations/services/package-adapters.d.ts +95 -0
- package/dist/operations/services/package-adapters.js +288 -0
- package/dist/operations/services/package-reference-policy.d.ts +1 -0
- package/dist/operations/services/package-reference-policy.js +15 -2
- package/dist/operations/services/project-platform.d.ts +80 -22
- package/dist/operations/services/project-platform.js +49 -8
- package/dist/operations/services/project-web-monitor.js +26 -4
- package/dist/operations/services/railway-api.d.ts +88 -5
- package/dist/operations/services/railway-api.js +626 -35
- package/dist/operations/services/railway-deploy.d.ts +46 -40
- package/dist/operations/services/railway-deploy.js +261 -293
- package/dist/operations/services/release-candidate.d.ts +19 -0
- package/dist/operations/services/release-candidate.js +375 -38
- package/dist/operations/services/repository-save-orchestrator.d.ts +3 -1
- package/dist/operations/services/repository-save-orchestrator.js +279 -66
- package/dist/operations/services/runtime-tools.d.ts +1 -0
- package/dist/operations/services/runtime-tools.js +10 -9
- package/dist/operations/services/template-registry.js +14 -7
- package/dist/operations/services/verification-cache.d.ts +25 -0
- package/dist/operations/services/verification-cache.js +71 -0
- package/dist/operations/services/workspace-dependency-mode.js +9 -1
- package/dist/operations/services/workspace-save.js +1 -1
- package/dist/operations/services/workspace-tools.js +2 -1
- package/dist/platform/contracts.d.ts +32 -1
- package/dist/platform/deploy-config.js +73 -8
- package/dist/platform/env.yaml +163 -35
- package/dist/platform/environment.d.ts +1 -0
- package/dist/platform/environment.js +74 -5
- package/dist/platform/plugin.d.ts +9 -0
- package/dist/platform-operation-store.js +2 -2
- package/dist/platform-operations.js +1 -1
- package/dist/reconcile/bootstrap-systems.js +2 -2
- package/dist/reconcile/builtin-adapters.js +372 -189
- package/dist/reconcile/contracts.d.ts +9 -5
- package/dist/reconcile/desired-state.d.ts +1 -0
- package/dist/reconcile/desired-state.js +5 -5
- package/dist/reconcile/engine.d.ts +5 -2
- package/dist/reconcile/engine.js +53 -32
- package/dist/reconcile/index.d.ts +2 -0
- package/dist/reconcile/index.js +2 -0
- package/dist/reconcile/live-acceptance.d.ts +79 -0
- package/dist/reconcile/live-acceptance.js +1615 -0
- package/dist/reconcile/platform.d.ts +104 -0
- package/dist/reconcile/platform.js +100 -0
- package/dist/reconcile/state.js +4 -4
- package/dist/reconcile/units.js +2 -2
- package/dist/scripts/deployment-readiness.js +20 -0
- package/dist/scripts/generate-treedx-openapi-types.js +186 -0
- package/dist/scripts/operations-runner-smoke.js +16 -0
- package/dist/scripts/release-verify.js +4 -1
- package/dist/scripts/template-catalog.test.js +7 -7
- package/dist/scripts/tenant-workflow-action.js +10 -1
- package/dist/sdk-types.d.ts +172 -5
- package/dist/sdk-types.js +28 -3
- package/dist/sdk.d.ts +35 -24
- package/dist/sdk.js +186 -17
- package/dist/template-launch-requirements.js +9 -0
- package/dist/treedx/adapters.d.ts +6 -0
- package/dist/treedx/adapters.js +36 -0
- package/dist/treedx/client.d.ts +222 -0
- package/dist/treedx/client.js +871 -0
- package/dist/treedx/errors.d.ts +13 -0
- package/dist/treedx/errors.js +17 -0
- package/dist/treedx/federated-client.d.ts +27 -0
- package/dist/treedx/federated-client.js +158 -0
- package/dist/treedx/generated/openapi-types.d.ts +3558 -0
- package/dist/treedx/generated/openapi-types.js +0 -0
- package/dist/treedx/graph-adapter.d.ts +33 -0
- package/dist/treedx/graph-adapter.js +156 -0
- package/dist/treedx/index.d.ts +14 -0
- package/dist/treedx/index.js +48 -0
- package/dist/treedx/market-integration.d.ts +27 -0
- package/dist/treedx/market-integration.js +131 -0
- package/dist/treedx/ports.d.ts +166 -0
- package/dist/treedx/ports.js +231 -0
- package/dist/treedx/query-adapter.d.ts +19 -0
- package/dist/treedx/query-adapter.js +62 -0
- package/dist/treedx/registry-client.d.ts +11 -0
- package/dist/treedx/registry-client.js +19 -0
- package/dist/treedx/repository-adapter.d.ts +45 -0
- package/dist/treedx/repository-adapter.js +308 -0
- package/dist/treedx/sdk-integration.d.ts +27 -0
- package/dist/treedx/sdk-integration.js +63 -0
- package/dist/treedx/types.d.ts +1084 -0
- package/dist/treedx/types.js +8 -0
- package/dist/treedx/workspace-adapter.d.ts +27 -0
- package/dist/treedx/workspace-adapter.js +65 -0
- package/dist/treedx-backends.d.ts +218 -0
- package/dist/treedx-backends.js +632 -0
- package/dist/treedx-client.d.ts +86 -0
- package/dist/treedx-client.js +175 -0
- package/dist/treeseed/template-catalog/catalog.fixture.json +497 -138
- package/dist/workflow/operations.d.ts +119 -13
- package/dist/workflow/operations.js +309 -53
- package/dist/workflow-state.d.ts +13 -0
- package/dist/workflow-state.js +43 -26
- package/dist/workflow-support.d.ts +11 -3
- package/dist/workflow-support.js +67 -3
- package/dist/workflow.d.ts +5 -0
- package/drizzle/market/0004_treedx_market_integration.sql +99 -0
- package/package.json +34 -3
- package/templates/github/deploy-web.workflow.yml +39 -6
- package/dist/treeseed/template-catalog/templates/starter-basic/template/astro.config.d.ts +0 -3
- package/dist/treeseed/template-catalog/templates/starter-basic/template/astro.config.ts +0 -6
- package/dist/treeseed/template-catalog/templates/starter-basic/template/package.json +0 -35
- package/dist/treeseed/template-catalog/templates/starter-basic/template/src/api/server.js +0 -4
- package/dist/treeseed/template-catalog/templates/starter-basic/template/src/config.yaml +0 -65
- package/dist/treeseed/template-catalog/templates/starter-basic/template/src/content/decisions/adopt-initial-proposal-loop.mdx +0 -22
- package/dist/treeseed/template-catalog/templates/starter-basic/template/src/content/empty/.gitkeep +0 -1
- package/dist/treeseed/template-catalog/templates/starter-basic/template/src/content/knowledge/handbook/index.mdx +0 -11
- package/dist/treeseed/template-catalog/templates/starter-basic/template/src/content/pages/welcome.mdx +0 -11
- package/dist/treeseed/template-catalog/templates/starter-basic/template/src/content/people/starter-steward.mdx +0 -11
- package/dist/treeseed/template-catalog/templates/starter-basic/template/src/content/proposals/establish-initial-proposal-loop.mdx +0 -17
- package/dist/treeseed/template-catalog/templates/starter-basic/template/src/content.config.d.ts +0 -1
- package/dist/treeseed/template-catalog/templates/starter-basic/template/src/content.config.ts +0 -3
- package/dist/treeseed/template-catalog/templates/starter-basic/template/src/env.yaml +0 -1
- package/dist/treeseed/template-catalog/templates/starter-basic/template/src/manifest.yaml +0 -26
- package/dist/treeseed/template-catalog/templates/starter-basic/template/treeseed.site.yaml +0 -74
- package/dist/treeseed/template-catalog/templates/starter-basic/template/tsconfig.json +0 -9
- package/dist/treeseed/template-catalog/templates/starter-basic/template.config.json +0 -103
|
File without changes
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { TreeDxClient } from './client.ts';
|
|
2
|
+
import type { SdkContextPack, SdkContextPackRequest, SdkGraphDslParseResult, SdkGraphNode, SdkGraphQueryOptions, SdkGraphQueryRequest, SdkGraphQueryResult, SdkGraphRefreshPayload, SdkGraphSearchOptions, SdkGraphSearchResult, SdkGraphSeedResolution, SdkGraphTraversalResult, TreeDxGraphRefreshRequest } from './types.ts';
|
|
3
|
+
export interface TreeDxGraphAdapterOptions {
|
|
4
|
+
client: TreeDxClient;
|
|
5
|
+
repoId?: string;
|
|
6
|
+
defaultRef?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare class TreeDxGraphAdapter {
|
|
9
|
+
private readonly options;
|
|
10
|
+
constructor(options: TreeDxGraphAdapterOptions);
|
|
11
|
+
refresh(request?: TreeDxGraphRefreshRequest): Promise<SdkGraphRefreshPayload>;
|
|
12
|
+
searchFiles(query: string, options?: SdkGraphSearchOptions): Promise<SdkGraphSearchResult[]>;
|
|
13
|
+
searchSections(query: string, options?: SdkGraphSearchOptions): Promise<SdkGraphSearchResult[]>;
|
|
14
|
+
searchEntities(query: string, options?: SdkGraphSearchOptions): Promise<SdkGraphSearchResult[]>;
|
|
15
|
+
getNode(id: string): Promise<SdkGraphNode | null>;
|
|
16
|
+
getNeighbors(id: string, options?: SdkGraphQueryOptions): Promise<SdkGraphTraversalResult>;
|
|
17
|
+
followReferences(id: string, options?: SdkGraphQueryOptions): Promise<SdkGraphTraversalResult>;
|
|
18
|
+
getBacklinks(id: string, options?: SdkGraphQueryOptions): Promise<SdkGraphTraversalResult>;
|
|
19
|
+
getRelated(id: string, options?: SdkGraphQueryOptions): Promise<SdkGraphTraversalResult>;
|
|
20
|
+
getSubgraph(seedIds: string[], options?: SdkGraphQueryOptions): Promise<SdkGraphTraversalResult>;
|
|
21
|
+
resolveSeeds(_request: SdkGraphQueryRequest): Promise<SdkGraphSeedResolution>;
|
|
22
|
+
queryGraph(request: SdkGraphQueryRequest): Promise<SdkGraphQueryResult>;
|
|
23
|
+
buildContextPack(request: SdkContextPackRequest): Promise<SdkContextPack>;
|
|
24
|
+
parseGraphDsl(source: string): Promise<SdkGraphDslParseResult>;
|
|
25
|
+
resolveReference(_reference?: string, _options?: {
|
|
26
|
+
fromNodeId?: string;
|
|
27
|
+
fromPath?: string;
|
|
28
|
+
models?: string[];
|
|
29
|
+
}): Promise<never>;
|
|
30
|
+
explainReferenceChain(_fromId?: string, _toId?: string): Promise<never>;
|
|
31
|
+
private related;
|
|
32
|
+
private unwrapNode;
|
|
33
|
+
}
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { TreeDxApiError } from "./errors.js";
|
|
2
|
+
class TreeDxGraphAdapter {
|
|
3
|
+
constructor(options) {
|
|
4
|
+
this.options = options;
|
|
5
|
+
}
|
|
6
|
+
options;
|
|
7
|
+
async refresh(request = {}) {
|
|
8
|
+
return this.options.client.refreshGraph({
|
|
9
|
+
...request,
|
|
10
|
+
repoId: this.options.repoId,
|
|
11
|
+
ref: this.options.defaultRef
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
searchFiles(query, options) {
|
|
15
|
+
return this.options.client.searchGraphFiles({
|
|
16
|
+
repoId: this.options.repoId,
|
|
17
|
+
ref: this.options.defaultRef,
|
|
18
|
+
query,
|
|
19
|
+
limit: options?.limit,
|
|
20
|
+
options
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
searchSections(query, options) {
|
|
24
|
+
return this.options.client.searchGraphSections({
|
|
25
|
+
repoId: this.options.repoId,
|
|
26
|
+
ref: this.options.defaultRef,
|
|
27
|
+
query,
|
|
28
|
+
limit: options?.limit,
|
|
29
|
+
options
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
searchEntities(query, options) {
|
|
33
|
+
return this.options.client.searchGraphEntities({
|
|
34
|
+
repoId: this.options.repoId,
|
|
35
|
+
ref: this.options.defaultRef,
|
|
36
|
+
query,
|
|
37
|
+
limit: options?.limit,
|
|
38
|
+
options
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
async getNode(id) {
|
|
42
|
+
try {
|
|
43
|
+
return await this.options.client.getGraphNode({
|
|
44
|
+
repoId: this.options.repoId,
|
|
45
|
+
ref: this.options.defaultRef,
|
|
46
|
+
nodeId: id
|
|
47
|
+
});
|
|
48
|
+
} catch (error) {
|
|
49
|
+
if (error instanceof TreeDxApiError && error.status === 404) {
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
throw error;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
getNeighbors(id, options) {
|
|
56
|
+
return this.related(id, [], options);
|
|
57
|
+
}
|
|
58
|
+
followReferences(id, options) {
|
|
59
|
+
return this.related(id, ["references"], options);
|
|
60
|
+
}
|
|
61
|
+
getBacklinks(id, options) {
|
|
62
|
+
return this.related(id, [], { ...options, direction: "incoming" });
|
|
63
|
+
}
|
|
64
|
+
getRelated(id, options) {
|
|
65
|
+
return this.related(id, ["related"], options);
|
|
66
|
+
}
|
|
67
|
+
async getSubgraph(seedIds, options) {
|
|
68
|
+
const result = await this.options.client.getSubgraph({
|
|
69
|
+
repoId: this.options.repoId,
|
|
70
|
+
ref: this.options.defaultRef,
|
|
71
|
+
seedIds,
|
|
72
|
+
options
|
|
73
|
+
});
|
|
74
|
+
return {
|
|
75
|
+
seedId: String(result.seedId ?? seedIds.join(",")),
|
|
76
|
+
nodes: (result.nodes ?? []).map((entry) => this.unwrapNode(entry)),
|
|
77
|
+
edges: result.edges ?? []
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
async resolveSeeds(_request) {
|
|
81
|
+
throw new TreeDxApiError("TreeDX remote graph seed resolution is not implemented by the TreeDX remote graph adapter.", {
|
|
82
|
+
status: 501,
|
|
83
|
+
code: "unsupported_treedx_graph_operation"
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
async queryGraph(request) {
|
|
87
|
+
const result = await this.options.client.queryGraph({
|
|
88
|
+
...request,
|
|
89
|
+
repoId: this.options.repoId,
|
|
90
|
+
ref: this.options.defaultRef
|
|
91
|
+
});
|
|
92
|
+
return {
|
|
93
|
+
seedIds: result.seedIds,
|
|
94
|
+
nodes: result.nodes,
|
|
95
|
+
edges: result.edges,
|
|
96
|
+
providerId: result.providerId,
|
|
97
|
+
diagnostics: result.diagnostics
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
async buildContextPack(request) {
|
|
101
|
+
const result = await this.options.client.buildContext({
|
|
102
|
+
...request,
|
|
103
|
+
repoId: this.options.repoId,
|
|
104
|
+
ref: this.options.defaultRef
|
|
105
|
+
});
|
|
106
|
+
return {
|
|
107
|
+
seedIds: result.seedIds,
|
|
108
|
+
totalTokenEstimate: result.totalTokenEstimate,
|
|
109
|
+
includedNodeIds: result.includedNodeIds,
|
|
110
|
+
nodes: result.nodes,
|
|
111
|
+
edges: result.edges
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
parseGraphDsl(source) {
|
|
115
|
+
return this.options.client.parseContextDsl({
|
|
116
|
+
repoId: this.options.repoId,
|
|
117
|
+
ref: this.options.defaultRef,
|
|
118
|
+
source
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
resolveReference(_reference, _options) {
|
|
122
|
+
return Promise.reject(new TreeDxApiError("TreeDX remote reference resolution is not implemented by the TreeDX remote graph adapter.", {
|
|
123
|
+
status: 501,
|
|
124
|
+
code: "unsupported_treedx_graph_operation"
|
|
125
|
+
}));
|
|
126
|
+
}
|
|
127
|
+
explainReferenceChain(_fromId, _toId) {
|
|
128
|
+
return Promise.reject(new TreeDxApiError("TreeDX remote reference-chain explanation is not implemented by the TreeDX remote graph adapter.", {
|
|
129
|
+
status: 501,
|
|
130
|
+
code: "unsupported_treedx_graph_operation"
|
|
131
|
+
}));
|
|
132
|
+
}
|
|
133
|
+
async related(id, relations, options) {
|
|
134
|
+
const result = await this.options.client.getRelated({
|
|
135
|
+
repoId: this.options.repoId,
|
|
136
|
+
ref: this.options.defaultRef,
|
|
137
|
+
nodeId: id,
|
|
138
|
+
relations,
|
|
139
|
+
options
|
|
140
|
+
});
|
|
141
|
+
return {
|
|
142
|
+
seedId: id,
|
|
143
|
+
nodes: (result.nodes ?? []).map((entry) => this.unwrapNode(entry)),
|
|
144
|
+
edges: result.edges ?? []
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
unwrapNode(entry) {
|
|
148
|
+
if (typeof entry === "object" && entry !== null && "node" in entry) {
|
|
149
|
+
return entry.node;
|
|
150
|
+
}
|
|
151
|
+
return entry;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
export {
|
|
155
|
+
TreeDxGraphAdapter
|
|
156
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export { TREEDX_CLIENT_OPERATION_MAP, TreeDxClient } from './client.ts';
|
|
2
|
+
export { TreeDxRegistryClient, type TreeDxRegistryClientOptions } from './registry-client.ts';
|
|
3
|
+
export { TreeDxFederatedClient, type TreeDxFederatedClientOptions } from './federated-client.ts';
|
|
4
|
+
export { TreeDxApiError } from './errors.ts';
|
|
5
|
+
export { resolveAgentTreeDxIntegration, type AgentSdkTreeDxIntegration, type AgentSdkTreeDxOptions } from './sdk-integration.ts';
|
|
6
|
+
export { TreeDxRepositoryAdapter, resolveContentDir, type TreeDxContentMutationResult, type TreeDxRepositoryAdapterOptions, } from './repository-adapter.ts';
|
|
7
|
+
export { TreeDxQueryAdapter, type TreeDxQueryAdapterOptions } from './query-adapter.ts';
|
|
8
|
+
export { TreeDxGraphAdapter, type TreeDxGraphAdapterOptions } from './graph-adapter.ts';
|
|
9
|
+
export { TreeDxWorkspaceAdapter, type TreeDxWorkspaceAdapterOptions } from './workspace-adapter.ts';
|
|
10
|
+
export * from './market-integration.ts';
|
|
11
|
+
export { LocalGraphPort, LocalRepositoryPort, LocalRepositoryQueryPort, TreeDxArtifactPort, TreeDxExecPort, TreeDxFederatedPort, TreeDxGraphPort, TreeDxRegistryPort, TreeDxRepositoryPort, TreeDxRepositoryQueryPort, } from './ports.ts';
|
|
12
|
+
export type * from './ports.ts';
|
|
13
|
+
export type * from './types.ts';
|
|
14
|
+
export type { components as TreeDxOpenApiComponents, operations as TreeDxOpenApiOperations, paths as TreeDxOpenApiPaths, } from './generated/openapi-types.ts';
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { TREEDX_CLIENT_OPERATION_MAP, TreeDxClient } from "./client.js";
|
|
2
|
+
import { TreeDxRegistryClient } from "./registry-client.js";
|
|
3
|
+
import { TreeDxFederatedClient } from "./federated-client.js";
|
|
4
|
+
import { TreeDxApiError } from "./errors.js";
|
|
5
|
+
import { resolveAgentTreeDxIntegration } from "./sdk-integration.js";
|
|
6
|
+
import {
|
|
7
|
+
TreeDxRepositoryAdapter,
|
|
8
|
+
resolveContentDir
|
|
9
|
+
} from "./repository-adapter.js";
|
|
10
|
+
import { TreeDxQueryAdapter } from "./query-adapter.js";
|
|
11
|
+
import { TreeDxGraphAdapter } from "./graph-adapter.js";
|
|
12
|
+
import { TreeDxWorkspaceAdapter } from "./workspace-adapter.js";
|
|
13
|
+
export * from "./market-integration.js";
|
|
14
|
+
import {
|
|
15
|
+
LocalGraphPort,
|
|
16
|
+
LocalRepositoryPort,
|
|
17
|
+
LocalRepositoryQueryPort,
|
|
18
|
+
TreeDxArtifactPort,
|
|
19
|
+
TreeDxExecPort,
|
|
20
|
+
TreeDxFederatedPort,
|
|
21
|
+
TreeDxGraphPort,
|
|
22
|
+
TreeDxRegistryPort,
|
|
23
|
+
TreeDxRepositoryPort,
|
|
24
|
+
TreeDxRepositoryQueryPort
|
|
25
|
+
} from "./ports.js";
|
|
26
|
+
export {
|
|
27
|
+
LocalGraphPort,
|
|
28
|
+
LocalRepositoryPort,
|
|
29
|
+
LocalRepositoryQueryPort,
|
|
30
|
+
TREEDX_CLIENT_OPERATION_MAP,
|
|
31
|
+
TreeDxApiError,
|
|
32
|
+
TreeDxArtifactPort,
|
|
33
|
+
TreeDxClient,
|
|
34
|
+
TreeDxExecPort,
|
|
35
|
+
TreeDxFederatedClient,
|
|
36
|
+
TreeDxFederatedPort,
|
|
37
|
+
TreeDxGraphAdapter,
|
|
38
|
+
TreeDxGraphPort,
|
|
39
|
+
TreeDxQueryAdapter,
|
|
40
|
+
TreeDxRegistryClient,
|
|
41
|
+
TreeDxRegistryPort,
|
|
42
|
+
TreeDxRepositoryAdapter,
|
|
43
|
+
TreeDxRepositoryPort,
|
|
44
|
+
TreeDxRepositoryQueryPort,
|
|
45
|
+
TreeDxWorkspaceAdapter,
|
|
46
|
+
resolveAgentTreeDxIntegration,
|
|
47
|
+
resolveContentDir
|
|
48
|
+
};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { ProjectFilesystemRepositoryTopology, ProjectRepositoryTopology, TreeDxInstance, TreeDxProjectLibraryBinding } from '../sdk-types.ts';
|
|
2
|
+
export declare const TREEDX_DOCKER_IMAGE: "treeseed/treedx:latest";
|
|
3
|
+
export declare const TREEDX_VOLUME_MOUNT_PATH: "/data";
|
|
4
|
+
export declare const TREEDX_CONTENT_PATH: "src/content";
|
|
5
|
+
export declare function defaultTreeDxImageRef(tag?: string): string;
|
|
6
|
+
export declare function treeDxLibraryIdForProject(input: {
|
|
7
|
+
teamSlug?: string | null;
|
|
8
|
+
projectSlug?: string | null;
|
|
9
|
+
projectId?: string | null;
|
|
10
|
+
}): string;
|
|
11
|
+
export declare function buildManagedTreeDxInstance(input: {
|
|
12
|
+
id: string;
|
|
13
|
+
teamId: string;
|
|
14
|
+
teamSlug?: string | null;
|
|
15
|
+
visibility?: 'private' | 'public' | string | null;
|
|
16
|
+
imageRef?: string | null;
|
|
17
|
+
baseUrl?: string | null;
|
|
18
|
+
now?: string;
|
|
19
|
+
}): TreeDxInstance;
|
|
20
|
+
export declare function buildProjectRepositoryTopology(input: {
|
|
21
|
+
instance: Pick<TreeDxInstance, 'id' | 'baseUrl'>;
|
|
22
|
+
binding: Pick<TreeDxProjectLibraryBinding, 'libraryId' | 'repositoryId' | 'contentPath' | 'contentRepositoryUrl' | 'contentRepositoryDefaultBranch' | 'contentRepositoryRef' | 'r2BucketName' | 'r2ManifestKey'>;
|
|
23
|
+
siteRepository: Partial<ProjectFilesystemRepositoryTopology>;
|
|
24
|
+
projectRepository?: Partial<ProjectFilesystemRepositoryTopology> | null;
|
|
25
|
+
}): ProjectRepositoryTopology;
|
|
26
|
+
export declare function normalizeProjectRepositoryTopology(value: unknown): ProjectRepositoryTopology;
|
|
27
|
+
export declare function isTreeDxCanonicalContent(topology: ProjectRepositoryTopology | null | undefined): boolean;
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
const TREEDX_DOCKER_IMAGE = "treeseed/treedx:latest";
|
|
2
|
+
const TREEDX_VOLUME_MOUNT_PATH = "/data";
|
|
3
|
+
const TREEDX_CONTENT_PATH = "src/content";
|
|
4
|
+
function cleanString(value) {
|
|
5
|
+
return typeof value === "string" && value.trim().length > 0 ? value.trim() : null;
|
|
6
|
+
}
|
|
7
|
+
function safeSlug(value, fallback = "library") {
|
|
8
|
+
return String(value ?? fallback).trim().toLowerCase().replace(/[^a-z0-9_.-]+/gu, "-").replace(/^-+|-+$/gu, "") || fallback;
|
|
9
|
+
}
|
|
10
|
+
function objectValue(value) {
|
|
11
|
+
return value && typeof value === "object" && !Array.isArray(value) ? value : {};
|
|
12
|
+
}
|
|
13
|
+
function defaultTreeDxImageRef(tag = "latest") {
|
|
14
|
+
const normalizedTag = cleanString(tag) ?? "latest";
|
|
15
|
+
return normalizedTag.includes("/") || normalizedTag.includes(":") ? normalizedTag : `treeseed/treedx:${normalizedTag}`;
|
|
16
|
+
}
|
|
17
|
+
function treeDxLibraryIdForProject(input) {
|
|
18
|
+
return [input.teamSlug, input.projectSlug ?? input.projectId].map((part) => safeSlug(part, "project")).join("/");
|
|
19
|
+
}
|
|
20
|
+
function buildManagedTreeDxInstance(input) {
|
|
21
|
+
const isPublic = input.visibility === "public";
|
|
22
|
+
const now = input.now ?? (/* @__PURE__ */ new Date()).toISOString();
|
|
23
|
+
return {
|
|
24
|
+
id: input.id,
|
|
25
|
+
teamId: input.teamId,
|
|
26
|
+
kind: isPublic ? "managed_public_federation" : "managed_private",
|
|
27
|
+
provider: isPublic ? "public_federation" : "railway",
|
|
28
|
+
name: isPublic ? "TreeSeed public federation" : `${safeSlug(input.teamSlug ?? input.teamId, "team")} TreeDX`,
|
|
29
|
+
baseUrl: cleanString(input.baseUrl),
|
|
30
|
+
registryUrl: cleanString(input.baseUrl),
|
|
31
|
+
publicRead: isPublic,
|
|
32
|
+
primary: true,
|
|
33
|
+
status: cleanString(input.baseUrl) ? "active" : "pending",
|
|
34
|
+
imageRef: input.imageRef ?? defaultTreeDxImageRef(),
|
|
35
|
+
volumeMountPath: isPublic ? null : TREEDX_VOLUME_MOUNT_PATH,
|
|
36
|
+
metadata: {
|
|
37
|
+
hostRole: "knowledge-library",
|
|
38
|
+
contentCanonical: "treedx",
|
|
39
|
+
managedBy: "treeseed-market"
|
|
40
|
+
},
|
|
41
|
+
createdAt: now,
|
|
42
|
+
updatedAt: now
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
function buildProjectRepositoryTopology(input) {
|
|
46
|
+
const siteRepository = normalizeFilesystemRepository(input.siteRepository, "site");
|
|
47
|
+
return {
|
|
48
|
+
contentRepository: {
|
|
49
|
+
accessMode: "treedx",
|
|
50
|
+
githubUrl: input.binding.contentRepositoryUrl ?? null,
|
|
51
|
+
defaultBranch: input.binding.contentRepositoryDefaultBranch ?? null,
|
|
52
|
+
ref: input.binding.contentRepositoryRef ?? null,
|
|
53
|
+
contentPath: input.binding.contentPath || TREEDX_CONTENT_PATH,
|
|
54
|
+
treeDx: {
|
|
55
|
+
instanceId: input.instance.id,
|
|
56
|
+
libraryId: input.binding.libraryId,
|
|
57
|
+
repositoryId: input.binding.repositoryId ?? null,
|
|
58
|
+
baseUrl: input.instance.baseUrl ?? null
|
|
59
|
+
},
|
|
60
|
+
r2: {
|
|
61
|
+
bucketName: input.binding.r2BucketName ?? null,
|
|
62
|
+
manifestKey: input.binding.r2ManifestKey ?? null
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
siteRepository,
|
|
66
|
+
projectRepository: input.projectRepository ? normalizeFilesystemRepository(input.projectRepository, "project") : null
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
function normalizeProjectRepositoryTopology(value) {
|
|
70
|
+
const record = objectValue(value);
|
|
71
|
+
const content = objectValue(record.contentRepository);
|
|
72
|
+
const treeDx = objectValue(content.treeDx);
|
|
73
|
+
const site = normalizeFilesystemRepository(record.siteRepository, "site");
|
|
74
|
+
const project = record.projectRepository ? normalizeFilesystemRepository(record.projectRepository, "project") : null;
|
|
75
|
+
const instanceId = cleanString(treeDx.instanceId);
|
|
76
|
+
const libraryId = cleanString(treeDx.libraryId);
|
|
77
|
+
if (!instanceId || !libraryId) {
|
|
78
|
+
throw new Error("Project repository topology contentRepository.treeDx.instanceId and libraryId are required.");
|
|
79
|
+
}
|
|
80
|
+
if (site.accessMode !== "filesystem") {
|
|
81
|
+
throw new Error("Project repository topology siteRepository must use filesystem access.");
|
|
82
|
+
}
|
|
83
|
+
return {
|
|
84
|
+
contentRepository: {
|
|
85
|
+
accessMode: "treedx",
|
|
86
|
+
githubUrl: cleanString(content.githubUrl),
|
|
87
|
+
defaultBranch: cleanString(content.defaultBranch),
|
|
88
|
+
ref: cleanString(content.ref),
|
|
89
|
+
contentPath: cleanString(content.contentPath) ?? TREEDX_CONTENT_PATH,
|
|
90
|
+
treeDx: {
|
|
91
|
+
instanceId,
|
|
92
|
+
libraryId,
|
|
93
|
+
repositoryId: cleanString(treeDx.repositoryId),
|
|
94
|
+
baseUrl: cleanString(treeDx.baseUrl)
|
|
95
|
+
},
|
|
96
|
+
r2: objectValue(content.r2)
|
|
97
|
+
},
|
|
98
|
+
siteRepository: site,
|
|
99
|
+
projectRepository: project
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
function normalizeFilesystemRepository(value, fallbackName) {
|
|
103
|
+
const record = objectValue(value);
|
|
104
|
+
return {
|
|
105
|
+
accessMode: "filesystem",
|
|
106
|
+
provider: cleanString(record.provider) ?? "github",
|
|
107
|
+
owner: cleanString(record.owner),
|
|
108
|
+
name: cleanString(record.name) ?? fallbackName,
|
|
109
|
+
url: cleanString(record.url),
|
|
110
|
+
defaultBranch: cleanString(record.defaultBranch) ?? cleanString(record.ref) ?? "staging",
|
|
111
|
+
ref: cleanString(record.ref),
|
|
112
|
+
checkoutPath: cleanString(record.checkoutPath),
|
|
113
|
+
volumePath: cleanString(record.volumePath),
|
|
114
|
+
submoduleMountPath: cleanString(record.submoduleMountPath),
|
|
115
|
+
siteSubmodulePath: cleanString(record.siteSubmodulePath)
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
function isTreeDxCanonicalContent(topology) {
|
|
119
|
+
return topology?.contentRepository?.accessMode === "treedx" && Boolean(topology.contentRepository.treeDx?.instanceId) && Boolean(topology.contentRepository.treeDx?.libraryId);
|
|
120
|
+
}
|
|
121
|
+
export {
|
|
122
|
+
TREEDX_CONTENT_PATH,
|
|
123
|
+
TREEDX_DOCKER_IMAGE,
|
|
124
|
+
TREEDX_VOLUME_MOUNT_PATH,
|
|
125
|
+
buildManagedTreeDxInstance,
|
|
126
|
+
buildProjectRepositoryTopology,
|
|
127
|
+
defaultTreeDxImageRef,
|
|
128
|
+
isTreeDxCanonicalContent,
|
|
129
|
+
normalizeProjectRepositoryTopology,
|
|
130
|
+
treeDxLibraryIdForProject
|
|
131
|
+
};
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import type { TreeDxClient } from './client.ts';
|
|
2
|
+
import type { TreeDxFederatedClient } from './federated-client.ts';
|
|
3
|
+
import type { TreeDxGraphAdapter } from './graph-adapter.ts';
|
|
4
|
+
import type { TreeDxQueryAdapter } from './query-adapter.ts';
|
|
5
|
+
import type { TreeDxRegistryClient } from './registry-client.ts';
|
|
6
|
+
import type { TreeDxRepositoryAdapter } from './repository-adapter.ts';
|
|
7
|
+
import type { TreeDxWorkspaceAdapter } from './workspace-adapter.ts';
|
|
8
|
+
import type { ContentStore } from '../content-store.ts';
|
|
9
|
+
import type { ContentGraphRuntime } from '../graph.ts';
|
|
10
|
+
import type { SdkContentEntry, SdkFollowRequest, SdkGetRequest, SdkMutationRequest, SdkPickRequest, SdkSearchRequest } from '../sdk-types.ts';
|
|
11
|
+
import type { TreeDxArtifact, TreeDxArtifactDownload, TreeDxArtifactExportRequest, TreeDxCommitRequest, TreeDxCommitResult, TreeDxCreateWorkspaceRequest, TreeDxDiff, TreeDxExecRequest, TreeDxExecResult, TreeDxFederatedContextRequest, TreeDxFederatedContextResult, TreeDxFederatedGraphRequest, TreeDxFederatedGraphResult, TreeDxFederatedQueryRequest, TreeDxFederatedQueryResult, TreeDxFederatedSearchRequest, TreeDxFederatedSearchResult, TreeDxFile, TreeDxFileMutationResult, TreeDxListTreeRequest, TreeDxPatchFileRequest, TreeDxReadFileRequest, TreeDxRepositoryPathsRequest, TreeDxRepositoryPlacement, TreeDxRepositoryQueryRequest, TreeDxRepositoryQueryResult, TreeDxRepositoryReadRequest, TreeDxRepositorySearchRequest, TreeDxSearchRequest, TreeDxSearchResult, TreeDxSnapshot, TreeDxSnapshotBuildRequest, TreeDxStatus, TreeDxTreeEntry, TreeDxWorkspace, TreeDxWorkspaceRequest, TreeDxWriteFileRequest, TreeDxDeleteFileRequest } from './types.ts';
|
|
12
|
+
export interface AuthPort {
|
|
13
|
+
whoami(): Promise<unknown>;
|
|
14
|
+
effectiveScope(input?: unknown): Promise<unknown>;
|
|
15
|
+
}
|
|
16
|
+
export interface RepositoryPort {
|
|
17
|
+
createWorkspace(input: TreeDxCreateWorkspaceRequest): Promise<TreeDxWorkspace>;
|
|
18
|
+
closeWorkspace(workspaceId: string): Promise<void>;
|
|
19
|
+
listTree(input: TreeDxListTreeRequest): Promise<TreeDxTreeEntry[]>;
|
|
20
|
+
readFile(input: TreeDxReadFileRequest): Promise<TreeDxFile>;
|
|
21
|
+
writeFile(input: TreeDxWriteFileRequest): Promise<TreeDxFileMutationResult>;
|
|
22
|
+
patchFile(input: TreeDxPatchFileRequest): Promise<TreeDxFileMutationResult>;
|
|
23
|
+
deleteFile(input: TreeDxDeleteFileRequest): Promise<TreeDxFileMutationResult>;
|
|
24
|
+
search(input: TreeDxSearchRequest): Promise<TreeDxSearchResult>;
|
|
25
|
+
status(input: TreeDxWorkspaceRequest): Promise<TreeDxStatus>;
|
|
26
|
+
diff(input: TreeDxWorkspaceRequest): Promise<TreeDxDiff>;
|
|
27
|
+
commit(input: TreeDxCommitRequest): Promise<TreeDxCommitResult>;
|
|
28
|
+
exec(input: TreeDxExecRequest): Promise<TreeDxExecResult>;
|
|
29
|
+
}
|
|
30
|
+
export interface RepositoryQueryPort {
|
|
31
|
+
read(input: TreeDxRepositoryReadRequest): Promise<TreeDxRepositoryQueryResult>;
|
|
32
|
+
paths(input: TreeDxRepositoryPathsRequest): Promise<TreeDxRepositoryQueryResult>;
|
|
33
|
+
query(input: TreeDxRepositoryQueryRequest): Promise<TreeDxRepositoryQueryResult>;
|
|
34
|
+
search(input: TreeDxRepositorySearchRequest): Promise<TreeDxRepositoryQueryResult>;
|
|
35
|
+
}
|
|
36
|
+
export interface GraphPort {
|
|
37
|
+
refresh(input?: unknown): Promise<unknown>;
|
|
38
|
+
searchFiles(query: string, options?: unknown): Promise<unknown>;
|
|
39
|
+
searchSections(query: string, options?: unknown): Promise<unknown>;
|
|
40
|
+
searchEntities(query: string, options?: unknown): Promise<unknown>;
|
|
41
|
+
getNode(id: string, options?: unknown): Promise<unknown>;
|
|
42
|
+
query(input: unknown): Promise<unknown>;
|
|
43
|
+
buildContext(input: unknown): Promise<unknown>;
|
|
44
|
+
parseDsl(source: string): Promise<unknown>;
|
|
45
|
+
}
|
|
46
|
+
export interface RegistryPort {
|
|
47
|
+
resolveRepository(repoId: string): Promise<unknown>;
|
|
48
|
+
resolveRepositories(repoIds: string[]): Promise<unknown[]>;
|
|
49
|
+
}
|
|
50
|
+
export interface ExecPort {
|
|
51
|
+
exec(input: TreeDxExecRequest): Promise<TreeDxExecResult>;
|
|
52
|
+
}
|
|
53
|
+
export interface ArtifactPort {
|
|
54
|
+
buildSnapshot(input?: TreeDxSnapshotBuildRequest): Promise<TreeDxSnapshot>;
|
|
55
|
+
exportArtifact(input?: TreeDxArtifactExportRequest): Promise<TreeDxArtifact>;
|
|
56
|
+
downloadArtifact(input?: TreeDxArtifactExportRequest): Promise<TreeDxArtifactDownload>;
|
|
57
|
+
}
|
|
58
|
+
export interface FederatedPort {
|
|
59
|
+
search(input: TreeDxFederatedSearchRequest): Promise<TreeDxFederatedSearchResult>;
|
|
60
|
+
query(input: TreeDxFederatedQueryRequest): Promise<TreeDxFederatedQueryResult>;
|
|
61
|
+
context(input: TreeDxFederatedContextRequest): Promise<TreeDxFederatedContextResult>;
|
|
62
|
+
graph(input: TreeDxFederatedGraphRequest): Promise<TreeDxFederatedGraphResult>;
|
|
63
|
+
}
|
|
64
|
+
export declare class LocalRepositoryPort {
|
|
65
|
+
readonly content: ContentStore;
|
|
66
|
+
constructor(content: ContentStore);
|
|
67
|
+
list(model: string): Promise<SdkContentEntry[]>;
|
|
68
|
+
get(input: SdkGetRequest): Promise<SdkContentEntry | null>;
|
|
69
|
+
search(input: SdkSearchRequest): Promise<SdkContentEntry[]>;
|
|
70
|
+
follow(input: SdkFollowRequest): Promise<{
|
|
71
|
+
items: SdkContentEntry[];
|
|
72
|
+
since: string;
|
|
73
|
+
}>;
|
|
74
|
+
pick(input: SdkPickRequest): Promise<import("../sdk-types.ts").SdkPickResult<SdkContentEntry>>;
|
|
75
|
+
create(input: SdkMutationRequest): Promise<{
|
|
76
|
+
item: SdkContentEntry;
|
|
77
|
+
git: import("../git-runtime.ts").GitMutationResult;
|
|
78
|
+
}>;
|
|
79
|
+
update(input: SdkMutationRequest): Promise<{
|
|
80
|
+
item: SdkContentEntry;
|
|
81
|
+
git: import("../git-runtime.ts").GitMutationResult;
|
|
82
|
+
}>;
|
|
83
|
+
}
|
|
84
|
+
export declare class LocalRepositoryQueryPort {
|
|
85
|
+
readonly content: ContentStore;
|
|
86
|
+
constructor(content: ContentStore);
|
|
87
|
+
search(input: SdkSearchRequest): Promise<SdkContentEntry[]>;
|
|
88
|
+
query(input: SdkSearchRequest): Promise<SdkContentEntry[]>;
|
|
89
|
+
}
|
|
90
|
+
export declare class LocalGraphPort implements GraphPort {
|
|
91
|
+
readonly runtime: ContentGraphRuntime;
|
|
92
|
+
constructor(runtime: ContentGraphRuntime);
|
|
93
|
+
refresh(input?: unknown): Promise<import("./types.ts").SdkGraphRefreshPayload>;
|
|
94
|
+
searchFiles(query: string, options?: unknown): Promise<import("./types.ts").SdkGraphSearchResult[]>;
|
|
95
|
+
searchSections(query: string, options?: unknown): Promise<import("./types.ts").SdkGraphSearchResult[]>;
|
|
96
|
+
searchEntities(query: string, options?: unknown): Promise<import("./types.ts").SdkGraphSearchResult[]>;
|
|
97
|
+
getNode(id: string): Promise<import("./types.ts").SdkGraphNode | null>;
|
|
98
|
+
query(input: unknown): Promise<import("./types.ts").SdkGraphQueryResult>;
|
|
99
|
+
buildContext(input: unknown): Promise<import("./types.ts").SdkContextPack>;
|
|
100
|
+
parseDsl(source: string): Promise<import("./types.ts").SdkGraphDslParseResult>;
|
|
101
|
+
}
|
|
102
|
+
export declare class TreeDxRepositoryPort implements RepositoryPort {
|
|
103
|
+
readonly client: TreeDxClient;
|
|
104
|
+
readonly content?: TreeDxRepositoryAdapter | undefined;
|
|
105
|
+
readonly workspace?: TreeDxWorkspaceAdapter | undefined;
|
|
106
|
+
constructor(client: TreeDxClient, content?: TreeDxRepositoryAdapter | undefined, workspace?: TreeDxWorkspaceAdapter | undefined);
|
|
107
|
+
createWorkspace(input: TreeDxCreateWorkspaceRequest): Promise<TreeDxWorkspace>;
|
|
108
|
+
closeWorkspace(workspaceId: string): Promise<void>;
|
|
109
|
+
listTree(input: TreeDxListTreeRequest): Promise<TreeDxTreeEntry[]>;
|
|
110
|
+
readFile(input: TreeDxReadFileRequest): Promise<TreeDxFile>;
|
|
111
|
+
writeFile(input: TreeDxWriteFileRequest): Promise<TreeDxFileMutationResult>;
|
|
112
|
+
patchFile(input: TreeDxPatchFileRequest): Promise<TreeDxFileMutationResult>;
|
|
113
|
+
deleteFile(input: TreeDxDeleteFileRequest): Promise<TreeDxFileMutationResult>;
|
|
114
|
+
search(input: TreeDxSearchRequest): Promise<TreeDxSearchResult>;
|
|
115
|
+
status(input: TreeDxWorkspaceRequest): Promise<TreeDxStatus>;
|
|
116
|
+
diff(input: TreeDxWorkspaceRequest): Promise<TreeDxDiff>;
|
|
117
|
+
commit(input: TreeDxCommitRequest): Promise<TreeDxCommitResult>;
|
|
118
|
+
exec(input: TreeDxExecRequest): Promise<TreeDxExecResult>;
|
|
119
|
+
}
|
|
120
|
+
export declare class TreeDxRepositoryQueryPort implements RepositoryQueryPort {
|
|
121
|
+
readonly client: TreeDxClient;
|
|
122
|
+
readonly adapter?: TreeDxQueryAdapter | undefined;
|
|
123
|
+
constructor(client: TreeDxClient, adapter?: TreeDxQueryAdapter | undefined);
|
|
124
|
+
read(input: TreeDxRepositoryReadRequest): Promise<TreeDxRepositoryQueryResult>;
|
|
125
|
+
paths(input: TreeDxRepositoryPathsRequest): Promise<TreeDxRepositoryQueryResult>;
|
|
126
|
+
query(input: TreeDxRepositoryQueryRequest): Promise<TreeDxRepositoryQueryResult>;
|
|
127
|
+
search(input: TreeDxRepositorySearchRequest): Promise<TreeDxRepositoryQueryResult>;
|
|
128
|
+
}
|
|
129
|
+
export declare class TreeDxGraphPort implements GraphPort {
|
|
130
|
+
readonly adapter: TreeDxGraphAdapter;
|
|
131
|
+
constructor(adapter: TreeDxGraphAdapter);
|
|
132
|
+
refresh(input?: unknown): Promise<import("./types.ts").SdkGraphRefreshPayload>;
|
|
133
|
+
searchFiles(query: string, options?: unknown): Promise<import("./types.ts").SdkGraphSearchResult[]>;
|
|
134
|
+
searchSections(query: string, options?: unknown): Promise<import("./types.ts").SdkGraphSearchResult[]>;
|
|
135
|
+
searchEntities(query: string, options?: unknown): Promise<import("./types.ts").SdkGraphSearchResult[]>;
|
|
136
|
+
getNode(id: string, options?: unknown): Promise<import("./types.ts").SdkGraphNode | null>;
|
|
137
|
+
query(input: unknown): Promise<import("./types.ts").SdkGraphQueryResult>;
|
|
138
|
+
buildContext(input: unknown): Promise<import("./types.ts").SdkContextPack>;
|
|
139
|
+
parseDsl(source: string): Promise<import("./types.ts").SdkGraphDslParseResult>;
|
|
140
|
+
}
|
|
141
|
+
export declare class TreeDxRegistryPort implements RegistryPort {
|
|
142
|
+
readonly client: TreeDxRegistryClient;
|
|
143
|
+
constructor(client: TreeDxRegistryClient);
|
|
144
|
+
resolveRepository(repoId: string): Promise<TreeDxRepositoryPlacement>;
|
|
145
|
+
resolveRepositories(repoIds: string[]): Promise<TreeDxRepositoryPlacement[]>;
|
|
146
|
+
}
|
|
147
|
+
export declare class TreeDxFederatedPort implements FederatedPort {
|
|
148
|
+
readonly client: TreeDxFederatedClient;
|
|
149
|
+
constructor(client: TreeDxFederatedClient);
|
|
150
|
+
search(input: TreeDxFederatedSearchRequest): Promise<TreeDxFederatedSearchResult>;
|
|
151
|
+
query(input: TreeDxFederatedQueryRequest): Promise<TreeDxFederatedQueryResult>;
|
|
152
|
+
context(input: TreeDxFederatedContextRequest): Promise<TreeDxFederatedContextResult>;
|
|
153
|
+
graph(input: TreeDxFederatedGraphRequest): Promise<TreeDxFederatedGraphResult>;
|
|
154
|
+
}
|
|
155
|
+
export declare class TreeDxExecPort implements ExecPort {
|
|
156
|
+
readonly client: TreeDxClient;
|
|
157
|
+
constructor(client: TreeDxClient);
|
|
158
|
+
exec(input: TreeDxExecRequest): Promise<TreeDxExecResult>;
|
|
159
|
+
}
|
|
160
|
+
export declare class TreeDxArtifactPort implements ArtifactPort {
|
|
161
|
+
readonly client: TreeDxClient;
|
|
162
|
+
constructor(client: TreeDxClient);
|
|
163
|
+
buildSnapshot(input?: TreeDxSnapshotBuildRequest): Promise<TreeDxSnapshot>;
|
|
164
|
+
exportArtifact(input?: TreeDxArtifactExportRequest): Promise<TreeDxArtifact>;
|
|
165
|
+
downloadArtifact(input?: TreeDxArtifactExportRequest): Promise<TreeDxArtifactDownload>;
|
|
166
|
+
}
|