@lark-project/meegle 1.0.7 → 1.0.9

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/CHANGELOG.md CHANGED
@@ -8,6 +8,18 @@ versioned section on each npm release.
8
8
 
9
9
  ## [Unreleased]
10
10
 
11
+ ## [v1.0.9] - 2026-06-11
12
+
13
+ ### Added
14
+
15
+ - `attachment +download` now performs an extra integrity check on the downloaded file and aborts — writing nothing to disk — when the file fails validation or cannot be verified. A failed check returns a `CLIENT_FILE_SIGN_MISMATCH` error and an unverifiable response returns `CLIENT_FILE_SIGN_UNVERIFIED`; both carry a retry hint.
16
+
17
+ ## [v1.0.8] - 2026-06-09
18
+
19
+ ### Added
20
+
21
+ - `--envelope` now surfaces the backend `logid` under `meta.logid` when present. Previously the MCP server emitted the trace id as a `logid:` content entry, which the CLI stripped into `Response.LogID` but only forwarded to `slog.Debug` — and since no default slog handler is configured, the id was silently dropped. Oncall now has a way to ask end users for an argos-lookupable trace id: re-run with `--envelope` and read `meta.logid`. The id is still suppressed without `--envelope` so default output stays clean for piping. Only covers the single-call path for now; batch (`+batch-get`) per-row logid remains a follow-up
22
+
11
23
  ## [v1.0.7] - 2026-06-09
12
24
 
13
25
  ### Fixed
package/README.md CHANGED
@@ -474,6 +474,18 @@ meegle attachment +download "$URL" \
474
474
  --output ./local.pdf --overwrite
475
475
  ```
476
476
 
477
+ **Integrity check (`+download`)**: `+download` performs an extra integrity check
478
+ on each downloaded file and aborts — writing nothing — if the file fails
479
+ validation or cannot be verified. On a failed check you get a
480
+ `CLIENT_FILE_SIGN_MISMATCH` error (unverifiable response →
481
+ `CLIENT_FILE_SIGN_UNVERIFIED`); both are transient, so just retry.
482
+
483
+ **Custom headers / env routing**: any custom headers configured for the active
484
+ profile are applied to the download GET as well as the preprocess call, so an
485
+ environment-routing header pins the whole download to the same environment. Auth
486
+ headers are stripped before the GET so the token never reaches the
487
+ object-storage host.
488
+
477
489
  `+upload` returns a JSON object with the file token and metadata:
478
490
 
479
491
  ```json
@@ -658,6 +670,7 @@ meegle workflow get-node --work-item-id 12345 --need-sub-task
658
670
  | `--set` | | Set nested parameters (repeatable) |
659
671
  | `--params` | `-P` | Full JSON parameter body; prefix with `@` to read from a file (e.g. `--params @body.json`) |
660
672
  | `--dry-run` | | Render request without executing |
673
+ | `--envelope` | | Wrap success output as `{data, meta, error}` — `meta.logid` carries the backend trace id when present |
661
674
  | `--verbose` | `-v` | Verbose output |
662
675
  | `--profile` | | Use a specific configuration profile |
663
676
  | `--refresh` | | Refresh cached commands from server (bypass the local 24 h cache) |
@@ -715,6 +728,21 @@ and `--format ndjson`, a single-key wrapper like `{"list":[...]}`
715
728
  (no sibling metadata) is still peeled into rows — the peel is
716
729
  loss-less.
717
730
 
731
+ ### Tracing with `--envelope`
732
+
733
+ When something looks wrong (silent success, unexpected payload) and you
734
+ want to ask oncall to trace the exact call, add `--envelope`:
735
+
736
+ ```bash
737
+ meegle workflow update-node --work-item-id 12345 \
738
+ --set node_schedule.points=10 --envelope
739
+ ```
740
+
741
+ The success output is wrapped as `{data, meta, error}`, and `meta.logid`
742
+ carries the backend trace id (when the server returns one). Hand that id
743
+ to oncall to look up the request in argos. Without `--envelope` the id is
744
+ suppressed so the default output stays clean for piping.
745
+
718
746
  ### Dry Run
719
747
 
720
748
  For commands with side effects, preview the rendered request with `--dry-run` before executing:
package/README.zh-CN.md CHANGED
@@ -468,6 +468,15 @@ meegle attachment +download "$URL" \
468
468
  --output ./local.pdf --overwrite
469
469
  ```
470
470
 
471
+ **完整性校验(`+download`)**:`+download` 会对下载的文件做一次额外的完整性校验,
472
+ 若校验失败或无法校验则中止下载、不写任何文件。校验不通过时返回
473
+ `CLIENT_FILE_SIGN_MISMATCH` 错误(无法校验时为 `CLIENT_FILE_SIGN_UNVERIFIED`);
474
+ 两者都是临时问题,重试即可。
475
+
476
+ **自定义头 / 环境路由**:当前 profile 配置的自定义头会同时作用于下载 GET 与预处理调用,
477
+ 从而用环境路由头把整条下载固定到同一环境。GET 前会剥掉 auth 相关头,
478
+ 确保 token 不会发到对象存储所在的主机。
479
+
471
480
  `+upload` 输出 JSON 对象,包含 file_token 与文件元信息:
472
481
 
473
482
  ```json
@@ -644,6 +653,7 @@ meegle workflow get-node --work-item-id 12345 --need-sub-task
644
653
  | `--set` | | 设置嵌套参数(可重复) |
645
654
  | `--params` | `-P` | 完整 JSON 参数体;以 `@` 开头改为从文件读取(如 `--params @body.json`) |
646
655
  | `--dry-run` | | 只渲染请求,不实际执行 |
656
+ | `--envelope` | | 将成功输出包装为 `{data, meta, error}` —— 后端返回 logid 时挂在 `meta.logid` |
647
657
  | `--verbose` | `-v` | 详细输出 |
648
658
  | `--profile` | | 指定配置 profile |
649
659
  | `--refresh` | | 从服务端刷新本地命令缓存(旁路 24 小时缓存) |
@@ -692,6 +702,20 @@ meegle mywork todo --action done --page-num 1 \
692
702
 
693
703
  默认渲染下,响应的完整结构在所有 `--format` 中都会保留:列表接口返回的 `{"list":[...], "total":N, "pagination":{...}}` 原样呈现 —— 即使你没有在 `--select` 中点名,`total` / `pagination` 这些元数据字段依然可见。要钻到具体记录就显式用 `--select`(配合上面的广播语法)。`--format table` 和 `--format ndjson` 下,形如 `{"list":[...]}` 的单键包装(没有兄弟元数据)仍然会被无损展开成行展示。
694
704
 
705
+ ### 通过 `--envelope` 拿到 logid
706
+
707
+ 遇到"返回 success 但实际没生效"、"输出不符合预期"等情况,需要让 oncall
708
+ 按 logid 反查具体调用时,加上 `--envelope`:
709
+
710
+ ```bash
711
+ meegle workflow update-node --work-item-id 12345 \
712
+ --set node_schedule.points=10 --envelope
713
+ ```
714
+
715
+ 成功输出会被包装为 `{data, meta, error}`,后端返回 logid 时挂在
716
+ `meta.logid` 里——把这个 id 交给 oncall 就能在 argos 定位到这次请求。
717
+ 不加 `--envelope` 时 logid 会被抑制,保持默认输出干净便于管道处理。
718
+
695
719
  ### Dry Run
696
720
 
697
721
  有副作用的命令先用 `--dry-run` 预览请求再执行:
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lark-project/meegle",
3
- "version": "1.0.7",
3
+ "version": "1.0.9",
4
4
  "description": "Agent-First CLI for Meegle (Lark Project)",
5
5
  "license": "MIT",
6
6
  "homepage": "https://github.com/larksuite/meegle-cli#readme",