@huaweidevtools/aishell-dsh-base 0.0.3 → 0.0.5

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/aggregate.yml CHANGED
@@ -43,6 +43,43 @@ override:
43
43
  # from the gateway's `name` field on the /models entry, so the id stays a
44
44
  # durable routing key while the label stays free to change.
45
45
  - agent-default-model: { provider: aishell, model: trial }
46
+
47
+ # Session feedback (the Like/Dislike pair and `/feedback`) is uploaded to
48
+ # AI Shell's own collector instead of the official one.
49
+ #
50
+ # Why OTLP and not our own JSON: the official client plugin
51
+ # (@deepseek-ai/dsh-session-telemetry-otel) already speaks OTLP/HTTP, so
52
+ # repointing `exporter.url` is the whole client-side change — no new plugin,
53
+ # no new code to keep in step with the harness. The server side decodes it
54
+ # with protojson.
55
+ #
56
+ # What actually leaves the machine is NOT "one feedback record": the plugin's
57
+ # FEEDBACK_ONLY mode releases the complete *unhanded session prefix* through
58
+ # that one feedback event — message text, tool arguments and results, the
59
+ # system prompt, `cwd`. The official feedback dialog discloses this to the
60
+ # user before they submit, which is why this ships without an extra consent toggle.
61
+ #
62
+ # The whole config is restated because a patch replaces a row's `config`
63
+ # wholesale (dsh-app-boot's applyEntryPatches does `target[key] = value`).
64
+ # Omitting `processor` here would silently drop batching and send every
65
+ # record in its own request.
66
+ #
67
+ # timeoutMillis is raised from the official 1000ms: one batch can carry a
68
+ # whole session prefix (up to maxRequestBytes) over the public internet
69
+ # through APIG. A timeout is NOT retried — dsh-otel passes `errorCodes: []`
70
+ # to got, overriding got's default network-error list, so only the status
71
+ # codes below are retried (verified: a hung server is hit exactly once, and
72
+ # the export fails silently). A too-tight budget therefore loses the batch
73
+ # outright rather than retrying it.
74
+ #
75
+ # That is also why the timeout is generous rather than tight: too long costs
76
+ # a slow shutdown, too short costs data.
77
+ #
78
+ # DSH_TELEMETRY_OTLP_URL and DSH_TELEMETRY_MODE both still override — an
79
+ # operator can repoint the collector or switch to DISABLED without
80
+ # republishing the bundle. Keep both as `!!js` expressions; a literal here
81
+ # would make the corresponding switch silently stop working.
82
+ - session-telemetry-otel: { mode: !!js process.env.DSH_TELEMETRY_MODE ?? 'FEEDBACK_ONLY', shutdownTimeoutMillis: 3000, maxRequestBytes: 4000000, exporter: { url: !!js process.env.DSH_TELEMETRY_OTLP_URL ?? 'https://api.aishell.openbuildlab.com/public/feedback', compression: gzip, timeoutMillis: 3000 }, processor: { scheduledDelayMillis: 10000, maxQueueSize: 2048, maxExportBatchSize: 2048, exportTimeoutMillis: 1500 } }
46
83
  disable:
47
84
  - deepseek-account
48
85
  - account-controller
package/cordis.patch.yml CHANGED
@@ -31,6 +31,8 @@
31
31
  # overridden upstream rows (id-targeted; this layer applies after the official bundles)
32
32
  - id: agent-default-model
33
33
  config: { provider: aishell, model: trial }
34
+ - id: session-telemetry-otel
35
+ config: { mode: !!js process.env.DSH_TELEMETRY_MODE ?? 'FEEDBACK_ONLY', shutdownTimeoutMillis: 3000, maxRequestBytes: 4000000, exporter: { url: !!js process.env.DSH_TELEMETRY_OTLP_URL ?? 'https://api.aishell.openbuildlab.com/public/feedback', compression: gzip, timeoutMillis: 3000 }, processor: { scheduledDelayMillis: 10000, maxQueueSize: 2048, maxExportBatchSize: 2048, exportTimeoutMillis: 1500 } }
34
36
 
35
37
  # disabled upstream rows (id-targeted; this layer applies after the official bundles)
36
38
  - id: deepseek-account
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@huaweidevtools/aishell-dsh-base",
3
3
  "description": "aishell DSH profile base layer — aggregates aishell plugin packages over dsh-base",
4
- "version": "0.0.3",
4
+ "version": "0.0.5",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -17,7 +17,7 @@
17
17
  }
18
18
  },
19
19
  "peerDependencies": {
20
- "@deepseek-ai/dsh-base": ">=0.2.0-0 <0.3.0-0"
20
+ "@deepseek-ai/dsh-base": "0.2.0-rc.1 || 0.2.1-rc.1 || 0.2.1-rc.2 || 0.2.1"
21
21
  },
22
22
  "files": [
23
23
  "cordis.patch.yml",
@@ -25,12 +25,12 @@
25
25
  ],
26
26
  "license": "Apache-2.0",
27
27
  "dependencies": {
28
- "@huaweidevtools/aishell-dsh-credentials-store": "0.0.3",
29
- "@huaweidevtools/aishell-dsh-llm": "0.0.3",
30
- "@huaweidevtools/aishell-dsh-ops-deploy": "0.0.3",
31
- "@huaweidevtools/aishell-dsh-brand": "0.0.3",
32
- "@huaweidevtools/aishell-dsh-client-credentials": "0.0.3",
33
- "@huaweidevtools/aishell-dsh-huaweicloud-docs": "0.0.3"
28
+ "@huaweidevtools/aishell-dsh-credentials-store": "0.0.5",
29
+ "@huaweidevtools/aishell-dsh-llm": "0.0.5",
30
+ "@huaweidevtools/aishell-dsh-client-credentials": "0.0.5",
31
+ "@huaweidevtools/aishell-dsh-ops-deploy": "0.0.5",
32
+ "@huaweidevtools/aishell-dsh-brand": "0.0.5",
33
+ "@huaweidevtools/aishell-dsh-huaweicloud-docs": "0.0.5"
34
34
  },
35
35
  "scripts": {}
36
36
  }