veryfront 0.1.1039 → 0.1.1041

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/esm/deno.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export default {
2
2
  "name": "veryfront",
3
- "version": "0.1.1039",
3
+ "version": "0.1.1041",
4
4
  "license": "Apache-2.0",
5
5
  "nodeModulesDir": "auto",
6
6
  "minimumDependencyAge": {
@@ -1 +1 @@
1
- {"version":3,"file":"node-telemetry.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/service/node-telemetry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node-telemetry.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/service/node-telemetry.ts"],"names":[],"mappings":"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"}
@@ -132,7 +132,7 @@ function resolveLlmObservabilityEnabled(env, tracesHeaders) {
132
132
  return explicitFlag;
133
133
  return getHeaderValue(tracesHeaders, "dd-otlp-source") === "llmobs";
134
134
  }
135
- function resolveLlmObservabilityHeaders(env, tracesHeaders) {
135
+ function resolveLlmObservabilityHeaders(env, tracesHeaders, mlAppFallback) {
136
136
  const datadogApiKey = getHeaderValue(tracesHeaders, "dd-api-key") ??
137
137
  env.DD_API_KEY ??
138
138
  env.DATADOG_OTLP_API_KEY;
@@ -141,7 +141,9 @@ function resolveLlmObservabilityHeaders(env, tracesHeaders) {
141
141
  const headers = { ...(tracesHeaders ?? {}) };
142
142
  setHeaderValue(headers, "dd-api-key", datadogApiKey);
143
143
  setHeaderValue(headers, "dd-otlp-source", "llmobs");
144
- const mlApp = env.DD_LLMOBS_ML_APP;
144
+ const mlApp = env.DD_LLMOBS_ML_APP?.trim() ||
145
+ getHeaderValue(headers, "dd-ml-app")?.trim() ||
146
+ mlAppFallback?.trim();
145
147
  if (mlApp) {
146
148
  setHeaderValue(headers, "dd-ml-app", mlApp);
147
149
  }
@@ -180,13 +182,16 @@ export function resolveNodeHostedAgentServiceTelemetryConfig(options) {
180
182
  const baseEndpoint = options.env.OTEL_EXPORTER_OTLP_ENDPOINT;
181
183
  const exporterHeaders = parseExporterHeaders(options.env.OTEL_EXPORTER_OTLP_HEADERS);
182
184
  const tracesHeaders = resolveSignalHeaders(options.env, "TRACES");
183
- const llmObservabilityHeaders = resolveLlmObservabilityHeaders(options.env, tracesHeaders);
185
+ const serviceName = resolveServiceName(options.env, options.defaultServiceName);
186
+ const serviceVersion = resolveServiceVersion(options.env, options.defaultServiceVersion);
187
+ const deploymentEnvironment = resolveDeploymentEnvironment(options.env);
188
+ const llmObservabilityHeaders = resolveLlmObservabilityHeaders(options.env, tracesHeaders, serviceName);
184
189
  const llmObservabilityEnabled = resolveLlmObservabilityEnabled(options.env, tracesHeaders);
185
190
  return {
186
191
  enabled: tracesEnabled || llmObservabilityEnabled || metricsEnabled || logsEnabled,
187
- serviceName: resolveServiceName(options.env, options.defaultServiceName),
188
- serviceVersion: resolveServiceVersion(options.env, options.defaultServiceVersion),
189
- deploymentEnvironment: resolveDeploymentEnvironment(options.env),
192
+ serviceName,
193
+ serviceVersion,
194
+ deploymentEnvironment,
190
195
  samplingRatio: resolveSamplingRatio(options.env),
191
196
  exporterHeaders,
192
197
  tracesEnabled,
@@ -1 +1 @@
1
- {"version":3,"file":"module-response-cache.d.ts","sourceRoot":"","sources":["../../../../src/src/modules/server/module-response-cache.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAQzD,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,oCAAoC;IACnD,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gCAAgC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,6BAA6B;IAC5C,KAAK,EAAE,+BAA+B,CAAC;IACvC,MAAM,EAAE,QAAQ,GAAG,aAAa,CAAC;CAClC;AAiDD,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,oCAAoC,GAC5C,MAAM,CAmBR;AAED,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,6BAA6B,GAAG,SAAS,CAAC,CAqBpD;AAED,wBAAsB,6BAA6B,CACjD,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,+BAA+B,GACrC,OAAO,CAAC,IAAI,CAAC,CAef;AAED,wBAAgB,+BAA+B,IAAI,IAAI,CAEtD;AAED,wBAAgB,kDAAkD,CAChE,KAAK,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,GACrC,IAAI,CAEN"}
1
+ {"version":3,"file":"module-response-cache.d.ts","sourceRoot":"","sources":["../../../../src/src/modules/server/module-response-cache.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAQzD,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,oCAAoC;IACnD,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gCAAgC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,6BAA6B;IAC5C,KAAK,EAAE,+BAA+B,CAAC;IACvC,MAAM,EAAE,QAAQ,GAAG,aAAa,CAAC;CAClC;AAkED,wBAAgB,kCAAkC,CAChD,OAAO,EAAE,oCAAoC,GAC5C,MAAM,CAqBR;AAED,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,6BAA6B,GAAG,SAAS,CAAC,CAqBpD;AAED,wBAAsB,6BAA6B,CACjD,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,+BAA+B,GACrC,OAAO,CAAC,IAAI,CAAC,CAef;AAED,wBAAgB,+BAA+B,IAAI,IAAI,CAEtD;AAED,wBAAgB,kDAAkD,CAChE,KAAK,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,GACrC,IAAI,CAEN"}
@@ -44,6 +44,22 @@ async function getDistributedCache() {
44
44
  return null;
45
45
  return cache.type === "api" || cache.type === "redis" ? cache : null;
46
46
  }
47
+ /**
48
+ * The distributed cache backend validates keys against a strict charset
49
+ * (alphanumeric plus `_ : . - /`) and rejects anything else with HTTP 400.
50
+ * Request module paths routinely contain characters outside that set — notably
51
+ * `@` (e.g. `/@vite/env`) — so an unsanitized path makes the composed key
52
+ * unstorable and the response is silently never cached.
53
+ *
54
+ * We prefix a hash of the exact path (collision resistance for two paths that
55
+ * clamp to the same readable form) with a charset-clamped readable form (kept
56
+ * for debuggability). `:` is deliberately excluded from the readable form so it
57
+ * cannot be confused with the key's field separator.
58
+ */
59
+ function sanitizeModulePathForCacheKey(modulePath) {
60
+ const readable = modulePath.replace(/[^a-zA-Z0-9_.\-/]/g, "-");
61
+ return `${hashString(modulePath)}-${readable}`;
62
+ }
47
63
  export function buildReleaseModuleResponseCacheKey(options) {
48
64
  const projectScope = [
49
65
  options.projectIdentity,
@@ -51,6 +67,8 @@ export function buildReleaseModuleResponseCacheKey(options) {
51
67
  options.projectSlug ?? "",
52
68
  options.branch ?? "",
53
69
  ].join("\0");
70
+ // Fields are joined with `:` (an allowed key character) rather than a NUL
71
+ // byte, which the distributed cache backend's key validator also rejects.
54
72
  return [
55
73
  "module-server-release-response",
56
74
  hashString(projectScope),
@@ -60,8 +78,8 @@ export function buildReleaseModuleResponseCacheKey(options) {
60
78
  options.releaseDependencyManifestVersion == null
61
79
  ? ""
62
80
  : `release-dependency-manifest:${options.releaseDependencyManifestVersion}`,
63
- options.modulePath,
64
- ].join("\0");
81
+ sanitizeModulePathForCacheKey(options.modulePath),
82
+ ].join(":");
65
83
  }
66
84
  export async function getReleaseModuleResponse(cacheKey) {
67
85
  const localEntry = releaseModuleResponseCache.get(cacheKey);
@@ -1,3 +1,3 @@
1
1
  /** Shared version value. */
2
- export declare const VERSION = "0.1.1039";
2
+ export declare const VERSION = "0.1.1041";
3
3
  //# sourceMappingURL=version-constant.d.ts.map
@@ -1,4 +1,4 @@
1
1
  // Keep in sync with deno.json version.
2
2
  // scripts/release.ts updates this constant during releases.
3
3
  /** Shared version value. */
4
- export const VERSION = "0.1.1039";
4
+ export const VERSION = "0.1.1041";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "veryfront",
3
- "version": "0.1.1039",
3
+ "version": "0.1.1041",
4
4
  "description": "The simplest way to build AI-powered apps",
5
5
  "keywords": [
6
6
  "react",
@@ -330,9 +330,9 @@
330
330
  "@types/react": "19.2.14",
331
331
  "@types/react-dom": "19.2.3",
332
332
  "ws": "8.21.0",
333
- "@veryfront/ext-bundler-esbuild": "0.1.1039",
334
- "@veryfront/ext-content-mdx": "0.1.1039",
335
- "@veryfront/ext-css-tailwind": "0.1.1039"
333
+ "@veryfront/ext-bundler-esbuild": "0.1.1041",
334
+ "@veryfront/ext-content-mdx": "0.1.1041",
335
+ "@veryfront/ext-css-tailwind": "0.1.1041"
336
336
  },
337
337
  "devDependencies": {
338
338
  "@types/node": "20.9.0"