@clawos-dev/clawd 0.2.135-beta.284.17b2ea2 → 0.2.135
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/cli.cjs
CHANGED
|
@@ -40034,6 +40034,14 @@ var StateFileManager = class {
|
|
|
40034
40034
|
}
|
|
40035
40035
|
};
|
|
40036
40036
|
|
|
40037
|
+
// src/discovery/source-from-env.ts
|
|
40038
|
+
function readDaemonSourceFromEnv(env = process.env) {
|
|
40039
|
+
const v2 = env.CLAWD_DAEMON_SOURCE;
|
|
40040
|
+
if (typeof v2 !== "string") return void 0;
|
|
40041
|
+
const trimmed = v2.trim();
|
|
40042
|
+
return trimmed.length > 0 ? trimmed : void 0;
|
|
40043
|
+
}
|
|
40044
|
+
|
|
40037
40045
|
// src/tunnel/tunnel-manager.ts
|
|
40038
40046
|
var import_node_fs24 = __toESM(require("fs"), 1);
|
|
40039
40047
|
var import_node_path25 = __toESM(require("path"), 1);
|
|
@@ -45929,7 +45937,8 @@ async function startDaemon(config) {
|
|
|
45929
45937
|
protocolVersion: PROTOCOL_VERSION,
|
|
45930
45938
|
startedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
45931
45939
|
authMode,
|
|
45932
|
-
authToken: resolvedAuthToken ?? void 0
|
|
45940
|
+
authToken: resolvedAuthToken ?? void 0,
|
|
45941
|
+
source: readDaemonSourceFromEnv()
|
|
45933
45942
|
};
|
|
45934
45943
|
stateMgr.write(stateSnapshot);
|
|
45935
45944
|
process.stdout.write(`Ready: ${url}
|
|
@@ -70,6 +70,19 @@ done
|
|
|
70
70
|
- **显式优于隐式**(数据流和依赖清晰可见)
|
|
71
71
|
- **测试驱动**(先写测试)
|
|
72
72
|
|
|
73
|
+
## 模块边界:deep-leaf 优先
|
|
74
|
+
|
|
75
|
+
划模块边界时按这两条判据,理想是"既 deep 又 leaf"的节点:
|
|
76
|
+
|
|
77
|
+
- **deep**(接口窄、内部厚):调用方不需要知道实现细节就能正确用。改实现 → 调用方无感
|
|
78
|
+
- **leaf**(爆炸半径小):没有其他模块依赖它的内部状态。它出 bug / 被重写不会污染上游
|
|
79
|
+
|
|
80
|
+
**反面**:浅模块(接口比实现还复杂,把简单逻辑拆碎成 N 个文件)、伪主干(本可叶子的功能因偷懒共享状态而长成主干)。
|
|
81
|
+
|
|
82
|
+
**AI 协作处方**:叶子节点可以放手让 AI vibe;主干 / 跨模块改动必须人工 review 接口设计。
|
|
83
|
+
|
|
84
|
+
参考 Ousterhout *A Philosophy of Software Design* 的 deep module 概念。
|
|
85
|
+
|
|
73
86
|
## 跨模块设计
|
|
74
87
|
|
|
75
88
|
**推迟逻辑分叉**:同一条数据/事件链路跨多个模块时,分叉尽量在最末端消费方。中间层默认复用上游 schema 透传,下游按需 narrow。
|
package/package.json
CHANGED