@tomflow/proflow-execution-browser-extension 0.1.17 → 0.1.18

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 CHANGED
@@ -1,5 +1,11 @@
1
1
  # @tomflow/proflow-execution-browser-extension
2
2
 
3
+ ## 0.1.18
4
+
5
+ ### Patch Changes
6
+
7
+ - Close the final Deployment replay defects: make Dev Tunnel CLI version probing tolerate real service latency, keep Browser Extension setup idempotent across retries, and remember a non-sensitive Provider endpoint across temporary outages without fabricating readiness.
8
+
3
9
  ## 0.1.17
4
10
 
5
11
  ### Patch Changes
@@ -24,7 +24,7 @@ export declare const behaviorAdapter: {
24
24
  ok: true;
25
25
  status: "SUCCEEDED";
26
26
  moduleRef: "execution-browser-extension";
27
- moduleVersion: "0.1.17";
27
+ moduleVersion: "0.1.18";
28
28
  data: {
29
29
  loadDir: string;
30
30
  };
@@ -37,7 +37,7 @@ export declare const behaviorAdapter: {
37
37
  readonly ok: true;
38
38
  readonly status: "SUCCEEDED";
39
39
  readonly moduleRef: "execution-browser-extension";
40
- readonly moduleVersion: "0.1.17";
40
+ readonly moduleVersion: "0.1.18";
41
41
  };
42
42
  observedEffects: never[];
43
43
  }>;
@@ -47,7 +47,7 @@ export declare const behaviorAdapter: {
47
47
  ok: true;
48
48
  status: "SUCCEEDED";
49
49
  moduleRef: "execution-browser-extension";
50
- moduleVersion: "0.1.17";
50
+ moduleVersion: "0.1.18";
51
51
  data: {
52
52
  setupStatus: "ACTION_REQUIRED" | "READY";
53
53
  runtimeStatus: "NOT_APPLICABLE";
@@ -66,7 +66,7 @@ export declare const behaviorAdapter: {
66
66
  result: {
67
67
  contract: "deployment.result.v1";
68
68
  moduleRef: "execution-browser-extension";
69
- moduleVersion: "0.1.17";
69
+ moduleVersion: "0.1.18";
70
70
  ok: false;
71
71
  status: "ACTION_REQUIRED";
72
72
  data: {
@@ -98,14 +98,14 @@ export declare const behaviorAdapter: {
98
98
  readonly ok: true;
99
99
  readonly status: "SUCCEEDED";
100
100
  readonly moduleRef: "execution-browser-extension";
101
- readonly moduleVersion: "0.1.17";
101
+ readonly moduleVersion: "0.1.18";
102
102
  };
103
103
  observedEffects: string[];
104
104
  } | {
105
105
  result: {
106
106
  contract: "deployment.result.v1";
107
107
  moduleRef: "execution-browser-extension";
108
- moduleVersion: "0.1.17";
108
+ moduleVersion: "0.1.18";
109
109
  ok: false;
110
110
  status: "FAILED";
111
111
  error: {
@@ -138,7 +138,7 @@ export declare const behaviorAdapter: {
138
138
  ok: true;
139
139
  status: "SUCCEEDED";
140
140
  moduleRef: "execution-browser-extension";
141
- moduleVersion: "0.1.17";
141
+ moduleVersion: "0.1.18";
142
142
  data: {
143
143
  docs: string;
144
144
  };
@@ -151,11 +151,11 @@ export declare const behaviorAdapter: {
151
151
  readonly ok: true;
152
152
  readonly status: "SUCCEEDED";
153
153
  readonly moduleRef: "execution-browser-extension";
154
- readonly moduleVersion: "0.1.17";
154
+ readonly moduleVersion: "0.1.18";
155
155
  } | {
156
156
  contract: "deployment.result.v1";
157
157
  moduleRef: "execution-browser-extension";
158
- moduleVersion: "0.1.17";
158
+ moduleVersion: "0.1.18";
159
159
  ok: false;
160
160
  status: "FAILED";
161
161
  error: {
@@ -172,7 +172,7 @@ export declare const behaviorAdapter: {
172
172
  readonly ok: true;
173
173
  readonly status: "SUCCEEDED";
174
174
  readonly moduleRef: "execution-browser-extension";
175
- readonly moduleVersion: "0.1.17";
175
+ readonly moduleVersion: "0.1.18";
176
176
  };
177
177
  observedEffects: never[];
178
178
  }>;
@@ -41,6 +41,7 @@ export function browserExtensionLoadDir(workspaceRoot) {
41
41
  }
42
42
  const stateDir = (context) => moduleWorkspaceStateDirectory(context, descriptor.moduleRef);
43
43
  const setupFile = (context) => join(stateDir(context), "setup.json");
44
+ const installFlowFile = (context) => join(stateDir(context), "install-flow.json");
44
45
  const verificationFile = (context) => join(stateDir(context), "verification.json");
45
46
  const executorConfigFile = (context) => join(stateDir(context), "browser-executor.json");
46
47
  async function credential(file) {
@@ -116,6 +117,21 @@ async function readSetup(context) {
116
117
  return undefined;
117
118
  }
118
119
  }
120
+ async function readInstallFlow(context) {
121
+ try {
122
+ const raw = JSON.parse(await readFile(installFlowFile(context), "utf8"));
123
+ return raw.developerModeConfirmed === true
124
+ ? { developerModeConfirmed: true }
125
+ : undefined;
126
+ }
127
+ catch {
128
+ return undefined;
129
+ }
130
+ }
131
+ async function persistDeveloperModeConfirmation(context) {
132
+ await mkdir(stateDir(context), { recursive: true, mode: 0o700 });
133
+ await writeFile(installFlowFile(context), `${JSON.stringify({ developerModeConfirmed: true })}\n`, { mode: 0o600 });
134
+ }
119
135
  async function readEvidence(context, loadDir) {
120
136
  try {
121
137
  const raw = JSON.parse(await readFile(verificationFile(context), "utf8"));
@@ -326,7 +342,10 @@ export const behaviorAdapter = {
326
342
  const input = typeof context.input === "object" && context.input !== null
327
343
  ? context.input
328
344
  : undefined;
329
- if (input?.developerModeConfirmed !== true) {
345
+ const installFlow = await readInstallFlow(context);
346
+ const developerModeConfirmed = input?.developerModeConfirmed === true ||
347
+ installFlow?.developerModeConfirmed === true;
348
+ if (!developerModeConfirmed) {
330
349
  await openBrowserExtensionManager(input?.desktop);
331
350
  return {
332
351
  result: {
@@ -360,6 +379,10 @@ export const behaviorAdapter = {
360
379
  observedEffects: [],
361
380
  };
362
381
  }
382
+ if (input?.developerModeConfirmed === true &&
383
+ installFlow?.developerModeConfirmed !== true) {
384
+ await persistDeveloperModeConfirmation(context);
385
+ }
363
386
  await runInteractiveBrowserExtensionSetup({
364
387
  workspaceRoot: context.workspaceRoot,
365
388
  ...(input?.timeoutMs === undefined
@@ -3,7 +3,7 @@ export declare const descriptor: {
3
3
  readonly contractVersion: "1.0.0";
4
4
  readonly moduleRef: "execution-browser-extension";
5
5
  readonly packageName: "@tomflow/proflow-execution-browser-extension";
6
- readonly moduleVersion: "0.1.17";
6
+ readonly moduleVersion: "0.1.18";
7
7
  readonly kind: "browser-extension";
8
8
  readonly templateVersion: "1.0.0";
9
9
  readonly platformCompatibility: ">=1.0.0 <2.0.0";
@@ -3,7 +3,7 @@ export const descriptor = {
3
3
  contractVersion: "1.0.0",
4
4
  moduleRef: "execution-browser-extension",
5
5
  packageName: "@tomflow/proflow-execution-browser-extension",
6
- moduleVersion: "0.1.17",
6
+ moduleVersion: "0.1.18",
7
7
  kind: "browser-extension",
8
8
  templateVersion: "1.0.0",
9
9
  platformCompatibility: ">=1.0.0 <2.0.0",
@@ -60,7 +60,6 @@ export async function runInteractiveBrowserExtensionSetup(input) {
60
60
  timeoutMs: input.timeoutMs ?? 120_000,
61
61
  async onWaiting({ loadDir }) {
62
62
  await desktop.copyText(loadDir);
63
- await desktop.openExtensionsPage();
64
63
  await desktop.showInstruction(browserExtensionInstallInstruction(loadDir));
65
64
  },
66
65
  });
package/manifest.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "manifest_version": 3,
3
3
  "name": "ProFlow Execution Browser",
4
- "version": "0.1.17",
4
+ "version": "0.1.18",
5
5
  "permissions": [
6
6
  "tabs",
7
7
  "storage",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tomflow/proflow-execution-browser-extension",
3
- "version": "0.1.17",
3
+ "version": "0.1.18",
4
4
  "description": "Execution-owned MV3 Browser executor, evidence provider and browser application surface.",
5
5
  "type": "module",
6
6
  "publishConfig": {
@@ -27,8 +27,8 @@
27
27
  "SETUP.md"
28
28
  ],
29
29
  "dependencies": {
30
- "@tomflow/proflow-module-contract": "^0.1.13",
31
- "@tomflow/proflow-execution-contracts": "^0.1.10"
30
+ "@tomflow/proflow-execution-contracts": "^0.1.10",
31
+ "@tomflow/proflow-module-contract": "^0.1.13"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@tomflow/proflow-deployment-conformance": "^0.1.13",
@@ -3,7 +3,7 @@
3
3
  "contractVersion": "1.0.0",
4
4
  "moduleRef": "execution-browser-extension",
5
5
  "packageName": "@tomflow/proflow-execution-browser-extension",
6
- "moduleVersion": "0.1.17",
6
+ "moduleVersion": "0.1.18",
7
7
  "kind": "browser-extension",
8
8
  "templateVersion": "1.0.0",
9
9
  "platformCompatibility": ">=1.0.0 <2.0.0",