@wenathlan/devthink 2.0.97 → 2.0.98
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 +25 -0
- package/bridge.d.ts +1 -1
- package/bridge.js +2 -2
- package/bun.js +7 -5
- package/caps/background.json +1 -1
- package/caps/cli.json +1 -1
- package/caps/library.json +1 -1
- package/caps/mcp.json +1 -1
- package/caps/pagebridge.json +1 -1
- package/caps/popup.json +1 -1
- package/caps/sidepanel.json +1 -1
- package/checksums.txt +35 -35
- package/cli.js +2 -2
- package/companion.js +2 -2
- package/crossbrowser.js +1 -1
- package/dashdone.js +1 -1
- package/deno.js +7 -5
- package/devthink.umd.js +7 -5
- package/hardening.js +1 -1
- package/headless.js +2 -2
- package/http.js +2 -2
- package/index.cjs +7 -5
- package/index.js +7 -5
- package/index.neutral.js +7 -5
- package/manifest.json +1 -1
- package/mcp.js +2 -2
- package/memory.js +1 -1
- package/nativehost.template.json +1 -1
- package/node.cjs +7 -5
- package/pack.js +1 -1
- package/package.json +6 -6
- package/policy.js +2 -2
- package/progress.js +2 -2
- package/protocol.js +2 -2
- package/server.js +23 -20
- package/umd-example.html +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,30 @@
|
|
|
1
1
|
# DevThink release notes
|
|
2
2
|
|
|
3
|
+
## 2.0.98 — the one intro plays everywhere and the taskbar takes the bottom edge
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
| Area | Change |
|
|
8
|
+
| --- | --- |
|
|
9
|
+
| The distribution rail | The explore landing gains the download rail: the chromium zip, the firefox xpi, the vs code vsix and the provenance set of the immutable tag, with the version riding the build from the root manifest (the __dtversion__ vite define) so the rail never drifts from the shipped envelope. |
|
|
10
|
+
| The one intro doctrine | The intro gate plays the web variant for every build target — web, binary and extension share the same entrance (the owner doctrine: one code, many distributions); the retired per-target variants stay exported beside the anchor. |
|
|
11
|
+
| The auth mica | The authentication stage wears the windows mica (the #1a1f35 bloom radial over #202020) instead of the flat slab. |
|
|
12
|
+
|
|
13
|
+
### Changed
|
|
14
|
+
|
|
15
|
+
| Area | Change |
|
|
16
|
+
| --- | --- |
|
|
17
|
+
| The taskbar | The shell chrome takes the bottom edge like the real windows 11: the fixed bar with the top hairline, tooltips and the jump list flipping above, the start menu and the tray flyouts rising from the bar, the floating dock retired and the taskbar pins carrying the live window ladder (openApps). |
|
|
18
|
+
| The desktop geometry | The desktop area stops above the bar (the offset parent of the float band), the windows fly into their pins on it and the page shells breathe above the fixed bar. |
|
|
19
|
+
|
|
20
|
+
### Fixed
|
|
21
|
+
|
|
22
|
+
| Area | Change |
|
|
23
|
+
| --- | --- |
|
|
24
|
+
| The chat window | The desktop chat opens in place as a floating window titled with the derived session name — the dead /chat route target and the session-fragment labels die; the optimistic messages survive the gateway identity frame and the hydration loop of the workspace routes is dead. |
|
|
25
|
+
| The gateway catalog | The engine config leaves the page folder for the repository root (gatewayviewconfig.ts) and the reviewed origins catalog answers the gateway upstreams as data rows. |
|
|
26
|
+
| The maintenance probe | The pnpm pin regex reads the crlf checkout and the acrylic webkit lines deduplicate — the ladder gates see the honest metadata. |
|
|
27
|
+
|
|
3
28
|
## 2.0.97 — the windows hands complete every interaction and the stages walk the graphs
|
|
4
29
|
|
|
5
30
|
### Added
|
package/bridge.d.ts
CHANGED
|
@@ -428,7 +428,7 @@ import type { jsonrpcframe } from "./types.js";
|
|
|
428
428
|
/** The native bridge protocol major version this build speaks: the handshake reports it, the upgrade path keeps compatibility for exactly one major version, and a host that speaks another major version degrades instead of breaking the run. */
|
|
429
429
|
export declare const nativebridgeprotocolmajor = 1;
|
|
430
430
|
/** The installer version the installer stamps into the install state; the upgrade path compares it so a manifest written by an older installer reports before it overwrites. */
|
|
431
|
-
export declare const nativehostinstallerversion: "2.0.
|
|
431
|
+
export declare const nativehostinstallerversion: "2.0.98";
|
|
432
432
|
/** The generated extension id placeholder the host manifest template carries: the installer replaces the token with the extension id of the installed build, so the template never pins an identity the user did not generate. */
|
|
433
433
|
export declare const nativehostidplaceholder = "__generated_extension_id__";
|
|
434
434
|
/** The native messaging directory name of the chromium user profile: the installer writes the host manifest beside it, never into a system directory without the explicit flag. */
|
package/bridge.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// version.ts
|
|
4
|
-
var packageversion = "2.0.
|
|
4
|
+
var packageversion = "2.0.98";
|
|
5
5
|
var protocolmajor = 2;
|
|
6
6
|
|
|
7
7
|
// types.ts
|
package/bun.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// version.ts
|
|
4
|
-
var packageversion = "2.0.
|
|
4
|
+
var packageversion = "2.0.98";
|
|
5
5
|
var protocolmajor = 2;
|
|
6
6
|
var protocolfloormajor = 2;
|
|
7
7
|
|
|
@@ -46057,7 +46057,7 @@ function onboardingsteps() {
|
|
|
46057
46057
|
}
|
|
46058
46058
|
];
|
|
46059
46059
|
}
|
|
46060
|
-
function onboardingstart(
|
|
46060
|
+
function onboardingstart(_previous, now) {
|
|
46061
46061
|
return { stepscompleted: [], done: false, startedat: now };
|
|
46062
46062
|
}
|
|
46063
46063
|
function onboardingcomplete(state, stepid, now) {
|
|
@@ -46319,7 +46319,9 @@ function focusorderof(controls = reviewdialogorder) {
|
|
|
46319
46319
|
}
|
|
46320
46320
|
if (controls.length === 0) throw new Error("The review dialog focus order needs its controls.");
|
|
46321
46321
|
const order = controls.map((control, index) => ({ control, tabindex: index + 1 }));
|
|
46322
|
-
|
|
46322
|
+
const focusfirst = controls[0];
|
|
46323
|
+
if (!focusfirst) throw new Error("The review dialog focus order needs its controls.");
|
|
46324
|
+
return { order, focusfirst };
|
|
46323
46325
|
}
|
|
46324
46326
|
function statusbadgeof(input) {
|
|
46325
46327
|
if (input.planstate === void 0) return { state: "idle", waitingcount: 0 };
|
|
@@ -46524,7 +46526,7 @@ function guidedtipdismiss(tips, dismissed, tipid) {
|
|
|
46524
46526
|
if (tip === void 0) throw new Error(`The guidedtips know no ${tipid} tip.`);
|
|
46525
46527
|
return [.../* @__PURE__ */ new Set([...dismissed, tipid])];
|
|
46526
46528
|
}
|
|
46527
|
-
function guidedtiprecall(
|
|
46529
|
+
function guidedtiprecall(_dismissed) {
|
|
46528
46530
|
return [];
|
|
46529
46531
|
}
|
|
46530
46532
|
function pagechipof(input) {
|
package/caps/background.json
CHANGED
package/caps/cli.json
CHANGED
package/caps/library.json
CHANGED
package/caps/mcp.json
CHANGED
package/caps/pagebridge.json
CHANGED
package/caps/popup.json
CHANGED
package/caps/sidepanel.json
CHANGED
package/checksums.txt
CHANGED
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
|
|
1
|
+
10b45cc76616255a87754cfb8efd4622a4aebfab7ed3c3f26021a668d174a745 CHANGELOG.md
|
|
2
2
|
9dfe38a3b873d150550355596958cc83eb440c6e8ac2e4038dfc5609fc0f8f82 README.md
|
|
3
|
-
|
|
3
|
+
52c5a69427e571aad786c1ec3598a5277c51dbe46b2e2a3c2a7c941333f2e7ed bridge.d.ts
|
|
4
4
|
a6d353d03e0e2d2cb116a057fcab7a2a6e3594290bcf66bc0ff5ea2656757c94 bridge.d.ts.map
|
|
5
|
-
|
|
5
|
+
be5c6d35771b4f926f484b15914244879dcdeddddc3566213e23a7918a785f2e bridge.js
|
|
6
6
|
9557339c2c57fb58212c3b90e8e5934ddba56066a2537d645e4cb34439fdc2ff bun.d.ts
|
|
7
7
|
601a75f547bb845b8a81fa59a21d560691561eb17d598acb3fd1f4ac8421e424 bun.d.ts.map
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
8
|
+
b8486aa6cf735b0feb46c5f7e257161c487078794bd7b6f7d8f1cf92234245c1 bun.js
|
|
9
|
+
d75e875e56c1ecc095cf100d81faab1e3690daef6d671a2f49cc192566547f86 caps/background.json
|
|
10
|
+
fe334f2dd9da018c786702730c6e802bc31474f6f43dc1c270f5900105f2317d caps/cli.json
|
|
11
|
+
fbbcdbfe4bfd1e23289c109593118e3a536b0cd2bb2a51620cf81e4017e95c41 caps/library.json
|
|
12
|
+
cbcf563a21c1199056d6bf5466cfbe3a963883603785dade54fa2c05ccd9b3e1 caps/mcp.json
|
|
13
|
+
19cc3ccc39a9b352ac98ce46e9f7db61ce6a126a5dc75b6184c93913676189db caps/pagebridge.json
|
|
14
|
+
33250c44e04d0dd0411451f87b3e463e88dd6a10c62e42994602054101aff4e5 caps/popup.json
|
|
15
|
+
1efa59c25918ca83072662d7f661f5f8d843042338d3c898a996b984664b677f caps/sidepanel.json
|
|
16
16
|
d35d001526d77c8f37371a39146587ea6ad86179167d82862284557adcd70f17 cli.d.ts
|
|
17
17
|
f7bb3e1903702366effe6c081837b1060c26479740a808f11e0a08ea85e849c9 cli.d.ts.map
|
|
18
|
-
|
|
18
|
+
d43978c84cd5e431eda270c21f7d76d95fe48e5fe162061088b5acd914055677 cli.js
|
|
19
19
|
6d47383663f5efa626bfbc31977bc3df7cfb383725b243ce08057c059234e42f companion.d.ts
|
|
20
20
|
df25256c8176fc547298c2fb5666bcbf0f01bec284a0dc94f66350f6c29a38be companion.d.ts.map
|
|
21
|
-
|
|
21
|
+
4a160c3174c13fea7c01c93666794e60c0f48075c75684febde6ffbcd1ea7822 companion.js
|
|
22
22
|
85824f4b1603769f1c117b524925f05a42d37f2bcb41e9d4d377e5408615721f crossbrowser.d.ts
|
|
23
23
|
a7c4cd26ce8402a9ec1d11bd8dab4222d3c73a0e6f84915402c2fd60f8282d95 crossbrowser.d.ts.map
|
|
24
|
-
|
|
24
|
+
f280349125debade9a622dc86d30f03484b4afaf3e4fc8957f3adb05d113cc68 crossbrowser.js
|
|
25
25
|
bc8f0d95430875b0fd8aff5c0744580d3dd07c5a0927aad4f2c54d34b83be016 dashdone.d.ts
|
|
26
26
|
4d7e32ac75985463dd38a5c408e154276c902c1a1a9ba032d610bffc2b89eee5 dashdone.d.ts.map
|
|
27
|
-
|
|
27
|
+
f9bab4981bacd2f3b4cc7966a01d03377c28e337a7f15fd10e961efde76ca885 dashdone.js
|
|
28
28
|
fea8d906a8c3b0608a9ae4b622c0b88c78d535ed151aa9db29922d817c387495 deno.d.ts
|
|
29
29
|
3b07bf585688565ff818934d7d38f26c0188fcaf44ddbc8727ad3c76999b826c deno.d.ts.map
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
d46a8689a9e87e802fce15c473ee86882a7654866a00b4c89494d52b933dd7f2 deno.js
|
|
31
|
+
dd5392560d3cb32d2b933dbf20c258a333abc48a260fceb6f5a878d2af69d3b5 devthink.umd.js
|
|
32
32
|
d8b6d1f6446da72d359dae978c5495244257dc70660415f8aaad96dd5075e241 fixtures/bun.ts
|
|
33
33
|
702c21459e5d6d8d0b914a86bb6c3646a0be40e132b2d40cc04f2994cfbd1cf3 fixtures/cjs.js
|
|
34
34
|
6bd268717a28a23405e5200264d47bb68aaf9c0d6d911674eaa22477bf19d003 fixtures/deno.ts
|
|
@@ -86,42 +86,42 @@ c93c417dbf3a43736845e653598624ee48e79f69bf93d36e3b19655e0a23b792 fixtures/recip
|
|
|
86
86
|
6b757866f79c4a16098879f7cfffdb85557b7fb6ca4ec7b1c0cd1d1169c3e3c0 gallery.json
|
|
87
87
|
16f6a0cdd78820a257d0fbb501784ed031dcffcdc4b9841d5279c8273e3776f4 hardening.d.ts
|
|
88
88
|
eb153f3fa619ca8f59dd8abb598f33213a98026392854a32a7c305a73688bc95 hardening.d.ts.map
|
|
89
|
-
|
|
89
|
+
5d6aec7468c7a6309d96b00878556ceb8f21b9cff4d9569f26fa40fc519c72d5 hardening.js
|
|
90
90
|
2e560159a8c3b121c91d83545e0dcfa03b79399ed052bc23a425b2d355839362 headless.d.ts
|
|
91
91
|
f6a7bced8d6b26f05ca971e70aaa177b8be9fb5a7e25a17ab5f2235a8f9ed590 headless.d.ts.map
|
|
92
|
-
|
|
92
|
+
b9bb38a0289d317835818eec7ed1f83111573cd680038ec96b8010afc2704e61 headless.js
|
|
93
93
|
7aed8c110caffd11caf27d63b993ad71328851905f4faeea2a8e1442eba8e257 http.d.ts
|
|
94
94
|
b1ab1184756d92fb301a71d5a696ed4cd70bb4953f292002f01930c9e4893024 http.d.ts.map
|
|
95
|
-
|
|
96
|
-
|
|
95
|
+
5c1342b495f2de99570faaada8b6d5820c0acb91a6e761e1bf0724cdc3a1ee14 http.js
|
|
96
|
+
a50fd600a0cc1096027d5b6a048c8b28d259339b9d6edd59e79a1f06b083e1a2 index.cjs
|
|
97
97
|
31b2f3e15bb0b8cbef623b438f01bb8424909686424a98dd88366412d063d7ed index.d.ts
|
|
98
98
|
9398106d8b2277fb1c40892eff062a8cc8e605837d01f191fb783517367860fc index.d.ts.map
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
99
|
+
70f60d57895a2979b7962e174c7e15b29b584485f72d7bead1aea4b5e3e241de index.js
|
|
100
|
+
ee0456253c281ff93482a1b9b663d5eaa842791da4b1e8b9b1916d8afb1ea663 index.neutral.js
|
|
101
|
+
6373240b4de634c2f4966a148e40aa54eb1099f24e157d3aa92f2ae3ccb633c9 manifest.json
|
|
102
102
|
4a4a38d5c2f25f6e33d7fea853a074d4c82dfe5c721506ca4636b1d65c130f10 mcp.d.ts
|
|
103
103
|
dd22f998da99d77485e863c4e7f1f906bb46dc03ee500efe99a5c09a935f4539 mcp.d.ts.map
|
|
104
|
-
|
|
104
|
+
bc4d233383a82fd7588b98a8484f920453fcbc66ccdb922e4312e0a1ae6150db mcp.js
|
|
105
105
|
ce98408283eccac2d435ac0e0ceb6bb5456e1eb70edb03a03e347a9f82f99c69 memory.d.ts
|
|
106
106
|
9f4c19494bb1b2260a4d15c4c2dce4d2b3f5da96f07b8fbe9037f9b5fe31c8e1 memory.d.ts.map
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
107
|
+
7eac1e1318530939c4596d932d6f1652e7b1a1caf032f6e80584b5928e5fb0a1 memory.js
|
|
108
|
+
5b197043efe5b195a0d7cb48f7b8f2584138d8f0091dcac6b1e86781db338a42 nativehost.template.json
|
|
109
|
+
d914b6de62eacf045039dd15eb1da476dfb774e1973f6351aea89a63716db3e8 node.cjs
|
|
110
110
|
705d895c58fe6816958f0fed4bef0a6f79e5fc521ab49d9cf83e0fbcd9d71afe node.d.ts
|
|
111
111
|
45f4394eca20fc889fe1128059ce20130d26a5ae0d89008a7ca93f0e4d52841b node.d.ts.map
|
|
112
112
|
5ec83bc409bed888ae13ab55d1f329ac630a3cf2f0db0e2414c28324329c055b pack.d.ts
|
|
113
113
|
619d43a5239d770c3382af3dd57e2588dd067ded81ca8c106d404e6709324a63 pack.d.ts.map
|
|
114
|
-
|
|
115
|
-
|
|
114
|
+
d42e5ffb6139c4312c142e2bfb2b877143837820438ea12b708e51f8658e2b0e pack.js
|
|
115
|
+
ac95df21190234cd9173a67c03e6d74d7ea8d77e6a957c8108c6c99eb3dd064c package.json
|
|
116
116
|
e3a2ed944a0bc1ef4943ee250a57e428ce49d781d30de6072571e0bc5d8c0259 policy.d.ts
|
|
117
117
|
8f4fabc57c883e12ac7c7ab280749dc7c2d402c4fce401bef235c5e451b6975a policy.d.ts.map
|
|
118
|
-
|
|
118
|
+
e23e2bb2b89bff08298144dfdd4e2014cce87e225c02c7b35969d711fe6cb8e6 policy.js
|
|
119
119
|
ea621ab35e610fbe8acb8e91f21ed2c74a6b20bba537c5982f31458d6878b90b progress.d.ts
|
|
120
120
|
33383e690d77faf6f5959846839603079e7f90e1e3dd17cbcc9a4e3fcf1c5641 progress.d.ts.map
|
|
121
|
-
|
|
121
|
+
3f48dda73a5b022cc4588f799e672f13f2225e6aa7464fe2c144ab31422e1b71 progress.js
|
|
122
122
|
d2e54016f0cad51928752882d780066ccf2267d383deb2407ea7b2f97dfd26e7 protocol.d.ts
|
|
123
123
|
487f8fc63061cb26cbda7f122409d9952810ba3a76b19d147c98d151d4f45d64 protocol.d.ts.map
|
|
124
|
-
|
|
124
|
+
9dc8b1a01697535202f2cfcd9036b187fcf830786824d73183c52b5ab85bd737 protocol.js
|
|
125
125
|
456c4a26fd65c728f2dcb9e615ec6e4d446d7e4228bfa3f70ce2b17ee3d6a2c2 schemas/audit.schema.json
|
|
126
126
|
ea272aa6bf4df585ae1ca8ca63e36d7ec713c46187f37ed86ff3620a0e8509b2 schemas/capability.schema.json
|
|
127
127
|
6e9d2291dc54f7d01463e5f70c8f0793d952a63f4096d61ee4dbc4bfd6f6b0a0 schemas/envelope.schema.json
|
|
@@ -134,8 +134,8 @@ d0e0365a7641c0127338c14a5318c4591dc598b7d2a36b7b2944219921d1ce4e schemas/sessio
|
|
|
134
134
|
5bb7d16534b52ca3a7171178065fb7b283947accd1b616ce89e330eb7a91b82e schemas/tool.schema.json
|
|
135
135
|
57dfca40f53706c5c5070ea49068c828ae7cfceab04e1e095b9b466821a9110c server.d.ts
|
|
136
136
|
e2315b703aaa63041f8907025f810f80c6d6fe39e825815e9564d3a7ac58ea92 server.d.ts.map
|
|
137
|
-
|
|
138
|
-
|
|
137
|
+
5fb9400e15854232d95720c4bbe1be7d5963e6c68889c613ee484bfa54acad0f server.js
|
|
138
|
+
1e94d064c73966be851f16dc9aaae435af39015b49922515e69569e8b52a9a25 umd-example.html
|
|
139
139
|
16f66af22e038e4f9328420a0ed0ee34145ca79c938940e8c2e6d232e25a7c09 umd.d.ts
|
|
140
140
|
ac25f7481155ac9321c5a657e7c4a53570bee8b3f63fe3527045260523a494c8 umd.d.ts.map
|
|
141
141
|
58e21373cec5ade3e6698da5b36ecc2bf7e7e2f755c6fb5e3a6605b535b93985 manifest.json key
|
package/cli.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
/*! devthink 2.0.
|
|
2
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
3
3
|
|
|
4
4
|
// cli.ts
|
|
5
5
|
import { createInterface } from "node:readline/promises";
|
|
@@ -569,7 +569,7 @@ function endcall(input) {
|
|
|
569
569
|
}
|
|
570
570
|
|
|
571
571
|
// version.ts
|
|
572
|
-
var packageversion = "2.0.
|
|
572
|
+
var packageversion = "2.0.98";
|
|
573
573
|
var protocolmajor = 2;
|
|
574
574
|
var protocolfloormajor = 2;
|
|
575
575
|
|
package/companion.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 companion — the optional native host of the native bridge — GPL-3.0-only — built with plain node, no native compiler */
|
|
2
2
|
|
|
3
3
|
// companion.ts
|
|
4
4
|
import { createHash, randomBytes } from "node:crypto";
|
|
@@ -16,7 +16,7 @@ var nativehosttemplatejson = `{
|
|
|
16
16
|
"devthinkBanner": "devthink __devthink_version__ native host manifest template \u2014 GPL-3.0-only \u2014 the chromium host manifest of the optional companion process"
|
|
17
17
|
}
|
|
18
18
|
`;
|
|
19
|
-
var companionbuild = "2.0.
|
|
19
|
+
var companionbuild = "2.0.98";
|
|
20
20
|
var companionprotocol = 1;
|
|
21
21
|
var companionsurfaces = ["osdialog", "notification"];
|
|
22
22
|
var maxnativemessage = 1024 * 1024;
|
package/crossbrowser.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// crossbrowser.ts
|
|
4
4
|
var browserpolyfillflags = [
|
package/dashdone.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// dashdone.ts
|
|
4
4
|
function dashboardviewerof(input) {
|
package/deno.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// version.ts
|
|
4
|
-
var packageversion = "2.0.
|
|
4
|
+
var packageversion = "2.0.98";
|
|
5
5
|
var protocolmajor = 2;
|
|
6
6
|
var protocolfloormajor = 2;
|
|
7
7
|
|
|
@@ -46057,7 +46057,7 @@ function onboardingsteps() {
|
|
|
46057
46057
|
}
|
|
46058
46058
|
];
|
|
46059
46059
|
}
|
|
46060
|
-
function onboardingstart(
|
|
46060
|
+
function onboardingstart(_previous, now) {
|
|
46061
46061
|
return { stepscompleted: [], done: false, startedat: now };
|
|
46062
46062
|
}
|
|
46063
46063
|
function onboardingcomplete(state, stepid, now) {
|
|
@@ -46319,7 +46319,9 @@ function focusorderof(controls = reviewdialogorder) {
|
|
|
46319
46319
|
}
|
|
46320
46320
|
if (controls.length === 0) throw new Error("The review dialog focus order needs its controls.");
|
|
46321
46321
|
const order = controls.map((control, index) => ({ control, tabindex: index + 1 }));
|
|
46322
|
-
|
|
46322
|
+
const focusfirst = controls[0];
|
|
46323
|
+
if (!focusfirst) throw new Error("The review dialog focus order needs its controls.");
|
|
46324
|
+
return { order, focusfirst };
|
|
46323
46325
|
}
|
|
46324
46326
|
function statusbadgeof(input) {
|
|
46325
46327
|
if (input.planstate === void 0) return { state: "idle", waitingcount: 0 };
|
|
@@ -46524,7 +46526,7 @@ function guidedtipdismiss(tips, dismissed, tipid) {
|
|
|
46524
46526
|
if (tip === void 0) throw new Error(`The guidedtips know no ${tipid} tip.`);
|
|
46525
46527
|
return [.../* @__PURE__ */ new Set([...dismissed, tipid])];
|
|
46526
46528
|
}
|
|
46527
|
-
function guidedtiprecall(
|
|
46529
|
+
function guidedtiprecall(_dismissed) {
|
|
46528
46530
|
return [];
|
|
46529
46531
|
}
|
|
46530
46532
|
function pagechipof(input) {
|
package/devthink.umd.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
(function (root, factory) {
|
|
3
3
|
if (typeof define === "function" && define.amd) { define([], factory); }
|
|
4
4
|
else if (typeof module === "object" && module.exports) { module.exports = factory(); }
|
|
@@ -2365,7 +2365,7 @@ __export(umd_exports, {
|
|
|
2365
2365
|
module.exports = __toCommonJS(umd_exports);
|
|
2366
2366
|
|
|
2367
2367
|
// version.ts
|
|
2368
|
-
var packageversion = "2.0.
|
|
2368
|
+
var packageversion = "2.0.98";
|
|
2369
2369
|
var protocolmajor = 2;
|
|
2370
2370
|
var protocolfloormajor = 2;
|
|
2371
2371
|
|
|
@@ -48421,7 +48421,7 @@ function onboardingsteps() {
|
|
|
48421
48421
|
}
|
|
48422
48422
|
];
|
|
48423
48423
|
}
|
|
48424
|
-
function onboardingstart(
|
|
48424
|
+
function onboardingstart(_previous, now) {
|
|
48425
48425
|
return { stepscompleted: [], done: false, startedat: now };
|
|
48426
48426
|
}
|
|
48427
48427
|
function onboardingcomplete(state, stepid, now) {
|
|
@@ -48683,7 +48683,9 @@ function focusorderof(controls = reviewdialogorder) {
|
|
|
48683
48683
|
}
|
|
48684
48684
|
if (controls.length === 0) throw new Error("The review dialog focus order needs its controls.");
|
|
48685
48685
|
const order = controls.map((control, index) => ({ control, tabindex: index + 1 }));
|
|
48686
|
-
|
|
48686
|
+
const focusfirst = controls[0];
|
|
48687
|
+
if (!focusfirst) throw new Error("The review dialog focus order needs its controls.");
|
|
48688
|
+
return { order, focusfirst };
|
|
48687
48689
|
}
|
|
48688
48690
|
function statusbadgeof(input) {
|
|
48689
48691
|
if (input.planstate === void 0) return { state: "idle", waitingcount: 0 };
|
|
@@ -48888,7 +48890,7 @@ function guidedtipdismiss(tips, dismissed, tipid) {
|
|
|
48888
48890
|
if (tip === void 0) throw new Error(`The guidedtips know no ${tipid} tip.`);
|
|
48889
48891
|
return [.../* @__PURE__ */ new Set([...dismissed, tipid])];
|
|
48890
48892
|
}
|
|
48891
|
-
function guidedtiprecall(
|
|
48893
|
+
function guidedtiprecall(_dismissed) {
|
|
48892
48894
|
return [];
|
|
48893
48895
|
}
|
|
48894
48896
|
function pagechipof(input) {
|
package/hardening.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// security.ts
|
|
4
4
|
var maskmarker = "[redacted]";
|
package/headless.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// version.ts
|
|
4
|
-
var packageversion = "2.0.
|
|
4
|
+
var packageversion = "2.0.98";
|
|
5
5
|
var protocolmajor = 2;
|
|
6
6
|
|
|
7
7
|
// runtime.ts
|
package/http.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// version.ts
|
|
4
|
-
var packageversion = "2.0.
|
|
4
|
+
var packageversion = "2.0.98";
|
|
5
5
|
var protocolmajor = 2;
|
|
6
6
|
|
|
7
7
|
// types.ts
|
package/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
"use strict";
|
|
3
3
|
var __defProp = Object.defineProperty;
|
|
4
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -2356,7 +2356,7 @@ __export(cjs_exports, {
|
|
|
2356
2356
|
module.exports = __toCommonJS(cjs_exports);
|
|
2357
2357
|
|
|
2358
2358
|
// version.ts
|
|
2359
|
-
var packageversion = "2.0.
|
|
2359
|
+
var packageversion = "2.0.98";
|
|
2360
2360
|
var protocolmajor = 2;
|
|
2361
2361
|
var protocolfloormajor = 2;
|
|
2362
2362
|
|
|
@@ -48412,7 +48412,7 @@ function onboardingsteps() {
|
|
|
48412
48412
|
}
|
|
48413
48413
|
];
|
|
48414
48414
|
}
|
|
48415
|
-
function onboardingstart(
|
|
48415
|
+
function onboardingstart(_previous, now) {
|
|
48416
48416
|
return { stepscompleted: [], done: false, startedat: now };
|
|
48417
48417
|
}
|
|
48418
48418
|
function onboardingcomplete(state, stepid, now) {
|
|
@@ -48674,7 +48674,9 @@ function focusorderof(controls = reviewdialogorder) {
|
|
|
48674
48674
|
}
|
|
48675
48675
|
if (controls.length === 0) throw new Error("The review dialog focus order needs its controls.");
|
|
48676
48676
|
const order = controls.map((control, index) => ({ control, tabindex: index + 1 }));
|
|
48677
|
-
|
|
48677
|
+
const focusfirst = controls[0];
|
|
48678
|
+
if (!focusfirst) throw new Error("The review dialog focus order needs its controls.");
|
|
48679
|
+
return { order, focusfirst };
|
|
48678
48680
|
}
|
|
48679
48681
|
function statusbadgeof(input) {
|
|
48680
48682
|
if (input.planstate === void 0) return { state: "idle", waitingcount: 0 };
|
|
@@ -48879,7 +48881,7 @@ function guidedtipdismiss(tips, dismissed, tipid) {
|
|
|
48879
48881
|
if (tip === void 0) throw new Error(`The guidedtips know no ${tipid} tip.`);
|
|
48880
48882
|
return [.../* @__PURE__ */ new Set([...dismissed, tipid])];
|
|
48881
48883
|
}
|
|
48882
|
-
function guidedtiprecall(
|
|
48884
|
+
function guidedtiprecall(_dismissed) {
|
|
48883
48885
|
return [];
|
|
48884
48886
|
}
|
|
48885
48887
|
function pagechipof(input) {
|
package/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// version.ts
|
|
4
|
-
var packageversion = "2.0.
|
|
4
|
+
var packageversion = "2.0.98";
|
|
5
5
|
var protocolmajor = 2;
|
|
6
6
|
var protocolfloormajor = 2;
|
|
7
7
|
|
|
@@ -46057,7 +46057,7 @@ function onboardingsteps() {
|
|
|
46057
46057
|
}
|
|
46058
46058
|
];
|
|
46059
46059
|
}
|
|
46060
|
-
function onboardingstart(
|
|
46060
|
+
function onboardingstart(_previous, now) {
|
|
46061
46061
|
return { stepscompleted: [], done: false, startedat: now };
|
|
46062
46062
|
}
|
|
46063
46063
|
function onboardingcomplete(state, stepid, now) {
|
|
@@ -46319,7 +46319,9 @@ function focusorderof(controls = reviewdialogorder) {
|
|
|
46319
46319
|
}
|
|
46320
46320
|
if (controls.length === 0) throw new Error("The review dialog focus order needs its controls.");
|
|
46321
46321
|
const order = controls.map((control, index) => ({ control, tabindex: index + 1 }));
|
|
46322
|
-
|
|
46322
|
+
const focusfirst = controls[0];
|
|
46323
|
+
if (!focusfirst) throw new Error("The review dialog focus order needs its controls.");
|
|
46324
|
+
return { order, focusfirst };
|
|
46323
46325
|
}
|
|
46324
46326
|
function statusbadgeof(input) {
|
|
46325
46327
|
if (input.planstate === void 0) return { state: "idle", waitingcount: 0 };
|
|
@@ -46524,7 +46526,7 @@ function guidedtipdismiss(tips, dismissed, tipid) {
|
|
|
46524
46526
|
if (tip === void 0) throw new Error(`The guidedtips know no ${tipid} tip.`);
|
|
46525
46527
|
return [.../* @__PURE__ */ new Set([...dismissed, tipid])];
|
|
46526
46528
|
}
|
|
46527
|
-
function guidedtiprecall(
|
|
46529
|
+
function guidedtiprecall(_dismissed) {
|
|
46528
46530
|
return [];
|
|
46529
46531
|
}
|
|
46530
46532
|
function pagechipof(input) {
|
package/index.neutral.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// debug.ts
|
|
4
4
|
var cdpkinds = [
|
|
@@ -2010,7 +2010,7 @@ function sessionbundleof(input) {
|
|
|
2010
2010
|
}
|
|
2011
2011
|
|
|
2012
2012
|
// version.ts
|
|
2013
|
-
var packageversion = "2.0.
|
|
2013
|
+
var packageversion = "2.0.98";
|
|
2014
2014
|
var protocolmajor = 2;
|
|
2015
2015
|
var protocolfloormajor = 2;
|
|
2016
2016
|
|
|
@@ -39900,7 +39900,7 @@ function onboardingsteps() {
|
|
|
39900
39900
|
}
|
|
39901
39901
|
];
|
|
39902
39902
|
}
|
|
39903
|
-
function onboardingstart(
|
|
39903
|
+
function onboardingstart(_previous, now) {
|
|
39904
39904
|
return { stepscompleted: [], done: false, startedat: now };
|
|
39905
39905
|
}
|
|
39906
39906
|
function onboardingcomplete(state, stepid, now) {
|
|
@@ -40162,7 +40162,9 @@ function focusorderof(controls = reviewdialogorder) {
|
|
|
40162
40162
|
}
|
|
40163
40163
|
if (controls.length === 0) throw new Error("The review dialog focus order needs its controls.");
|
|
40164
40164
|
const order = controls.map((control, index) => ({ control, tabindex: index + 1 }));
|
|
40165
|
-
|
|
40165
|
+
const focusfirst = controls[0];
|
|
40166
|
+
if (!focusfirst) throw new Error("The review dialog focus order needs its controls.");
|
|
40167
|
+
return { order, focusfirst };
|
|
40166
40168
|
}
|
|
40167
40169
|
function statusbadgeof(input) {
|
|
40168
40170
|
if (input.planstate === void 0) return { state: "idle", waitingcount: 0 };
|
|
@@ -40367,7 +40369,7 @@ function guidedtipdismiss(tips, dismissed, tipid) {
|
|
|
40367
40369
|
if (tip === void 0) throw new Error(`The guidedtips know no ${tipid} tip.`);
|
|
40368
40370
|
return [.../* @__PURE__ */ new Set([...dismissed, tipid])];
|
|
40369
40371
|
}
|
|
40370
|
-
function guidedtiprecall(
|
|
40372
|
+
function guidedtiprecall(_dismissed) {
|
|
40371
40373
|
return [];
|
|
40372
40374
|
}
|
|
40373
40375
|
function pagechipof(input) {
|
package/manifest.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"manifest_version": 3,
|
|
3
3
|
"key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnOEjO8Z0PDgQyfvawGcaO2j+o0GLCFTLNj7TkYC/Avo9l2NenMRq7gp90Nfd7E9MViv/OMcCKSYZ5unv12QPRtv31C+a5UQWDFAOP/cH5mwMd6hsayElrSoW8ta+FwFqmr9dIFkn7cQEU3YhZr4Gcbs+ycUHOxVgDA4NBKB0rQ6e9VW5LvTw0isRYUrqM+M72vKxHk9zUIYYn/LGPvottKBYi2GLr0PHSeC2UE+Shmq7vcFIXj6hDjvD4kLJ5sKoUllEcZ1TPuBcnHUQ9ndKA5iktXDQOIJCUJmi7a0YJ2PGg7fvpYfT9k0ai/qZ+pIoRfoOEwE01bPoDn7NjeYnNQIDAQAB",
|
|
4
4
|
"name": "DevThink",
|
|
5
|
-
"version": "2.0.
|
|
5
|
+
"version": "2.0.98",
|
|
6
6
|
"description": "A consent-first bridge for reviewed browser-agent tasks.",
|
|
7
7
|
"icons": {
|
|
8
8
|
"16": "icons/16.png",
|
package/mcp.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// version.ts
|
|
4
|
-
var packageversion = "2.0.
|
|
4
|
+
var packageversion = "2.0.98";
|
|
5
5
|
var protocolmajor = 2;
|
|
6
6
|
var protocolfloormajor = 2;
|
|
7
7
|
|
package/memory.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// debug.ts
|
|
4
4
|
function expireprofilerecords(input) {
|
package/nativehost.template.json
CHANGED
|
@@ -6,5 +6,5 @@
|
|
|
6
6
|
"allowed_origins": [
|
|
7
7
|
"chrome-extension://__generated_extension_id__/"
|
|
8
8
|
],
|
|
9
|
-
"devthinkBanner": "devthink 2.0.
|
|
9
|
+
"devthinkBanner": "devthink 2.0.98 native host manifest template — GPL-3.0-only — the chromium host manifest of the optional companion process"
|
|
10
10
|
}
|
package/node.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
"use strict";
|
|
3
3
|
var __defProp = Object.defineProperty;
|
|
4
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -2357,7 +2357,7 @@ __export(node_exports, {
|
|
|
2357
2357
|
module.exports = __toCommonJS(node_exports);
|
|
2358
2358
|
|
|
2359
2359
|
// version.ts
|
|
2360
|
-
var packageversion = "2.0.
|
|
2360
|
+
var packageversion = "2.0.98";
|
|
2361
2361
|
var protocolmajor = 2;
|
|
2362
2362
|
var protocolfloormajor = 2;
|
|
2363
2363
|
|
|
@@ -48413,7 +48413,7 @@ function onboardingsteps() {
|
|
|
48413
48413
|
}
|
|
48414
48414
|
];
|
|
48415
48415
|
}
|
|
48416
|
-
function onboardingstart(
|
|
48416
|
+
function onboardingstart(_previous, now) {
|
|
48417
48417
|
return { stepscompleted: [], done: false, startedat: now };
|
|
48418
48418
|
}
|
|
48419
48419
|
function onboardingcomplete(state, stepid, now) {
|
|
@@ -48675,7 +48675,9 @@ function focusorderof(controls = reviewdialogorder) {
|
|
|
48675
48675
|
}
|
|
48676
48676
|
if (controls.length === 0) throw new Error("The review dialog focus order needs its controls.");
|
|
48677
48677
|
const order = controls.map((control, index) => ({ control, tabindex: index + 1 }));
|
|
48678
|
-
|
|
48678
|
+
const focusfirst = controls[0];
|
|
48679
|
+
if (!focusfirst) throw new Error("The review dialog focus order needs its controls.");
|
|
48680
|
+
return { order, focusfirst };
|
|
48679
48681
|
}
|
|
48680
48682
|
function statusbadgeof(input) {
|
|
48681
48683
|
if (input.planstate === void 0) return { state: "idle", waitingcount: 0 };
|
|
@@ -48880,7 +48882,7 @@ function guidedtipdismiss(tips, dismissed, tipid) {
|
|
|
48880
48882
|
if (tip === void 0) throw new Error(`The guidedtips know no ${tipid} tip.`);
|
|
48881
48883
|
return [.../* @__PURE__ */ new Set([...dismissed, tipid])];
|
|
48882
48884
|
}
|
|
48883
|
-
function guidedtiprecall(
|
|
48885
|
+
function guidedtiprecall(_dismissed) {
|
|
48884
48886
|
return [];
|
|
48885
48887
|
}
|
|
48886
48888
|
function pagechipof(input) {
|
package/pack.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// pack.ts
|
|
4
4
|
function artifactchannels() {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wenathlan/devthink",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.98",
|
|
4
4
|
"description": "DevThink is the merged AI development workbench: the provider-owned gateway engine, the DevThink browser extension (the agent surface), the Antigravity engine and the workbench CLI — one product, one binary, one metadata.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "GPL-3.0-only",
|
|
@@ -24,19 +24,19 @@
|
|
|
24
24
|
"web-workbench"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@hono/node-server": "^2.1.
|
|
27
|
+
"@hono/node-server": "^2.1.5",
|
|
28
28
|
"@libsql/client": "^0.18.0",
|
|
29
|
-
"@prisma/adapter-libsql": "^7.10.
|
|
30
|
-
"@prisma/client": "^7.10.
|
|
29
|
+
"@prisma/adapter-libsql": "^7.10.1",
|
|
30
|
+
"@prisma/client": "^7.10.1",
|
|
31
31
|
"hono": "^4.13.13",
|
|
32
32
|
"ink": "^7.1.1",
|
|
33
|
-
"react": "^19.3.
|
|
33
|
+
"react": "^19.3.1",
|
|
34
34
|
"react-devtools-core": "^8.0.0",
|
|
35
35
|
"z-ai-web-dev-sdk": "^0.0.18"
|
|
36
36
|
},
|
|
37
37
|
"engines": {
|
|
38
38
|
"bun": ">=1.4.3 <2",
|
|
39
|
-
"node": ">=26.
|
|
39
|
+
"node": ">=26.12.0 <27",
|
|
40
40
|
"npm": ">=12.2.0 <13",
|
|
41
41
|
"deno": ">=2.0.0 <3"
|
|
42
42
|
},
|
package/policy.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// debug.ts
|
|
4
4
|
var cdpdomains = ["Runtime", "Log", "Debugger", "DOM", "Network", "Page"];
|
|
@@ -350,7 +350,7 @@ function sessionrecordvalid(value) {
|
|
|
350
350
|
}
|
|
351
351
|
|
|
352
352
|
// version.ts
|
|
353
|
-
var packageversion = "2.0.
|
|
353
|
+
var packageversion = "2.0.98";
|
|
354
354
|
var protocolmajor = 2;
|
|
355
355
|
var protocolfloormajor = 2;
|
|
356
356
|
|
package/progress.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// version.ts
|
|
4
|
-
var packageversion = "2.0.
|
|
4
|
+
var packageversion = "2.0.98";
|
|
5
5
|
var protocolmajor = 2;
|
|
6
6
|
|
|
7
7
|
// progress.ts
|
package/protocol.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
|
|
3
3
|
// debug.ts
|
|
4
4
|
var cdpdomains = ["Runtime", "Log", "Debugger", "DOM", "Network", "Page"];
|
|
@@ -1255,7 +1255,7 @@ function cronvalue(value, min, max, names) {
|
|
|
1255
1255
|
}
|
|
1256
1256
|
|
|
1257
1257
|
// version.ts
|
|
1258
|
-
var packageversion = "2.0.
|
|
1258
|
+
var packageversion = "2.0.98";
|
|
1259
1259
|
var protocolmajor = 2;
|
|
1260
1260
|
|
|
1261
1261
|
// types.ts
|
package/server.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! devthink 2.0.
|
|
1
|
+
/*! devthink 2.0.98 — consent-first browser agent library — GPL-3.0-only — https://github.com/wenathlan/devthink */
|
|
2
2
|
var __defProp = Object.defineProperty;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
|
|
@@ -18526,7 +18526,7 @@ function cleanSemver(raw) {
|
|
|
18526
18526
|
const trimmed = raw.trim();
|
|
18527
18527
|
if (SEMVER_RE.test(trimmed)) return trimmed;
|
|
18528
18528
|
const m = trimmed.match(SEMVER_EXTRACT_RE);
|
|
18529
|
-
if (m
|
|
18529
|
+
if (m?.[1] && SEMVER_RE.test(m[1])) return m[1];
|
|
18530
18530
|
return null;
|
|
18531
18531
|
}
|
|
18532
18532
|
function compareSemver(a, b) {
|
|
@@ -18571,13 +18571,13 @@ function parseVersionFromPayload(payload) {
|
|
|
18571
18571
|
if (!payload || typeof payload !== "object") return null;
|
|
18572
18572
|
const obj = payload;
|
|
18573
18573
|
const candidates = [
|
|
18574
|
-
obj
|
|
18575
|
-
obj
|
|
18576
|
-
obj
|
|
18577
|
-
obj
|
|
18578
|
-
obj
|
|
18579
|
-
obj
|
|
18580
|
-
obj
|
|
18574
|
+
obj.version,
|
|
18575
|
+
obj.latestVersion,
|
|
18576
|
+
obj.latest,
|
|
18577
|
+
obj.tag_name,
|
|
18578
|
+
obj.name,
|
|
18579
|
+
obj.data?.version,
|
|
18580
|
+
obj.data?.latestVersion
|
|
18581
18581
|
];
|
|
18582
18582
|
for (const cand of candidates) {
|
|
18583
18583
|
if (typeof cand === "string") {
|
|
@@ -18588,7 +18588,7 @@ function parseVersionFromPayload(payload) {
|
|
|
18588
18588
|
try {
|
|
18589
18589
|
const asString = JSON.stringify(payload);
|
|
18590
18590
|
const m = asString.match(SEMVER_EXTRACT_RE);
|
|
18591
|
-
if (m
|
|
18591
|
+
if (m?.[1]) {
|
|
18592
18592
|
const cleaned = cleanSemver(m[1]);
|
|
18593
18593
|
if (cleaned) return cleaned;
|
|
18594
18594
|
}
|
|
@@ -18603,7 +18603,7 @@ function parseAntigravityVersion(raw) {
|
|
|
18603
18603
|
const trimmed = raw.trim();
|
|
18604
18604
|
const m = trimmed.match(/(\d+\.\d+\.\d+(?:\.\d+)?)/);
|
|
18605
18605
|
if (!m) {
|
|
18606
|
-
const cleaned = trimmed.replace(/[^0-9
|
|
18606
|
+
const cleaned = trimmed.replace(/[^0-9.-]/g, "");
|
|
18607
18607
|
return {
|
|
18608
18608
|
normalized: cleaned.split("-")[0] || FALLBACK_VERSION,
|
|
18609
18609
|
full: trimmed
|
|
@@ -18737,7 +18737,8 @@ async function writeObserverCacheFileAtomic(cachePath, entry) {
|
|
|
18737
18737
|
await fsp3.chmod(dir, OBSERVER_DIR_MODE);
|
|
18738
18738
|
} catch {
|
|
18739
18739
|
}
|
|
18740
|
-
const content = JSON.stringify(entry, null, 2)
|
|
18740
|
+
const content = `${JSON.stringify(entry, null, 2)}
|
|
18741
|
+
`;
|
|
18741
18742
|
const rand = crypto6.randomBytes(6).toString("hex");
|
|
18742
18743
|
const tmp = path6.join(dir, `.${path6.basename(cachePath)}.${process.pid}.${rand}.tmp`);
|
|
18743
18744
|
try {
|
|
@@ -18841,20 +18842,22 @@ async function fetchFromChangelog() {
|
|
|
18841
18842
|
if (!res.ok) continue;
|
|
18842
18843
|
const text = await res.text();
|
|
18843
18844
|
if (!text || text.length < 10) continue;
|
|
18844
|
-
let match;
|
|
18845
|
+
let match = versionRegex.exec(text);
|
|
18845
18846
|
const found = [];
|
|
18846
|
-
while (
|
|
18847
|
+
while (match !== null) {
|
|
18847
18848
|
if (match[1]) found.push(match[1]);
|
|
18848
18849
|
if (found.length >= 10) break;
|
|
18850
|
+
match = versionRegex.exec(text);
|
|
18849
18851
|
}
|
|
18850
18852
|
if (found.length === 0) {
|
|
18851
|
-
let m2;
|
|
18852
|
-
while (
|
|
18853
|
-
if (m2
|
|
18853
|
+
let m2 = semverOnly.exec(text);
|
|
18854
|
+
while (m2 !== null) {
|
|
18855
|
+
if (m2?.[1]) {
|
|
18854
18856
|
const parts = m2[1].split(".").map(Number);
|
|
18855
18857
|
if ((parts[0] ?? 0) >= 1) found.push(m2[1]);
|
|
18856
18858
|
}
|
|
18857
18859
|
if (found.length >= 20) break;
|
|
18860
|
+
m2 = semverOnly.exec(text);
|
|
18858
18861
|
}
|
|
18859
18862
|
}
|
|
18860
18863
|
if (found.length === 0) continue;
|
|
@@ -18963,7 +18966,7 @@ async function fetchAntigravityVersion() {
|
|
|
18963
18966
|
for (const p of manifestPromises) {
|
|
18964
18967
|
try {
|
|
18965
18968
|
const result = await p;
|
|
18966
|
-
if (result
|
|
18969
|
+
if (result?.version) {
|
|
18967
18970
|
memoryCache = result;
|
|
18968
18971
|
await writeCacheFile(result);
|
|
18969
18972
|
return result;
|
|
@@ -18973,7 +18976,7 @@ async function fetchAntigravityVersion() {
|
|
|
18973
18976
|
}
|
|
18974
18977
|
try {
|
|
18975
18978
|
const changelogResult = await fetchFromChangelog();
|
|
18976
|
-
if (changelogResult
|
|
18979
|
+
if (changelogResult?.version) {
|
|
18977
18980
|
memoryCache = changelogResult;
|
|
18978
18981
|
await writeCacheFile(changelogResult);
|
|
18979
18982
|
return changelogResult;
|
|
@@ -19085,7 +19088,7 @@ async function getVersion(opts = {}) {
|
|
|
19085
19088
|
if (!resolved) {
|
|
19086
19089
|
try {
|
|
19087
19090
|
const legacy = await fetchAntigravityVersion();
|
|
19088
|
-
if (legacy
|
|
19091
|
+
if (legacy?.version && legacy.source !== "hardcoded-fallback" && !isBlockedVersion(legacy.version)) {
|
|
19089
19092
|
resolved = legacy.version;
|
|
19090
19093
|
versionMemoryCache.set(MEMORY_CACHE_KEY, {
|
|
19091
19094
|
version: legacy.version,
|
package/umd-example.html
CHANGED