ask-marcel-office-cli 2.2.0 → 2.3.0
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 +80 -0
- package/dist/cli.js +254 -348
- package/dist/commands.json +70 -717
- package/dist/composition/run-registry-command.d.ts +12 -3
- package/dist/index.js +203 -266
- package/dist/presenter/output.d.ts +2 -2
- package/dist/presenter/render-to-string.d.ts +34 -2
- package/dist/use-cases/commands/command-types.d.ts +1 -20
- package/dist/use-cases/commands/create-forward-draft.d.ts +1 -1
- package/dist/use-cases/commands/create-reply-draft.d.ts +1 -1
- package/dist/use-cases/commands/docs-render.d.ts +0 -1
- package/dist/use-cases/commands/draft-comment-splicer.d.ts +8 -1
- package/dist/use-cases/commands/list-mail-folder-messages-delta.d.ts +10 -2
- package/dist/use-cases/commands/reject-unknown-params.d.ts +16 -0
- package/dist/use-cases/commands/resolve-command.d.ts +7 -9
- package/dist/use-cases/commands/search-onenote-pages.d.ts +1 -1
- package/dist/use-cases/commands/update-mail-draft.d.ts +4 -0
- package/docs/COMMANDS.md +7 -7
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,86 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to `ask-marcel-office-cli` are documented here.
|
|
4
4
|
|
|
5
|
+
## 2.3.0
|
|
6
|
+
|
|
7
|
+
> **Read this before upgrading.** This release contains breaking changes to the
|
|
8
|
+
> flag surface despite the minor version number. If you pin `^2.2.0` you will
|
|
9
|
+
> receive it automatically. Anything calling the CLI, the MCP gateway, or the
|
|
10
|
+
> library with an old flag spelling will stop working.
|
|
11
|
+
|
|
12
|
+
### Removed — every flag alias and every deprecated command name
|
|
13
|
+
|
|
14
|
+
One name per flag, one name per command. The alias system is gone: 77 flag
|
|
15
|
+
aliases and 4 deprecated command names. Each alias already pointed at a more
|
|
16
|
+
specific canonical, so nothing was renamed to accommodate the removal.
|
|
17
|
+
|
|
18
|
+
| Gone | Use instead |
|
|
19
|
+
|------|-------------|
|
|
20
|
+
| `--id` (51 commands) | the command's specific id flag (`--message-id`, `--site-id`, …) |
|
|
21
|
+
| `--start` / `--end` (7 date-window commands) | `--start-date-time` / `--end-date-time` |
|
|
22
|
+
| `--body-content` on `create-reply-draft` / `create-forward-draft` | `--comment` |
|
|
23
|
+
| `--task-id` | `--planner-task-id` or `--todo-task-id` |
|
|
24
|
+
| `--folder-id` | `--item-id` |
|
|
25
|
+
| `--item-id` on the SharePoint list commands | `--list-item-id` |
|
|
26
|
+
| `--page-id`, `--section-id` | `--onenote-page-id`, `--onenote-section-id` |
|
|
27
|
+
| `--emails` on `get-schedule` | `--schedules` |
|
|
28
|
+
| `--query` on `search-onenote-pages` | *(now the canonical name, see below)* |
|
|
29
|
+
| `download-onedrive-file-content` | `download-drive-item-content` |
|
|
30
|
+
| `convert-local-file` | `convert-local-file-to-markdown` |
|
|
31
|
+
| `convert-drive-item-zip` | `convert-drive-item-zip-to-markdown` |
|
|
32
|
+
| `convert-mail-attachment-zip` | `convert-mail-attachment-zip-to-markdown` |
|
|
33
|
+
|
|
34
|
+
Why: the same spelling meant different things on sibling commands. That is how
|
|
35
|
+
`--body-content` came to mean "the text above the quote" on the create-draft
|
|
36
|
+
commands and "replace the ENTIRE body, quote included" on `update-mail-draft`,
|
|
37
|
+
a silent data-loss trap fixed in this same release.
|
|
38
|
+
|
|
39
|
+
### Changed — `search-onenote-pages --title-substring` is now `--query`
|
|
40
|
+
|
|
41
|
+
The last flag naming a shared concept differently from its siblings. All eight
|
|
42
|
+
search commands now take `--query`. (`--query` had already been bolted onto this
|
|
43
|
+
command as an alias for exactly this reason; it is now the only name.) The flag
|
|
44
|
+
still matches page TITLES only, which its description states explicitly.
|
|
45
|
+
|
|
46
|
+
### Changed — a parameter a command does not declare is now refused
|
|
47
|
+
|
|
48
|
+
Previously the three surfaces disagreed. Commander rejected unknown `--flags` on
|
|
49
|
+
the CLI, but Zod strips unknown keys, so the MCP gateway's `run-command` params
|
|
50
|
+
and direct library `commands[x].execute(...)` calls silently swallowed them and
|
|
51
|
+
returned data that looked like it had obeyed. A live audit found this on 5 of 7
|
|
52
|
+
delta commands. All three surfaces now refuse identically, with
|
|
53
|
+
`errorCode: "unknown_parameter"` and the supported flags named in the message.
|
|
54
|
+
|
|
55
|
+
### Fixed — `--top` no longer terminates a mail-folder delta sync
|
|
56
|
+
|
|
57
|
+
`list-mail-folder-messages-delta --top 2` on a 67-message Inbox returned 2
|
|
58
|
+
messages and an `@odata.deltaLink` rather than a `nextLink`. Graph reads a
|
|
59
|
+
*satisfied* `$top` as "this sync is complete", so the other 65 messages were
|
|
60
|
+
never delivered and the caller banked a delta token certifying a sync that never
|
|
61
|
+
happened. `--top` is now sent as `Prefer: odata.maxpagesize`, which pages
|
|
62
|
+
normally. `--skip` and `--orderby` are no longer advertised there (Graph ignores
|
|
63
|
+
the first and rejects the second), and `--filter` / `--orderby` are gone from
|
|
64
|
+
the two drive delta commands for the same reason.
|
|
65
|
+
|
|
66
|
+
### Fixed — a whole-body draft update can no longer drop quoted history
|
|
67
|
+
|
|
68
|
+
`update-mail-draft --body-content` on a threaded draft replaced the entire body
|
|
69
|
+
including the quoted thread, with nothing warning at call time. It now reads the
|
|
70
|
+
draft first and refuses when a quote is present, pointing at `--comment`. Pass
|
|
71
|
+
`--replace-quoted-history true` for the deliberate case. The same read refuses
|
|
72
|
+
non-drafts before the write.
|
|
73
|
+
|
|
74
|
+
### Fixed — the oversized-response banner only names remedies that exist
|
|
75
|
+
|
|
76
|
+
The `sizeHint` banner called `--output-path` a "universal remedy (works on every
|
|
77
|
+
command)". It is not: plain-JSON commands refuse the flag, and the two commands
|
|
78
|
+
that trip the banner most often (`search-all-files`, `microsoft-search-query`)
|
|
79
|
+
advertise only `--query`, so every remedy it named was a dead end. The banner is
|
|
80
|
+
now derived from the command that produced the payload and the surface asking:
|
|
81
|
+
byte-producing commands keep the `--output-path` wording (`outputPath` on MCP),
|
|
82
|
+
plain-JSON commands on the CLI get a shell redirect, and the same commands on
|
|
83
|
+
MCP get neither, since an MCP client has no shell.
|
|
84
|
+
|
|
5
85
|
## 2.2.0
|
|
6
86
|
|
|
7
87
|
### Added
|