visionclaw 0.1.213-beta.5 → 0.1.213-beta.6

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.
@@ -197,7 +197,7 @@ fin-app 服务端每天在 owner 当地时间早上 8 点向 `fin-home` 发送
197
197
 
198
198
  **从 Idea 创建 Lab**:与 owner 确认 features、请求和归属后调用 `finapp_lab(action="create", features=[...], parent={type:"idea", id}, ...)`。Idea 生命周期保持独立。
199
199
 
200
- **owner 说“帮我跑个回测”**:在当前 Idea/Holdings thread 创建或更新 Lab,确保 `features` 含 `backtest`,调用 `finapp_lab(action="run", labId, input={...}, idempotencyKey="...")`。`input` 是本次 executor 的完整运行载荷,必须显式传入;它不会继承 Lab 创建时的 `request` 或 `summary`。即使本次运行确实不需要参数,也要显式传 `input={}`。每次 run 使用新的 single-shot executor thread;host runtime 自动 claim/维护租约,executor 只做工作并上报一次 terminal result。父 thread 收到完成唤醒后审阅并用 report_ready/report_failed 发布成果;重试必须创建新的 run,不恢复旧 executor 对话。回测用价由执行线程用 `query_market_data` 拉 bounded historical/reference 数据(canonical id + 日期区间),父讨论不要自己拼 `financial_get_bars` 大历史。当前 paper-trading 服务不提供 backtest API(`backtests=false`)。
200
+ **owner 说“帮我跑个回测”**:在当前 Idea/Holdings thread 创建或更新 Lab,确保 `features` 含 `backtest`,调用 `finapp_lab(action="run", labId, input={...}, idempotencyKey="...")`。`input` 是本次 executor 的完整运行载荷,必须显式传入;它不会继承 Lab 创建时的 `request` 或 `summary`。创建 Lab 的 `request` 和运行时 `input` 都必须无损保留 owner 给出的每个精确字面量,包括标识符、日期、数值边界、有序列表、枚举值和布尔门禁;禁止把它们压缩成“上述日期”“指定标的”“同样 5 只”或仅保留数量。若载荷需要缩短,删解释性 prose,不删字面量。提交前逐项对照 owner 原始请求;例如 `input={task:"分析上述 5 只股票"}` 不完整,必须在 `input` 中重新列出 5 个具体标识符。即使本次运行确实不需要参数,也要显式传 `input={}`。每次 run 使用新的 single-shot executor thread;host runtime 自动 claim/维护租约,executor 只做工作并上报一次 terminal result。父 thread 收到完成唤醒后审阅并用 report_ready/report_failed 发布成果;重试必须创建新的 run,不恢复旧 executor 对话。回测用价由执行线程用 `query_market_data` 拉 bounded historical/reference 数据(canonical id + 日期区间),父讨论不要自己拼 `financial_get_bars` 大历史。当前 paper-trading 服务不提供 backtest API(`backtests=false`)。
201
201
 
202
202
  **owner 要做模拟验证**:创建或更新 Lab 并确保 `features` 含 `paper`(`finapp_paper open_account` 也会自动加上)。流程:
203
203
  1. `finapp_paper(action="ensure")`(按需;开户也会触发 provision)
@@ -16091,7 +16091,7 @@ ${DIM}${"\u2500".repeat(70)}${RESET}`);
16091
16091
 
16092
16092
  // dist/utils/version-check.js
16093
16093
  function isBundled() {
16094
- const v14 = "0.1.213-beta.5";
16094
+ const v14 = "0.1.213-beta.6";
16095
16095
  return typeof v14 === "string" && v14 !== "undefined";
16096
16096
  }
16097
16097
  function getPackageRoot() {
@@ -16108,7 +16108,7 @@ function getInstallationInfo() {
16108
16108
  };
16109
16109
  }
16110
16110
  function getCurrentVersion() {
16111
- const bundledVersion = "0.1.213-beta.5";
16111
+ const bundledVersion = "0.1.213-beta.6";
16112
16112
  if (bundledVersion && bundledVersion !== "undefined") {
16113
16113
  return bundledVersion;
16114
16114
  }
@@ -856289,7 +856289,7 @@ var init_playwriter_extension = __esm({
856289
856289
 
856290
856290
  // dist/utils/playwriter-relay.js
856291
856291
  function isBundled2() {
856292
- const v14 = "0.1.213-beta.5";
856292
+ const v14 = "0.1.213-beta.6";
856293
856293
  return typeof v14 === "string" && v14 !== "undefined";
856294
856294
  }
856295
856295
  function resolveRelayEntryPath() {
@@ -856415,7 +856415,7 @@ function selectAndPruneCanonicalRelay(matches, expectedEntry) {
856415
856415
  return canonical;
856416
856416
  }
856417
856417
  function pm2Start(entryPath, host, port) {
856418
- const versionStr = "0.1.213-beta.5";
856418
+ const versionStr = "0.1.213-beta.6";
856419
856419
  (0, import_node_child_process17.execFileSync)("pm2", ["start", entryPath, "--name", PM2_PROCESS_NAME, "--update-env"], {
856420
856420
  encoding: "utf-8",
856421
856421
  stdio: "pipe",
@@ -856441,7 +856441,7 @@ function pm2Delete() {
856441
856441
  }
856442
856442
  }
856443
856443
  function pm2Restart(host, port) {
856444
- const versionStr = "0.1.213-beta.5";
856444
+ const versionStr = "0.1.213-beta.6";
856445
856445
  (0, import_node_child_process17.execFileSync)("pm2", ["restart", PM2_PROCESS_NAME, "--update-env"], {
856446
856446
  encoding: "utf-8",
856447
856447
  stdio: "pipe",
@@ -856910,7 +856910,7 @@ async function reconcilePlaywriterRelay(host = "127.0.0.1", port = 19988) {
856910
856910
  pm2Restart(host, port);
856911
856911
  return;
856912
856912
  }
856913
- const currentVersion = "0.1.213-beta.5";
856913
+ const currentVersion = "0.1.213-beta.6";
856914
856914
  if (currentEnv.VISIONCLAW_VERSION && currentEnv.VISIONCLAW_VERSION !== currentVersion) {
856915
856915
  if (!await ensureRelayPortAvailable(host, port, current, "recreate after a version change"))
856916
856916
  return;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "visionclaw",
3
- "version": "0.1.213-beta.5",
3
+ "version": "0.1.213-beta.6",
4
4
  "description": "A personal assistant agent that runs on your desktop, receives commands from messaging channels, and executes tasks autonomously.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",