@tomflow/proflow-dev-tunnel 0.1.13 → 0.1.15
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/CHANGELOG.md +12 -0
- package/DOCS.md +7 -6
- package/README.md +3 -2
- package/SETUP.md +23 -26
- package/dist/deployment/adapter.d.ts +198 -85
- package/dist/deployment/adapter.js +148 -158
- package/dist/deployment/descriptor.d.ts +2 -2
- package/dist/deployment/descriptor.js +2 -2
- package/dist/deployment/requirements.d.ts +1 -1
- package/dist/src/cli.js +25 -127
- package/dist/src/resource-adapter.d.ts +33 -0
- package/dist/src/resource-adapter.js +271 -5
- package/package.json +4 -3
- package/proflow.module.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @tomflow/proflow-dev-tunnel
|
|
2
2
|
|
|
3
|
+
## 0.1.15
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Ship the Phase 3 browser, tunnel, model automation, platform readiness, and documentation closure as one verifiable platform snapshot.
|
|
8
|
+
|
|
9
|
+
## 0.1.14
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- Distinguish dependency blocking from verified failure, expose Module-owned status diagnostics, remove automatic docs paging, consolidate start checks, add contextual help, and clarify uninstall output.
|
|
14
|
+
|
|
3
15
|
## 0.1.13
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/DOCS.md
CHANGED
|
@@ -6,9 +6,10 @@
|
|
|
6
6
|
|
|
7
7
|
## 主要能力
|
|
8
8
|
|
|
9
|
-
- 检查 `devtunnel` CLI
|
|
10
|
-
-
|
|
11
|
-
-
|
|
9
|
+
- 检查 `devtunnel` CLI 与登录状态;缺失时启动 GitHub browser auth。
|
|
10
|
+
- 按 workspace state 复用或自动创建持久 Tunnel,并自动管理端口映射和运行进程。
|
|
11
|
+
- 从 `agent-gateway` producer-owned shared facts 获得本地端口。
|
|
12
|
+
- 按当前端口自动发现公开 HTTPS URL,将其发布为共享事实。
|
|
12
13
|
|
|
13
14
|
## 提供的 API 与 Public Contract
|
|
14
15
|
|
|
@@ -17,8 +18,8 @@
|
|
|
17
18
|
|
|
18
19
|
## 依赖的 Module、Contract 和外部资源
|
|
19
20
|
|
|
20
|
-
- 依赖 Microsoft `devtunnel` CLI
|
|
21
|
-
-
|
|
21
|
+
- 依赖 Microsoft `devtunnel` CLI、账号登录、网络和 `agent-gateway` 发布的 `localBaseUrl` shared fact。
|
|
22
|
+
- 不建立对 `agent-gateway` 的运行时或包依赖;只消费 Platform Host 中由该 Module 持久化的 producer-owned fact。
|
|
22
23
|
|
|
23
24
|
## 运行形态与生命周期
|
|
24
25
|
|
|
@@ -26,7 +27,7 @@
|
|
|
26
27
|
|
|
27
28
|
## 使用方式
|
|
28
29
|
|
|
29
|
-
运行 `
|
|
30
|
+
运行 `platform setup --module dev-tunnel`;除登录失效时的 GitHub 浏览器授权外,不需要输入 Tunnel ID、端口或 URL。
|
|
30
31
|
|
|
31
32
|
## 职责边界与限制
|
|
32
33
|
|
package/README.md
CHANGED
|
@@ -23,5 +23,6 @@ Deployment Governance
|
|
|
23
23
|
|
|
24
24
|
## Purpose
|
|
25
25
|
|
|
26
|
-
Manages the Microsoft Dev Tunnel (`devtunnel`) public HTTPS ingress.
|
|
27
|
-
|
|
26
|
+
Manages the Microsoft Dev Tunnel (`devtunnel`) public HTTPS ingress. Existing
|
|
27
|
+
login is reused; when login is unavailable, the only human action is GitHub
|
|
28
|
+
browser authorization initiated by the provider CLI. Account state is never faked.
|
package/SETUP.md
CHANGED
|
@@ -1,33 +1,30 @@
|
|
|
1
1
|
# dev-tunnel Setup
|
|
2
2
|
|
|
3
|
-
## STEP-DEV-TUNNEL-01 —
|
|
4
|
-
Responsible: USER
|
|
5
|
-
Interactive executable: `pnpm exec -- proflow-dev-tunnel setup 01`
|
|
6
|
-
Non-interactive executable: `pnpm exec -- proflow-dev-tunnel setup 01`
|
|
7
|
-
Required inputs: Microsoft 登录
|
|
8
|
-
Verify: `devtunnel user show`
|
|
9
|
-
Success condition: Microsoft 登录状态可被 CLI 观察。
|
|
10
|
-
|
|
11
|
-
## STEP-DEV-TUNNEL-02 — 选择或创建持久 Tunnel
|
|
12
|
-
Responsible: USER
|
|
13
|
-
Interactive executable: `pnpm exec -- proflow-dev-tunnel setup 02`
|
|
14
|
-
Non-interactive executable: `pnpm exec -- proflow-dev-tunnel setup 02 --tunnel-id <id>`
|
|
15
|
-
Required inputs: Tunnel ID
|
|
16
|
-
Verify: `devtunnel show <id>`
|
|
17
|
-
Success condition: 持久 Tunnel 可以被 devtunnel show 观察。
|
|
18
|
-
|
|
19
|
-
## STEP-DEV-TUNNEL-03 — 配置入口并保存公开 URL
|
|
20
|
-
Responsible: USER
|
|
21
|
-
Interactive executable: `pnpm exec -- proflow-dev-tunnel setup 03`
|
|
22
|
-
Non-interactive executable: `pnpm exec -- proflow-dev-tunnel setup 03 --tunnel-id <id> --public-base-url <url>`
|
|
23
|
-
Required inputs: Tunnel ID、公开 HTTPS URL
|
|
24
|
-
Verify: `pnpm exec -- proflow-dev-tunnel verify`
|
|
25
|
-
Success condition: 公开 HTTPS URL 已保存并可验证。
|
|
3
|
+
## STEP-DEV-TUNNEL-01 — 自动准备 Microsoft Dev Tunnel
|
|
26
4
|
|
|
27
|
-
## STEP-DEV-TUNNEL-04 — 验证 Dev Tunnel
|
|
28
5
|
Responsible: AI
|
|
29
|
-
|
|
30
|
-
|
|
6
|
+
|
|
7
|
+
Interactive executable: `platform setup --module dev-tunnel`
|
|
8
|
+
|
|
9
|
+
Non-interactive executable: `pnpm exec -- proflow-dev-tunnel setup --workspace <path>`
|
|
10
|
+
|
|
31
11
|
Required inputs: none
|
|
12
|
+
|
|
13
|
+
Human action: 仅当现有登录无效时,在 `devtunnel user login --github --use-browser-auth` 打开的浏览器页面完成 GitHub 授权。
|
|
14
|
+
|
|
15
|
+
Automatic flow:
|
|
16
|
+
|
|
17
|
+
```text
|
|
18
|
+
检查 CLI 和登录
|
|
19
|
+
→ 必要时完成 GitHub browser auth 并复核登录
|
|
20
|
+
→ 复用 workspace-owned Tunnel 或自动创建
|
|
21
|
+
→ 从 agent-gateway shared facts 读取本地端口
|
|
22
|
+
→ 自动对齐 port mapping
|
|
23
|
+
→ 启动或复用 host
|
|
24
|
+
→ 自动发现当前端口的 HTTPS URL
|
|
25
|
+
→ 持久化并发布 tunnelId/publicBaseUrl
|
|
26
|
+
```
|
|
27
|
+
|
|
32
28
|
Verify: `pnpm exec -- proflow-dev-tunnel verify`
|
|
29
|
+
|
|
33
30
|
Success condition: `dev-tunnel.setupStatus=READY`.
|
|
@@ -1,12 +1,28 @@
|
|
|
1
1
|
import { type ModuleCommandContext } from "@tomflow/proflow-module-contract";
|
|
2
|
-
|
|
2
|
+
import { type DevTunnelAutomation, type DevTunnelRuntime } from "../src/resource-adapter.ts";
|
|
3
|
+
type SetupState = {
|
|
4
|
+
contract: "proflow.dev-tunnel-setup.v1";
|
|
5
|
+
tunnelId: string;
|
|
6
|
+
publicBaseUrl: string;
|
|
7
|
+
};
|
|
8
|
+
type RuntimeFactory = (input: {
|
|
9
|
+
command?: string;
|
|
10
|
+
tunnelId?: string;
|
|
11
|
+
publicBaseUrl?: string;
|
|
12
|
+
processStateFile?: string;
|
|
13
|
+
}) => DevTunnelRuntime;
|
|
14
|
+
export declare function createDevTunnelBehaviorAdapter(dependencies?: {
|
|
15
|
+
automation?: DevTunnelAutomation;
|
|
16
|
+
createRuntime?: RuntimeFactory;
|
|
17
|
+
verifyPublicBaseUrl?: (publicBaseUrl: string) => Promise<void>;
|
|
18
|
+
}): {
|
|
3
19
|
readonly install: (context: ModuleCommandContext) => Promise<{
|
|
4
20
|
result: {
|
|
5
21
|
readonly contract: "deployment.result.v1";
|
|
6
22
|
readonly ok: true;
|
|
7
23
|
readonly status: "SUCCEEDED";
|
|
8
24
|
readonly moduleRef: "dev-tunnel";
|
|
9
|
-
readonly moduleVersion: "0.1.
|
|
25
|
+
readonly moduleVersion: "0.1.15";
|
|
10
26
|
};
|
|
11
27
|
observedEffects: never[];
|
|
12
28
|
}>;
|
|
@@ -16,14 +32,14 @@ export declare const behaviorAdapter: {
|
|
|
16
32
|
readonly ok: true;
|
|
17
33
|
readonly status: "SUCCEEDED";
|
|
18
34
|
readonly moduleRef: "dev-tunnel";
|
|
19
|
-
readonly moduleVersion: "0.1.
|
|
35
|
+
readonly moduleVersion: "0.1.15";
|
|
20
36
|
};
|
|
21
37
|
observedEffects: string[];
|
|
22
38
|
} | {
|
|
23
39
|
result: {
|
|
24
40
|
contract: "deployment.result.v1";
|
|
25
41
|
moduleRef: "dev-tunnel";
|
|
26
|
-
moduleVersion: "0.1.
|
|
42
|
+
moduleVersion: "0.1.15";
|
|
27
43
|
ok: false;
|
|
28
44
|
status: "FAILED";
|
|
29
45
|
error: {
|
|
@@ -40,103 +56,174 @@ export declare const behaviorAdapter: {
|
|
|
40
56
|
ok: true;
|
|
41
57
|
status: "SUCCEEDED";
|
|
42
58
|
moduleRef: "dev-tunnel";
|
|
43
|
-
moduleVersion: "0.1.
|
|
59
|
+
moduleVersion: "0.1.15";
|
|
44
60
|
data: {
|
|
45
61
|
setupStatus: "ACTION_REQUIRED" | "READY";
|
|
46
62
|
runtimeStatus: "FAILED" | "RUNNING" | "STOPPED";
|
|
63
|
+
issues?: ({
|
|
64
|
+
scope: "SETUP";
|
|
65
|
+
code: string;
|
|
66
|
+
message: string;
|
|
67
|
+
relatedModuleRefs: never[];
|
|
68
|
+
nextCommand: string;
|
|
69
|
+
} | {
|
|
70
|
+
scope: "RUNTIME";
|
|
71
|
+
code: string;
|
|
72
|
+
message: string;
|
|
73
|
+
relatedModuleRefs: never[];
|
|
74
|
+
nextCommand: string;
|
|
75
|
+
})[];
|
|
47
76
|
};
|
|
48
77
|
};
|
|
49
78
|
observedEffects: never[];
|
|
50
79
|
}>;
|
|
51
|
-
readonly
|
|
80
|
+
readonly docs: (_context: ModuleCommandContext) => Promise<{
|
|
52
81
|
result: {
|
|
53
82
|
contract: "deployment.result.v1";
|
|
83
|
+
ok: true;
|
|
84
|
+
status: "SUCCEEDED";
|
|
54
85
|
moduleRef: "dev-tunnel";
|
|
55
|
-
moduleVersion: "0.1.
|
|
56
|
-
ok: false;
|
|
57
|
-
status: "ACTION_REQUIRED";
|
|
86
|
+
moduleVersion: "0.1.15";
|
|
58
87
|
data: {
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
readonly verify: "pnpm exec -- proflow-dev-tunnel verify";
|
|
110
|
-
readonly successCondition: "公开 HTTPS URL 已保存并可验证";
|
|
111
|
-
readonly humanAction: "确认 Dev Tunnel 门户或 CLI 显示的公开 HTTPS URL。";
|
|
112
|
-
}, {
|
|
113
|
-
readonly id: "STEP-DEV-TUNNEL-04";
|
|
114
|
-
readonly title: "验证 Dev Tunnel";
|
|
115
|
-
readonly description: "检查登录、配置和公开入口。";
|
|
116
|
-
readonly state: "TODO";
|
|
117
|
-
readonly responsible: "AI";
|
|
118
|
-
readonly execution: {
|
|
119
|
-
readonly interactive: "pnpm exec -- proflow-dev-tunnel setup 04";
|
|
120
|
-
readonly nonInteractive: "pnpm exec -- proflow-dev-tunnel verify";
|
|
121
|
-
};
|
|
122
|
-
readonly requiredInputs: readonly [];
|
|
123
|
-
readonly verify: "pnpm exec -- proflow-dev-tunnel verify";
|
|
124
|
-
readonly successCondition: "dev-tunnel.setupStatus=READY";
|
|
125
|
-
}];
|
|
88
|
+
docs: string;
|
|
89
|
+
};
|
|
90
|
+
};
|
|
91
|
+
observedEffects: never[];
|
|
92
|
+
}>;
|
|
93
|
+
readonly start: (context: ModuleCommandContext) => Promise<{
|
|
94
|
+
result: {
|
|
95
|
+
contract: "deployment.result.v1";
|
|
96
|
+
moduleRef: "dev-tunnel";
|
|
97
|
+
moduleVersion: "0.1.15";
|
|
98
|
+
ok: false;
|
|
99
|
+
status: "FAILED";
|
|
100
|
+
error: {
|
|
101
|
+
code: "START_FAILED";
|
|
102
|
+
message: string;
|
|
103
|
+
retryable: boolean;
|
|
104
|
+
};
|
|
105
|
+
};
|
|
106
|
+
observedEffects: never[];
|
|
107
|
+
} | {
|
|
108
|
+
result: {
|
|
109
|
+
contract: "deployment.result.v1";
|
|
110
|
+
ok: true;
|
|
111
|
+
status: "SUCCEEDED";
|
|
112
|
+
moduleRef: "dev-tunnel";
|
|
113
|
+
moduleVersion: "0.1.15";
|
|
114
|
+
data: import("../src/resource-adapter.ts").DevTunnelObservation;
|
|
115
|
+
};
|
|
116
|
+
observedEffects: string[];
|
|
117
|
+
}>;
|
|
118
|
+
readonly stop: (context: ModuleCommandContext) => Promise<{
|
|
119
|
+
result: {
|
|
120
|
+
readonly contract: "deployment.result.v1";
|
|
121
|
+
readonly ok: true;
|
|
122
|
+
readonly status: "SUCCEEDED";
|
|
123
|
+
readonly moduleRef: "dev-tunnel";
|
|
124
|
+
readonly moduleVersion: "0.1.15";
|
|
125
|
+
};
|
|
126
|
+
observedEffects: string[];
|
|
127
|
+
} | {
|
|
128
|
+
result: {
|
|
129
|
+
contract: "deployment.result.v1";
|
|
130
|
+
moduleRef: "dev-tunnel";
|
|
131
|
+
moduleVersion: "0.1.15";
|
|
132
|
+
ok: false;
|
|
133
|
+
status: "FAILED";
|
|
134
|
+
error: {
|
|
135
|
+
code: "STOP_FAILED";
|
|
136
|
+
message: string;
|
|
137
|
+
retryable: boolean;
|
|
126
138
|
};
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
139
|
+
};
|
|
140
|
+
observedEffects: never[];
|
|
141
|
+
}>;
|
|
142
|
+
readonly setup: (context: ModuleCommandContext) => Promise<{
|
|
143
|
+
result: {
|
|
144
|
+
contract: "deployment.result.v1";
|
|
145
|
+
moduleRef: "dev-tunnel";
|
|
146
|
+
moduleVersion: "0.1.15";
|
|
147
|
+
ok: false;
|
|
148
|
+
status: "FAILED";
|
|
149
|
+
error: {
|
|
150
|
+
code: "SETUP_FAILED";
|
|
151
|
+
message: string;
|
|
152
|
+
retryable: boolean;
|
|
130
153
|
};
|
|
131
154
|
};
|
|
132
155
|
observedEffects: never[];
|
|
133
156
|
} | {
|
|
157
|
+
result: {
|
|
158
|
+
contract: "deployment.result.v1";
|
|
159
|
+
ok: true;
|
|
160
|
+
status: "SUCCEEDED";
|
|
161
|
+
moduleRef: "dev-tunnel";
|
|
162
|
+
moduleVersion: "0.1.15";
|
|
163
|
+
data: SetupState;
|
|
164
|
+
};
|
|
165
|
+
observedEffects: string[];
|
|
166
|
+
}>;
|
|
167
|
+
};
|
|
168
|
+
export declare const behaviorAdapter: {
|
|
169
|
+
readonly install: (context: ModuleCommandContext) => Promise<{
|
|
134
170
|
result: {
|
|
135
171
|
readonly contract: "deployment.result.v1";
|
|
136
172
|
readonly ok: true;
|
|
137
173
|
readonly status: "SUCCEEDED";
|
|
138
174
|
readonly moduleRef: "dev-tunnel";
|
|
139
|
-
readonly moduleVersion: "0.1.
|
|
175
|
+
readonly moduleVersion: "0.1.15";
|
|
176
|
+
};
|
|
177
|
+
observedEffects: never[];
|
|
178
|
+
}>;
|
|
179
|
+
readonly uninstall: (context: ModuleCommandContext) => Promise<{
|
|
180
|
+
result: {
|
|
181
|
+
readonly contract: "deployment.result.v1";
|
|
182
|
+
readonly ok: true;
|
|
183
|
+
readonly status: "SUCCEEDED";
|
|
184
|
+
readonly moduleRef: "dev-tunnel";
|
|
185
|
+
readonly moduleVersion: "0.1.15";
|
|
186
|
+
};
|
|
187
|
+
observedEffects: string[];
|
|
188
|
+
} | {
|
|
189
|
+
result: {
|
|
190
|
+
contract: "deployment.result.v1";
|
|
191
|
+
moduleRef: "dev-tunnel";
|
|
192
|
+
moduleVersion: "0.1.15";
|
|
193
|
+
ok: false;
|
|
194
|
+
status: "FAILED";
|
|
195
|
+
error: {
|
|
196
|
+
code: "UNINSTALL_FAILED";
|
|
197
|
+
message: string;
|
|
198
|
+
retryable: boolean;
|
|
199
|
+
};
|
|
200
|
+
};
|
|
201
|
+
observedEffects: never[];
|
|
202
|
+
}>;
|
|
203
|
+
readonly status: (context: ModuleCommandContext) => Promise<{
|
|
204
|
+
result: {
|
|
205
|
+
contract: "deployment.result.v1";
|
|
206
|
+
ok: true;
|
|
207
|
+
status: "SUCCEEDED";
|
|
208
|
+
moduleRef: "dev-tunnel";
|
|
209
|
+
moduleVersion: "0.1.15";
|
|
210
|
+
data: {
|
|
211
|
+
setupStatus: "ACTION_REQUIRED" | "READY";
|
|
212
|
+
runtimeStatus: "FAILED" | "RUNNING" | "STOPPED";
|
|
213
|
+
issues?: ({
|
|
214
|
+
scope: "SETUP";
|
|
215
|
+
code: string;
|
|
216
|
+
message: string;
|
|
217
|
+
relatedModuleRefs: never[];
|
|
218
|
+
nextCommand: string;
|
|
219
|
+
} | {
|
|
220
|
+
scope: "RUNTIME";
|
|
221
|
+
code: string;
|
|
222
|
+
message: string;
|
|
223
|
+
relatedModuleRefs: never[];
|
|
224
|
+
nextCommand: string;
|
|
225
|
+
})[];
|
|
226
|
+
};
|
|
140
227
|
};
|
|
141
228
|
observedEffects: never[];
|
|
142
229
|
}>;
|
|
@@ -146,7 +233,7 @@ export declare const behaviorAdapter: {
|
|
|
146
233
|
ok: true;
|
|
147
234
|
status: "SUCCEEDED";
|
|
148
235
|
moduleRef: "dev-tunnel";
|
|
149
|
-
moduleVersion: "0.1.
|
|
236
|
+
moduleVersion: "0.1.15";
|
|
150
237
|
data: {
|
|
151
238
|
docs: string;
|
|
152
239
|
};
|
|
@@ -157,7 +244,7 @@ export declare const behaviorAdapter: {
|
|
|
157
244
|
result: {
|
|
158
245
|
contract: "deployment.result.v1";
|
|
159
246
|
moduleRef: "dev-tunnel";
|
|
160
|
-
moduleVersion: "0.1.
|
|
247
|
+
moduleVersion: "0.1.15";
|
|
161
248
|
ok: false;
|
|
162
249
|
status: "FAILED";
|
|
163
250
|
error: {
|
|
@@ -173,7 +260,7 @@ export declare const behaviorAdapter: {
|
|
|
173
260
|
ok: true;
|
|
174
261
|
status: "SUCCEEDED";
|
|
175
262
|
moduleRef: "dev-tunnel";
|
|
176
|
-
moduleVersion: "0.1.
|
|
263
|
+
moduleVersion: "0.1.15";
|
|
177
264
|
data: import("../src/resource-adapter.ts").DevTunnelObservation;
|
|
178
265
|
};
|
|
179
266
|
observedEffects: string[];
|
|
@@ -184,14 +271,14 @@ export declare const behaviorAdapter: {
|
|
|
184
271
|
readonly ok: true;
|
|
185
272
|
readonly status: "SUCCEEDED";
|
|
186
273
|
readonly moduleRef: "dev-tunnel";
|
|
187
|
-
readonly moduleVersion: "0.1.
|
|
274
|
+
readonly moduleVersion: "0.1.15";
|
|
188
275
|
};
|
|
189
276
|
observedEffects: string[];
|
|
190
277
|
} | {
|
|
191
278
|
result: {
|
|
192
279
|
contract: "deployment.result.v1";
|
|
193
280
|
moduleRef: "dev-tunnel";
|
|
194
|
-
moduleVersion: "0.1.
|
|
281
|
+
moduleVersion: "0.1.15";
|
|
195
282
|
ok: false;
|
|
196
283
|
status: "FAILED";
|
|
197
284
|
error: {
|
|
@@ -202,4 +289,30 @@ export declare const behaviorAdapter: {
|
|
|
202
289
|
};
|
|
203
290
|
observedEffects: never[];
|
|
204
291
|
}>;
|
|
292
|
+
readonly setup: (context: ModuleCommandContext) => Promise<{
|
|
293
|
+
result: {
|
|
294
|
+
contract: "deployment.result.v1";
|
|
295
|
+
moduleRef: "dev-tunnel";
|
|
296
|
+
moduleVersion: "0.1.15";
|
|
297
|
+
ok: false;
|
|
298
|
+
status: "FAILED";
|
|
299
|
+
error: {
|
|
300
|
+
code: "SETUP_FAILED";
|
|
301
|
+
message: string;
|
|
302
|
+
retryable: boolean;
|
|
303
|
+
};
|
|
304
|
+
};
|
|
305
|
+
observedEffects: never[];
|
|
306
|
+
} | {
|
|
307
|
+
result: {
|
|
308
|
+
contract: "deployment.result.v1";
|
|
309
|
+
ok: true;
|
|
310
|
+
status: "SUCCEEDED";
|
|
311
|
+
moduleRef: "dev-tunnel";
|
|
312
|
+
moduleVersion: "0.1.15";
|
|
313
|
+
data: SetupState;
|
|
314
|
+
};
|
|
315
|
+
observedEffects: string[];
|
|
316
|
+
}>;
|
|
205
317
|
};
|
|
318
|
+
export {};
|