edgeone 1.5.9 → 1.6.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.
Files changed (47) hide show
  1. package/README.md +26 -26
  2. package/edgeone-bin/edgeone.js +3 -3
  3. package/edgeone-dist/cli.js +86879 -2307
  4. package/edgeone-dist/libs-pages-agent-toolkit/README.md +8 -0
  5. package/edgeone-dist/libs-pages-agent-toolkit/pages_agent_toolkit-0.1.40-py3-none-any.whl +0 -0
  6. package/edgeone-dist/libs-pages-blob-python/README.md +38 -0
  7. package/edgeone-dist/libs-pages-blob-python/pages_blob_python-0.11.0-py3-none-any.whl +0 -0
  8. package/edgeone-dist/pages/dev/runner-worker.js +86521 -2090
  9. package/edgeone-dist/pages/observability-python/__init__.py +32 -0
  10. package/edgeone-dist/pages/observability-python/_compat.py +69 -0
  11. package/edgeone-dist/pages/observability-python/apm/__init__.py +13 -0
  12. package/edgeone-dist/pages/observability-python/apm/config.py +85 -0
  13. package/edgeone-dist/pages/observability-python/apm/llm_semconv.py +53 -0
  14. package/edgeone-dist/pages/observability-python/apm/metrics_bridge.py +226 -0
  15. package/edgeone-dist/pages/observability-python/apm/span_exporter.py +384 -0
  16. package/edgeone-dist/pages/observability-python/bootstrap.py +158 -0
  17. package/edgeone-dist/pages/observability-python/build.py +119 -0
  18. package/edgeone-dist/pages/observability-python/context_patches.py +167 -0
  19. package/edgeone-dist/pages/observability-python/context_propagator.py +78 -0
  20. package/edgeone-dist/pages/observability-python/registry.json +95 -0
  21. package/edgeone-dist/pages/observability-python/registry.py +141 -0
  22. package/edgeone-dist/pages/observability-python/telemetry.py +214 -0
  23. package/edgeone-dist/pages/observability-python/tracer.py +165 -0
  24. package/edgeone-dist/pages/templates/agent-python/__init__.py +11 -0
  25. package/edgeone-dist/pages/templates/agent-python/adapter.py +908 -0
  26. package/edgeone-dist/pages/templates/agent-python/context.py +689 -0
  27. package/edgeone-dist/pages/templates/agent-python/local_blob_store.py +172 -0
  28. package/edgeone-dist/pages/templates/agent-python/memory.py +2301 -0
  29. package/edgeone-dist/pages/templates/agent-python/runtime.py +839 -0
  30. package/edgeone-dist/pages/templates/agent-python/store.py +204 -0
  31. package/edgeone-dist/studio/ui/assets/agent-obs-Dvi4IpEy.js +4 -0
  32. package/edgeone-dist/studio/ui/assets/agent-obs-qDJCE0TQ.css +1 -0
  33. package/edgeone-dist/studio/ui/assets/highlight-ClXAL37H.js +3 -0
  34. package/edgeone-dist/studio/ui/assets/index-Cz5oQnXW.css +1 -0
  35. package/edgeone-dist/studio/ui/assets/index-DD3d108t.js +1 -0
  36. package/edgeone-dist/studio/ui/assets/moment-BYRO94Ou.js +10 -0
  37. package/edgeone-dist/studio/ui/assets/react-dom-ZzBHVjtL.js +24 -0
  38. package/edgeone-dist/studio/ui/assets/react-hnpCyKql.js +17 -0
  39. package/edgeone-dist/studio/ui/assets/tea-CADagUwM.css +1 -0
  40. package/edgeone-dist/studio/ui/assets/tea-Slf_ajmf.js +334 -0
  41. package/edgeone-dist/studio/ui/favicon.ico +0 -0
  42. package/edgeone-dist/studio/ui/index.html +31 -0
  43. package/libs-pages-agent-toolkit/README.md +8 -0
  44. package/libs-pages-agent-toolkit/pages_agent_toolkit-0.1.40-py3-none-any.whl +0 -0
  45. package/libs-pages-blob-python/README.md +38 -0
  46. package/libs-pages-blob-python/pages_blob_python-0.11.0-py3-none-any.whl +0 -0
  47. package/package.json +33 -7
@@ -0,0 +1,31 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <link rel="icon" type="image/x-icon" href="./favicon.ico" />
7
+ <title>EdgeOne Agent Observability</title>
8
+ <style>
9
+ html, body, #root { margin: 0; padding: 0; height: 100%; }
10
+ body {
11
+ font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI",
12
+ Roboto, "Helvetica Neue", "PingFang SC", "Microsoft YaHei",
13
+ sans-serif;
14
+ background: #f7f8fa;
15
+ }
16
+ </style>
17
+ <script type="module" crossorigin src="./assets/index-DD3d108t.js"></script>
18
+ <link rel="modulepreload" crossorigin href="./assets/react-hnpCyKql.js">
19
+ <link rel="modulepreload" crossorigin href="./assets/react-dom-ZzBHVjtL.js">
20
+ <link rel="modulepreload" crossorigin href="./assets/moment-BYRO94Ou.js">
21
+ <link rel="modulepreload" crossorigin href="./assets/tea-Slf_ajmf.js">
22
+ <link rel="modulepreload" crossorigin href="./assets/highlight-ClXAL37H.js">
23
+ <link rel="modulepreload" crossorigin href="./assets/agent-obs-Dvi4IpEy.js">
24
+ <link rel="stylesheet" crossorigin href="./assets/tea-CADagUwM.css">
25
+ <link rel="stylesheet" crossorigin href="./assets/agent-obs-qDJCE0TQ.css">
26
+ <link rel="stylesheet" crossorigin href="./assets/index-Cz5oQnXW.css">
27
+ </head>
28
+ <body>
29
+ <div id="root"></div>
30
+ </body>
31
+ </html>
@@ -0,0 +1,8 @@
1
+ # pages-agent-toolkit wheel
2
+
3
+ 此目录存放 `pages-agent-toolkit` 的 Python wheel 文件,随 CLI npm 包一起发货。
4
+
5
+ 构建期通过 PEP 508 `pages-agent-toolkit @ file://...` 语法让 uv/pip 直接读本地文件,
6
+ 绕开 PyPI index 解析(该包仅发布在内网 PyPI)。
7
+
8
+ 由 `npm run prepare:agent-toolkit-wheel` 自动准备,不要手动修改。
@@ -0,0 +1,38 @@
1
+ # libs-pages-blob-python
2
+
3
+ 这个目录存放随 `@tencent/edgeone` npm 包一起发布的 `pages-blob-python` wheel 文件。
4
+
5
+ ## 为什么要打进 CLI?
6
+
7
+ `pages-blob-python` 发布在公司内部 PyPI 镜像上,外网用户的 pip/uv 默认 index
8
+ 解析不到。把 wheel 随 CLI 发货,用户执行 `npm install -g @tencent/edgeone`
9
+ 时就已经拿到了 wheel;`edgeone pages build` 构建 agent-python 项目时,CLI
10
+ 会用 PEP 508 `pages-blob-python @ file://...` 语法把这个本地 wheel 注入到
11
+ `.edgeone/agent-python/lib/`,整个过程不需要联到内网 PyPI。
12
+
13
+ ## 目录内容
14
+
15
+ - `pages_blob_python-<version>-py3-none-any.whl`:随构建打入的 pure-Python wheel
16
+ - `README.md`:本说明
17
+
18
+ ## 如何更新 wheel?
19
+
20
+ 不要手动把 wheel 放到这里。统一通过 CI 脚本拉取:
21
+
22
+ ```bash
23
+ cd packages/tef-cli
24
+ node scripts/prepare-pages-blob-wheel.js
25
+ ```
26
+
27
+ 脚本会从内网 artifactory 下载指定版本的 wheel 覆盖写入当前目录。本地开发时
28
+ 若脚本无法访问源(例如外网),脚本会检测已有 wheel 是否满足版本约束,满足
29
+ 则跳过;不满足则报错退出。
30
+
31
+ ## 运行时行为
32
+
33
+ 参见 `src/pages/builder/impls/agent-python.ts` 的 `getPagesBlobWheelPath()`
34
+ 和 `AGENT_PLATFORM_DEPS` 装配逻辑。两种 CLI 形态都要覆盖:
35
+
36
+ - **bundled**(`edgeone-dist/cli.js`):wheel 随 npm 包发货,在 CLI 根目录下
37
+ 的 `libs-pages-blob-python/`
38
+ - **source**(ts-node/vitest):同一路径,仓库自带
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "edgeone",
3
- "version": "1.5.9",
3
+ "version": "1.6.0",
4
4
  "description": "Command-line interface for TencentCloud Pages Functions",
5
5
  "bin": {
6
6
  "edgeone": "./edgeone-bin/edgeone.js"
@@ -8,8 +8,14 @@
8
8
  "files": [
9
9
  "./edgeone-bin/edgeone.js",
10
10
  "./edgeone-dist/cli.js",
11
- "./edgeone-dist/templates",
12
- "./edgeone-dist/pages/dev/runner-worker.js"
11
+ "./edgeone-dist/pages/templates",
12
+ "./edgeone-dist/pages/dev/runner-worker.js",
13
+ "./edgeone-dist/pages/observability-python/**",
14
+ "./edgeone-dist/libs-pages-blob-python/**",
15
+ "./edgeone-dist/libs-pages-agent-toolkit/**",
16
+ "./edgeone-dist/studio/**",
17
+ "./libs-pages-blob-python/**",
18
+ "./libs-pages-agent-toolkit/**"
13
19
  ],
14
20
  "author": "",
15
21
  "keywords": [
@@ -24,21 +30,28 @@
24
30
  "clean": "rimraf ./edgeone-dist ./edgeone-bin ./libs-node-ai ./libs-kv-client",
25
31
  "bundle": "node -r esbuild-register ./scripts/bundle.ts",
26
32
  "watch": "node -r esbuild-register ./scripts/bundle.ts watch",
27
- "build": "npm run clean && npm run build:pages-ai && npm run build:kv-client && npm run bundle",
33
+ "build": "npm run clean && npm run build:pages-ai && npm run build:kv-client && npm run prepare:blob-wheel && npm run prepare:agent-toolkit-wheel && npm run bundle",
28
34
  "build:pages-ai": "node ./scripts/build-pages-ai.js",
29
35
  "build:kv-client": "node ./scripts/build-kv-client.js",
36
+ "prepare:blob-wheel": "node ./scripts/prepare-pages-blob-wheel.js",
37
+ "prepare:agent-toolkit-wheel": "node ./scripts/prepare-pages-agent-toolkit-wheel.js",
38
+ "verify:publish-assets": "node ./scripts/verify-publish-assets.js",
39
+ "upload:agent-version-manifest": "node ./scripts/upload-agent-version-manifest.js",
30
40
  "format": "prettier --write \"src/**/*.{ts,tsx,js,jsx,json,md}\" \"scripts/**/*.{ts,js}\" \"*.{json,md}\"",
31
- "prepack": "npm run build",
32
- "prepublishOnly": "npm run build",
41
+ "prepack": "npm run build && npm run verify:publish-assets",
42
+ "prepublishOnly": "npm run build && npm run verify:publish-assets",
33
43
  "test": "vitest run",
34
44
  "test:watch": "vitest",
35
- "test:coverage": "vitest run --coverage"
45
+ "test:coverage": "vitest run --coverage",
46
+ "test:observability": "vitest run --config src/agent/observability/node/tests/vitest.config.ts && cd src/agent/observability/python && uv run pytest tests/ -q"
36
47
  },
37
48
  "dependencies": {
38
49
  "@edgeone/framework-detect": "^0.0.2",
39
50
  "@edgeone/is-spa": "^0.0.3",
40
51
  "@edgeone/nuxt-pages": "1.1.0",
41
52
  "@edgeone/opennextjs-pages": "0.2.4",
53
+ "@edgeone/pages-agent-toolkit": "^0.1.34",
54
+ "@edgeone/pages-blob": "0.0.12",
42
55
  "archiver": "^7.0.1",
43
56
  "chokidar": "^4.0.1",
44
57
  "common-path-prefix": "^1.0.0",
@@ -51,6 +64,7 @@
51
64
  "esbuild-plugin-vue": "^0.2.4",
52
65
  "fast-glob": "^3.3.0",
53
66
  "fs-extra": "^11.3.1",
67
+ "giget": "^2.0.0",
54
68
  "ink-table": "^3.1.0",
55
69
  "inquirer": "^8.2.4",
56
70
  "install": "^0.13.0",
@@ -71,6 +85,17 @@
71
85
  "@babel/parser": "^7.28.0",
72
86
  "@babel/traverse": "^7.28.0",
73
87
  "@babel/types": "^7.28.0",
88
+ "@opentelemetry/api": "^1.9.1",
89
+ "@opentelemetry/core": "^1.30.1",
90
+ "@opentelemetry/exporter-metrics-otlp-http": "^0.55.0",
91
+ "@opentelemetry/exporter-trace-otlp-http": "^0.55.0",
92
+ "@opentelemetry/instrumentation": "^0.55.0",
93
+ "@opentelemetry/otlp-transformer": "^0.55.0",
94
+ "@opentelemetry/resources": "^1.30.1",
95
+ "@opentelemetry/sdk-metrics": "^1.30.1",
96
+ "@opentelemetry/sdk-trace-base": "^1.30.1",
97
+ "@opentelemetry/sdk-trace-node": "^1.30.1",
98
+ "@opentelemetry/semantic-conventions": "^1.40.0",
74
99
  "@tencent/capi-nodejs-sdk": "^2.3.2",
75
100
  "@types/http-proxy": "^1.17.12",
76
101
  "@types/inquirer": "^9.0.8",
@@ -99,6 +124,7 @@
99
124
  "node-fetch": "^3.3.2",
100
125
  "prettier": "^3.1.1",
101
126
  "prompts": "^2.4.2",
127
+ "protobufjs": "^8.4.2",
102
128
  "react": "^17.0.2",
103
129
  "rimraf": "^6.0.1",
104
130
  "semiver": "^1.1.0",