signetai 0.169.1 → 0.171.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/dist/mcp-stdio.js CHANGED
@@ -47400,6 +47400,14 @@ function up108(db) {
47400
47400
  );
47401
47401
  `);
47402
47402
  }
47403
+ function up109(db) {
47404
+ db.exec(`
47405
+ CREATE TABLE IF NOT EXISTS telemetry_install (
47406
+ id TEXT PRIMARY KEY,
47407
+ created_at TEXT NOT NULL
47408
+ );
47409
+ `);
47410
+ }
47403
47411
  var MIGRATIONS = [
47404
47412
  {
47405
47413
  version: 1,
@@ -48262,6 +48270,14 @@ var MIGRATIONS = [
48262
48270
  artifacts: {
48263
48271
  tables: ["embedding_usage"]
48264
48272
  }
48273
+ },
48274
+ {
48275
+ version: 109,
48276
+ name: "telemetry-install",
48277
+ up: up109,
48278
+ artifacts: {
48279
+ tables: ["telemetry_install"]
48280
+ }
48265
48281
  }
48266
48282
  ];
48267
48283
  var LATEST_SCHEMA_VERSION = MIGRATIONS[MIGRATIONS.length - 1]?.version ?? 0;
@@ -50168,10 +50184,10 @@ var DEFAULT_PIPELINE_V2 = {
50168
50184
  inheritContext: true,
50169
50185
  tailChars: 3000
50170
50186
  },
50171
- telemetryEnabled: false,
50187
+ telemetryEnabled: true,
50172
50188
  telemetry: {
50173
- posthogHost: "",
50174
- posthogApiKey: "",
50189
+ posthogHost: "https://us.i.posthog.com",
50190
+ posthogApiKey: "phc_mLsvJmbmp6e9UarrX9Cq5QtTjVNiiphM9mvi5Xnddd8Q",
50175
50191
  flushIntervalMs: 60000,
50176
50192
  flushBatchSize: 50,
50177
50193
  retentionDays: 90,
@@ -1,43 +1,43 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "version": "0.169.1",
3
+ "version": "0.171.0",
4
4
  "assets": [
5
5
  {
6
6
  "name": "signet-darwin-arm64",
7
7
  "platform": "darwin-arm64",
8
- "sha256": "ce043d5a25a5dac5a514953c2684a4eab1d512431157e6ec3b2851fafe1cf9d8",
9
- "size": 117011872
8
+ "sha256": "d9a9f6bbf507325f5e99545fac91c17f109eb9578bbc02dcdba69cd954e12774",
9
+ "size": 117028384
10
10
  },
11
11
  {
12
12
  "name": "signet-darwin-x64",
13
13
  "platform": "darwin-x64",
14
- "sha256": "2d0c0b4b10981a5b7787feb6bea91743efb3d873627132528ccc189f5a51f357",
15
- "size": 121637440
14
+ "sha256": "547ae0cea8586971d25b85ad69b93a60ffdcdf891aa0e620d200a0f51ec0db36",
15
+ "size": 121653824
16
16
  },
17
17
  {
18
18
  "name": "signet-linux-arm64",
19
19
  "platform": "linux-arm64",
20
- "sha256": "b7fb5553e9db186e04ad9eb00cee63748a4de8b968e4fd009a92b6abfc33509f",
21
- "size": 154250902
20
+ "sha256": "146a24621e2ae52363a22d62fca30a47f964f5ed89c2850359a416a8fce9b525",
21
+ "size": 154263445
22
22
  },
23
23
  {
24
24
  "name": "signet-linux-x64",
25
25
  "platform": "linux-x64",
26
- "sha256": "5221fe86bc19fce07f5888158dfedee5b40aac6d0d1006205898bac08b41b7e5",
27
- "size": 154809887
26
+ "sha256": "c6c7691736e1f13b37b0551d6a3c855e3d858dfa95262639a426d753eacfe7b6",
27
+ "size": 154822430
28
28
  },
29
29
  {
30
30
  "name": "signet-win32-x64.exe",
31
31
  "platform": "win32-x64",
32
- "sha256": "eb420d59fe3c0f2739958361fe5b72cb21df8f922f1ba711dc6e5b7058241620",
33
- "size": 170942976
32
+ "sha256": "513b24743e548c2aafbefd493e1930b96ab24b7c551b4129d5eb6d3ba2a77e61",
33
+ "size": 170955776
34
34
  }
35
35
  ],
36
36
  "components": {
37
37
  "connectors": {
38
- "url": "signet-connectors-0.169.1.tar.gz",
39
- "sha256": "a473a75eee9c451760240bdea44cc3bc871fee49e300ed940a2e73e09dfd47a4",
40
- "size": 16246
38
+ "url": "signet-connectors-0.171.0.tar.gz",
39
+ "sha256": "757ced8e001d76c600178dea22708921daaaf4d0e5854d80bd2473d9bb061b5c",
40
+ "size": 16249
41
41
  }
42
42
  }
43
43
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "signetai",
3
- "version": "0.169.1",
3
+ "version": "0.171.0",
4
4
  "description": "Signet native CLI installer wrapper",
5
5
  "type": "module",
6
6
  "bin": {
@@ -65,10 +65,10 @@
65
65
  "access": "public"
66
66
  },
67
67
  "optionalDependencies": {
68
- "signetai-darwin-arm64": "https://github.com/Signet-AI/signetai/releases/download/v0.169.1/signetai-darwin-arm64-0.169.1.tgz",
69
- "signetai-darwin-x64": "https://github.com/Signet-AI/signetai/releases/download/v0.169.1/signetai-darwin-x64-0.169.1.tgz",
70
- "signetai-linux-arm64": "https://github.com/Signet-AI/signetai/releases/download/v0.169.1/signetai-linux-arm64-0.169.1.tgz",
71
- "signetai-linux-x64": "https://github.com/Signet-AI/signetai/releases/download/v0.169.1/signetai-linux-x64-0.169.1.tgz",
72
- "signetai-win32-x64": "https://github.com/Signet-AI/signetai/releases/download/v0.169.1/signetai-win32-x64-0.169.1.tgz"
68
+ "signetai-darwin-arm64": "https://github.com/Signet-AI/signetai/releases/download/v0.171.0/signetai-darwin-arm64-0.171.0.tgz",
69
+ "signetai-darwin-x64": "https://github.com/Signet-AI/signetai/releases/download/v0.171.0/signetai-darwin-x64-0.171.0.tgz",
70
+ "signetai-linux-arm64": "https://github.com/Signet-AI/signetai/releases/download/v0.171.0/signetai-linux-arm64-0.171.0.tgz",
71
+ "signetai-linux-x64": "https://github.com/Signet-AI/signetai/releases/download/v0.171.0/signetai-linux-x64-0.171.0.tgz",
72
+ "signetai-win32-x64": "https://github.com/Signet-AI/signetai/releases/download/v0.171.0/signetai-win32-x64-0.171.0.tgz"
73
73
  }
74
74
  }
@@ -24,6 +24,54 @@ const require = createRequire(import.meta.url);
24
24
 
25
25
  const CONNECTOR_COMPONENT = "connectors";
26
26
 
27
+ // Phase-1 telemetry (issue #1026): a single anonymous install counter sent to
28
+ // the Signet PostHog project. Payload is version+platform only — no
29
+ // identifier, no IP logging. Each install generates a fresh anonymous id, so
30
+ // every ping counts as one distinct install without persisting anything.
31
+ // Opt-out via SIGNET_TELEMETRY_OPTOUT=1 (Homebrew-style). Never blocks the
32
+ // install and never fails it: the request is time-bounded and errors are
33
+ // swallowed, so a telemetry outage cannot break postinstall.
34
+ const TELEMETRY_HOST = "https://us.i.posthog.com";
35
+ const TELEMETRY_API_KEY = "phc_mLsvJmbmp6e9UarrX9Cq5QtTjVNiiphM9mvi5Xnddd8Q"; // public ingest key
36
+ const TELEMETRY_TIMEOUT_MS = 2000;
37
+ const pendingPings = [];
38
+
39
+ function telemetryEnabled() {
40
+ if (process.env.SIGNET_TELEMETRY_OPTOUT === "1" || process.env.SIGNET_TELEMETRY_OPTOUT === "true") {
41
+ return false;
42
+ }
43
+ if (process.env.SIGNET_SKIP_NATIVE_POSTINSTALL === "1" || isWorkspacePackage()) {
44
+ return false;
45
+ }
46
+ return true;
47
+ }
48
+
49
+ function fireInstallPing(platform) {
50
+ if (!telemetryEnabled()) return;
51
+ const body = JSON.stringify({
52
+ api_key: TELEMETRY_API_KEY,
53
+ batch: [
54
+ {
55
+ event: "install.ping",
56
+ distinct_id: require("node:crypto").randomUUID(),
57
+ timestamp: new Date().toISOString(),
58
+ properties: {
59
+ version: nativePackageVersion(),
60
+ platform,
61
+ $lib: "signet-install",
62
+ },
63
+ },
64
+ ],
65
+ });
66
+ const promise = fetch(`${TELEMETRY_HOST}/batch/`, {
67
+ method: "POST",
68
+ headers: { "Content-Type": "application/json" },
69
+ body,
70
+ signal: AbortSignal.timeout(TELEMETRY_TIMEOUT_MS),
71
+ }).catch(() => {});
72
+ pendingPings.push(promise);
73
+ }
74
+
27
75
  function isWorkspacePackage() {
28
76
  const workspaceRoot = dirname(dirname(packageDir));
29
77
  if (basename(dirname(packageDir)) !== "dist") return false;
@@ -66,6 +114,8 @@ async function main() {
66
114
  }
67
115
 
68
116
  const platform = detectNativePlatform();
117
+ // Anonymous install counter (issue #1026): one ping per real install.
118
+ fireInstallPing(platform);
69
119
  const nativePackage = nativePlatforms[platform];
70
120
  let source;
71
121
  try {
@@ -208,7 +258,16 @@ async function installConnectorAssets() {
208
258
  }
209
259
  }
210
260
 
211
- main().catch((err) => {
212
- console.error(`Signet native install failed: ${err.message}`);
213
- process.exit(1);
214
- });
261
+ main()
262
+ .catch((err) => {
263
+ console.error(`Signet native install failed: ${err.message}`);
264
+ process.exit(1);
265
+ })
266
+ .finally(async () => {
267
+ // Give the fire-and-forget telemetry ping a bounded chance to flush.
268
+ // Each request self-times-out, so this never delays the install by
269
+ // more than TELEMETRY_TIMEOUT_MS even if the endpoint hangs.
270
+ if (pendingPings.length > 0) {
271
+ await Promise.allSettled(pendingPings);
272
+ }
273
+ });