@getmagical/cli 0.15.0 → 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 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 a recorded
128
- finish timestamp qualify, including implicit and explicit recordings, with
129
- draft/test runs excluded. Runs missing `finished_at` are excluded even when their
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 exactly `mitmproxy==12.2.3`. mgcl does not install this
461
- optional runtime. Create a dedicated environment and point mgcl at its Python
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.2.3
466
- ~/.local/share/mgcl/mitmproxy-12.2.3/bin/python -m pip install 'mitmproxy==12.2.3'
467
- export MGCL_MITMPROXY_PYTHON=~/.local/share/mgcl/mitmproxy-12.2.3/bin/python
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 > Configuration > API key
653
- permissions > Users before user API keys can include it:
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