@getmagical/cli 0.14.4 → 0.15.4
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/README.md +24 -13
- package/dist/index.js +419 -170
- package/dist/index.js.map +3 -3
- package/dist/network-recording-archive.py +4 -4
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -124,10 +124,10 @@ feasibility evaluations, reported with actual evaluations in `targetDiscovery`.
|
|
|
124
124
|
This read-only command does not generate definitions,
|
|
125
125
|
backfill signatures, or start runs.
|
|
126
126
|
|
|
127
|
-
Only record-mode runs with status `COMPLETE` or `EARLY_TERMINATION` and
|
|
128
|
-
finish
|
|
129
|
-
draft/test runs excluded. Runs missing `finished_at` are
|
|
130
|
-
status indicates completion.
|
|
127
|
+
Only record-mode runs with status `COMPLETE` or `EARLY_TERMINATION` and recorded
|
|
128
|
+
start and finish timestamps qualify, including implicit and explicit recordings,
|
|
129
|
+
with draft/test runs excluded. Runs missing `started_at` or `finished_at` are
|
|
130
|
+
excluded even when their status indicates completion.
|
|
131
131
|
`--max-candidate-runs` accepts 1–10,000 and defaults to **1,000**; the limit applies
|
|
132
132
|
before classification. Compatible signatures identify historical pathways without
|
|
133
133
|
requiring a deviation-free run. Each historical input must also satisfy the
|
|
@@ -187,6 +187,12 @@ Human-readable output includes target pathway keys and labels, required nested
|
|
|
187
187
|
calls, opaque steps, distinct-input counts, `1/2 selected` recording counts, gaps,
|
|
188
188
|
and diagnostics. Input-only examples include their original inputs and work-item
|
|
189
189
|
IDs. JSON also includes recorded samples' original inputs and signature evidence.
|
|
190
|
+
Each scenario reports `observedRunCount`: the number of runs in the searched history
|
|
191
|
+
(see `--max-candidate-runs`) that match the scenario, including runs that cannot
|
|
192
|
+
become samples. JSON also gives `averageDurationMs`: the mean time from start to
|
|
193
|
+
finish of those runs, in whole milliseconds, including any pause. It is null when
|
|
194
|
+
the scenario has no observed run. A null value while `observedRunCount` is greater
|
|
195
|
+
than 0 means that the server does not send the field.
|
|
190
196
|
Errors and warnings go to stderr; `--json` stdout remains valid JSON, including partial results.
|
|
191
197
|
A scenario is covered after its first verified recording, independently of the
|
|
192
198
|
requested sample count.
|
|
@@ -457,14 +463,14 @@ transfer, including response-body streaming, has a separate 120-second
|
|
|
457
463
|
deadline.
|
|
458
464
|
|
|
459
465
|
Local inspection uses mitmproxy's supported archive reader and requires Python
|
|
460
|
-
3.12 or newer with
|
|
461
|
-
|
|
462
|
-
executable:
|
|
466
|
+
3.12 or newer with `mitmproxy==12.3.0`; existing `12.2.3` environments remain
|
|
467
|
+
supported. mgcl does not install this optional runtime. Create a dedicated
|
|
468
|
+
environment and point mgcl at its Python executable:
|
|
463
469
|
|
|
464
470
|
```bash
|
|
465
|
-
python3 -m venv ~/.local/share/mgcl/mitmproxy-12.
|
|
466
|
-
~/.local/share/mgcl/mitmproxy-12.
|
|
467
|
-
export MGCL_MITMPROXY_PYTHON=~/.local/share/mgcl/mitmproxy-12.
|
|
471
|
+
python3 -m venv ~/.local/share/mgcl/mitmproxy-12.3.0
|
|
472
|
+
~/.local/share/mgcl/mitmproxy-12.3.0/bin/python -m pip install 'mitmproxy==12.3.0'
|
|
473
|
+
export MGCL_MITMPROXY_PYTHON=~/.local/share/mgcl/mitmproxy-12.3.0/bin/python
|
|
468
474
|
```
|
|
469
475
|
|
|
470
476
|
Exchange output includes a recording-specific stable reference, flow ordinal,
|
|
@@ -645,19 +651,24 @@ Replay also requires `captures:read`; supplying `--initial-store-json` requires
|
|
|
645
651
|
required for starts without replay, recording runs, and reruns. The sandbox
|
|
646
652
|
grant does not authorize published or live execution paths.
|
|
647
653
|
|
|
654
|
+
`verifications:write` allows `verification-records upload`. The key owner must
|
|
655
|
+
also be a Magical employee. Reading verification records and verdicts requires
|
|
656
|
+
only `runs:read`.
|
|
657
|
+
|
|
648
658
|
### Operator rollout and rollback
|
|
649
659
|
|
|
650
660
|
Deploy the backend before releasing the CLI flow. In WorkOS, create these
|
|
651
661
|
permissions and grant the appropriate subset to member roles. Also enable
|
|
652
|
-
`draft-runs:execute-sandbox` under Authorization >
|
|
653
|
-
permissions > Users before user API keys can include
|
|
662
|
+
`draft-runs:execute-sandbox` and `verifications:write` under Authorization >
|
|
663
|
+
Configuration > API key permissions > Users before user API keys can include
|
|
664
|
+
them:
|
|
654
665
|
|
|
655
666
|
```text
|
|
656
667
|
automations:read automations:write runs:read runs:execute runs:control
|
|
657
668
|
draft-runs:execute-sandbox
|
|
658
669
|
store:read store:write skills:read skills:write credentials:read
|
|
659
670
|
captures:read captures:write regressions:read regressions:run
|
|
660
|
-
knowledge:read memory:read files:write
|
|
671
|
+
knowledge:read memory:read files:write verifications:write
|
|
661
672
|
```
|
|
662
673
|
|
|
663
674
|
The Knowledge Base, Memory, and replay-upload commands remain pending until the
|