downcity 1.1.249 → 1.1.251

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.
@@ -1 +1 @@
1
- {"version":3,"file":"CloudflareWorkersDeployer.d.ts","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/CloudflareWorkersDeployer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,OAAO,KAAK,EACV,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,+CAA+C,CAAC;AAYvD;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,2BAA2B,EACxC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAsIf"}
1
+ {"version":3,"file":"CloudflareWorkersDeployer.d.ts","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/CloudflareWorkersDeployer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,OAAO,KAAK,EACV,uBAAuB,EACvB,2BAA2B,EAC5B,MAAM,+CAA+C,CAAC;AAavD;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,2BAA2B,EACxC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAoJf"}
@@ -14,6 +14,7 @@ import { CliError } from "../../../shared/CliError.js";
14
14
  import { resolveCloudflareAccount } from "./CloudflareAccountResolver.js";
15
15
  import { resolveD1Database } from "./D1DatabaseResolver.js";
16
16
  import { resolveQueue } from "./QueueResolver.js";
17
+ import { resolveR2Bucket } from "./R2BucketResolver.js";
17
18
  import { writeWranglerConfig } from "./WranglerConfigWriter.js";
18
19
  import { runCommand } from "./CommandRunner.js";
19
20
  import { bumpProjectPatchVersion } from "./ProjectVersionManager.js";
@@ -68,6 +69,11 @@ export async function deployCloudflareWorkers(config_file, options) {
68
69
  account_id,
69
70
  create_if_missing: options.dry_run !== true,
70
71
  });
72
+ const storage_result = await resolveR2Bucket({
73
+ config_file,
74
+ account_id,
75
+ create_if_missing: options.dry_run !== true,
76
+ });
71
77
  const wrangler_result = writeWranglerConfig(config_file, d1_result.resolved_database_id);
72
78
  emitCliBlock({
73
79
  tone: "success",
@@ -86,6 +92,15 @@ export async function deployCloudflareWorkers(config_file, options) {
86
92
  { label: "status", value: queue_result.summary.status },
87
93
  ],
88
94
  });
95
+ emitCliBlock({
96
+ tone: "success",
97
+ title: "Storage",
98
+ facts: [
99
+ { label: "type", value: storage_result.summary.type ?? "(none)" },
100
+ { label: "name", value: storage_result.summary.name ?? "(none)" },
101
+ { label: "status", value: storage_result.summary.status },
102
+ ],
103
+ });
89
104
  let output = "";
90
105
  try {
91
106
  output = await runWranglerDeploy(config_file, {
@@ -1 +1 @@
1
- {"version":3,"file":"CloudflareWorkersDeployer.js","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/CloudflareWorkersDeployer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CloudflareWorkersDeployer.js","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/CloudflareWorkersDeployer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Cloudflare R2 bucket 解析器。
3
+ *
4
+ * 关键点(中文)
5
+ * - Storage 是 Workers 目标的默认文件存储资源,由 `city deploy` 自动准备。
6
+ * - 用户只需要在 `federation.json.resources.storage` 声明稳定资源名和公开 URL。
7
+ * - R2 bucket 没有需要写入项目配置的 id,Wrangler 配置只绑定 bucket name。
8
+ */
9
+ import type { FederationProjectConfigFile } from "../../types/FederationProjectConfig.js";
10
+ import type { FederationStorageSummary } from "../../types/FederationDeployRuntime.js";
11
+ /** R2 bucket 解析参数。 */
12
+ export interface ResolveR2BucketParams {
13
+ /** City 项目配置文件。 */
14
+ config_file: FederationProjectConfigFile;
15
+ /** Cloudflare account id。 */
16
+ account_id?: string;
17
+ /** 找不到同名 bucket 时是否允许创建。 */
18
+ create_if_missing?: boolean;
19
+ }
20
+ /** R2 bucket 解析结果。 */
21
+ export interface ResolveR2BucketResult {
22
+ /** 本次 Storage 准备摘要。 */
23
+ summary: FederationStorageSummary;
24
+ }
25
+ /**
26
+ * 确认 R2 bucket 存在,必要时创建。
27
+ *
28
+ * dry-run 模式不会创建远程 bucket;如果 bucket 不存在,只返回 pending 摘要,
29
+ * 让 Wrangler dry-run 继续验证临时 binding 配置。
30
+ */
31
+ export declare function resolveR2Bucket(params: ResolveR2BucketParams): Promise<ResolveR2BucketResult>;
32
+ //# sourceMappingURL=R2BucketResolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"R2BucketResolver.d.ts","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/R2BucketResolver.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,2BAA2B,EAC5B,MAAM,+CAA+C,CAAC;AACvD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+CAA+C,CAAC;AAG9F,sBAAsB;AACtB,MAAM,WAAW,qBAAqB;IACpC,mBAAmB;IACnB,WAAW,EAAE,2BAA2B,CAAC;IACzC,6BAA6B;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4BAA4B;IAC5B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,sBAAsB;AACtB,MAAM,WAAW,qBAAqB;IACpC,uBAAuB;IACvB,OAAO,EAAE,wBAAwB,CAAC;CACnC;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,qBAAqB,GAC5B,OAAO,CAAC,qBAAqB,CAAC,CAuDhC"}
@@ -0,0 +1,141 @@
1
+ /**
2
+ * Cloudflare R2 bucket 解析器。
3
+ *
4
+ * 关键点(中文)
5
+ * - Storage 是 Workers 目标的默认文件存储资源,由 `city deploy` 自动准备。
6
+ * - 用户只需要在 `federation.json.resources.storage` 声明稳定资源名和公开 URL。
7
+ * - R2 bucket 没有需要写入项目配置的 id,Wrangler 配置只绑定 bucket name。
8
+ */
9
+ import { runCommand } from "./CommandRunner.js";
10
+ /**
11
+ * 确认 R2 bucket 存在,必要时创建。
12
+ *
13
+ * dry-run 模式不会创建远程 bucket;如果 bucket 不存在,只返回 pending 摘要,
14
+ * 让 Wrangler dry-run 继续验证临时 binding 配置。
15
+ */
16
+ export async function resolveR2Bucket(params) {
17
+ const storage = params.config_file.config.resources.storage;
18
+ if (!storage) {
19
+ return {
20
+ summary: { status: "skipped" },
21
+ };
22
+ }
23
+ if (storage.type !== "r2") {
24
+ return {
25
+ summary: { name: storage.name, type: storage.type, status: "skipped" },
26
+ };
27
+ }
28
+ const bucket_name = storage.name;
29
+ const create_if_missing = params.create_if_missing !== false;
30
+ const exists = await findExistingR2Bucket({
31
+ project_dir: params.config_file.project_dir,
32
+ account_id: params.account_id,
33
+ bucket_name,
34
+ });
35
+ if (exists) {
36
+ return {
37
+ summary: {
38
+ name: bucket_name,
39
+ type: "r2",
40
+ status: "reused",
41
+ },
42
+ };
43
+ }
44
+ if (!create_if_missing) {
45
+ return {
46
+ summary: {
47
+ name: bucket_name,
48
+ type: "r2",
49
+ status: "pending",
50
+ },
51
+ };
52
+ }
53
+ await runCommand({
54
+ label: "Create Cloudflare R2 bucket",
55
+ command: `pnpm exec wrangler r2 bucket create ${shellQuote(bucket_name)}`,
56
+ cwd: params.config_file.project_dir,
57
+ env: { CLOUDFLARE_ACCOUNT_ID: params.account_id },
58
+ capture: true,
59
+ });
60
+ return {
61
+ summary: {
62
+ name: bucket_name,
63
+ type: "r2",
64
+ status: "created",
65
+ },
66
+ };
67
+ }
68
+ /**
69
+ * 从 Cloudflare 已有 R2 bucket 列表中查找同名 bucket。
70
+ */
71
+ async function findExistingR2Bucket(params) {
72
+ const output = await runCommand({
73
+ label: "List Cloudflare R2 buckets",
74
+ command: "pnpm exec wrangler r2 bucket list",
75
+ cwd: params.project_dir,
76
+ env: { CLOUDFLARE_ACCOUNT_ID: params.account_id },
77
+ capture: true,
78
+ });
79
+ return hasBucketInListOutput(output, params.bucket_name);
80
+ }
81
+ /**
82
+ * 从 Wrangler R2 bucket list 输出中判断指定 bucket 是否存在。
83
+ */
84
+ function hasBucketInListOutput(output, bucket_name) {
85
+ const trimmed_output = output.trim();
86
+ if (!trimmed_output)
87
+ return false;
88
+ try {
89
+ const parsed = JSON.parse(trimmed_output);
90
+ const items = Array.isArray(parsed)
91
+ ? parsed
92
+ : Array.isArray(parsed?.buckets)
93
+ ? parsed.buckets
94
+ : [];
95
+ const has_json_bucket = items.some((item) => {
96
+ const record = item && typeof item === "object" ? item : {};
97
+ return String(record.name ?? record.bucket_name ?? "").trim() === bucket_name;
98
+ });
99
+ if (has_json_bucket)
100
+ return true;
101
+ }
102
+ catch {
103
+ // Wrangler R2 bucket list 可能是文本输出;JSON 解析失败时继续按表格/文本解析。
104
+ }
105
+ return readTextBucketNames(trimmed_output).some((name) => name === bucket_name);
106
+ }
107
+ /**
108
+ * 从文本表格或纯文本输出中读取 bucket 名称。
109
+ */
110
+ function readTextBucketNames(output) {
111
+ const names = [];
112
+ for (const line of output.replace(/\u001b\[[0-9;]*m/g, "").split(/\r?\n/)) {
113
+ const cells = line
114
+ .split(/[│|]/g)
115
+ .map((cell) => cell.trim())
116
+ .filter(Boolean);
117
+ if (cells.length > 1) {
118
+ names.push(...cells.filter(isPossibleBucketName));
119
+ continue;
120
+ }
121
+ const plain_name = line.trim().replace(/^[-*]\s+/, "");
122
+ if (isPossibleBucketName(plain_name))
123
+ names.push(plain_name);
124
+ }
125
+ return names;
126
+ }
127
+ /**
128
+ * 判断文本片段是否像一个 Cloudflare R2 bucket 名称。
129
+ */
130
+ function isPossibleBucketName(value) {
131
+ if (!value || value === "name" || value === "bucket" || value === "Bucket Name")
132
+ return false;
133
+ return /^[a-zA-Z0-9][a-zA-Z0-9._-]*$/.test(value);
134
+ }
135
+ /**
136
+ * shell 参数转义。
137
+ */
138
+ function shellQuote(value) {
139
+ return `'${value.replace(/'/g, "'\\''")}'`;
140
+ }
141
+ //# sourceMappingURL=R2BucketResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"R2BucketResolver.js","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/R2BucketResolver.ts"],"names":[],"mappings":"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"}
@@ -74,4 +74,25 @@ export interface FederationQueueSummary {
74
74
  */
75
75
  status: FederationQueueStatus;
76
76
  }
77
+ /**
78
+ * Storage 准备状态。
79
+ */
80
+ export type FederationStorageStatus = "created" | "reused" | "pending" | "skipped";
81
+ /**
82
+ * Storage 准备结果。
83
+ */
84
+ export interface FederationStorageSummary {
85
+ /**
86
+ * 存储资源名称。
87
+ */
88
+ name?: string;
89
+ /**
90
+ * 存储资源类型。
91
+ */
92
+ type?: "r2";
93
+ /**
94
+ * 存储资源准备状态。
95
+ */
96
+ status: FederationStorageStatus;
97
+ }
77
98
  //# sourceMappingURL=FederationDeployRuntime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FederationDeployRuntime.d.ts","sourceRoot":"","sources":["../../../src/federation/types/FederationDeployRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,MAAM,MAAM,6BAA6B,GACrC,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,6BAA6B,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,oCAAoC;IACnD;;OAEG;IACH,KAAK,EAAE,6BAA6B,CAAC;IAErC;;OAEG;IACH,SAAS,EAAE,6BAA6B,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAClC,SAAS,GACT,QAAQ,GACR,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,MAAM,EAAE,0BAA0B,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B,SAAS,GACT,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,EAAE,qBAAqB,CAAC;CAC/B"}
1
+ {"version":3,"file":"FederationDeployRuntime.d.ts","sourceRoot":"","sources":["../../../src/federation/types/FederationDeployRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,MAAM,MAAM,6BAA6B,GACrC,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,6BAA6B,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,oCAAoC;IACnD;;OAEG;IACH,KAAK,EAAE,6BAA6B,CAAC;IAErC;;OAEG;IACH,SAAS,EAAE,6BAA6B,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAClC,SAAS,GACT,QAAQ,GACR,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,MAAM,EAAE,0BAA0B,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B,SAAS,GACT,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,EAAE,qBAAqB,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAC/B,SAAS,GACT,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,IAAI,CAAC;IAEZ;;OAEG;IACH,MAAM,EAAE,uBAAuB,CAAC;CACjC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "downcity",
3
- "version": "1.1.249",
3
+ "version": "1.1.251",
4
4
  "type": "module",
5
5
  "description": "Downcity CLI — unified City and Agent host management",
6
6
  "bin": {
@@ -23,12 +23,12 @@
23
23
  "@ai-sdk/openai": "^3.0.67",
24
24
  "@ai-sdk/openai-compatible": "^2.0.48",
25
25
  "@ai-sdk/xai": "^3.0.93",
26
- "@downcity/agent": "^1.1.160",
27
- "@downcity/city": "^0.2.110",
28
- "@downcity/plugins": "^1.0.108",
29
- "@downcity/server": "^0.1.20",
30
- "@downcity/shell": "^0.1.36",
31
- "@downcity/type": "0.1.70",
26
+ "@downcity/agent": "^1.1.162",
27
+ "@downcity/city": "^0.2.112",
28
+ "@downcity/plugins": "^1.0.111",
29
+ "@downcity/server": "^0.1.21",
30
+ "@downcity/shell": "^0.1.37",
31
+ "@downcity/type": "0.1.71",
32
32
  "@earendil-works/pi-tui": "^0.74.2",
33
33
  "@larksuiteoapi/node-sdk": "^1.66.0",
34
34
  "@openrouter/ai-sdk-provider": "^2.9.0",