@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 +12 -0
- package/README.md +28 -0
- package/README.zh-CN.md +24 -0
- package/bin/meegle-darwin-arm64 +0 -0
- package/bin/meegle-darwin-x64 +0 -0
- package/bin/meegle-linux-arm64 +0 -0
- package/bin/meegle-linux-x64 +0 -0
- package/bin/meegle-win32-arm64.exe +0 -0
- package/bin/meegle-win32-x64.exe +0 -0
- package/package.json +1 -1
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` 预览请求再执行:
|
package/bin/meegle-darwin-arm64
CHANGED
|
Binary file
|
package/bin/meegle-darwin-x64
CHANGED
|
Binary file
|
package/bin/meegle-linux-arm64
CHANGED
|
Binary file
|
package/bin/meegle-linux-x64
CHANGED
|
Binary file
|
|
Binary file
|
package/bin/meegle-win32-x64.exe
CHANGED
|
Binary file
|