@moda-ai/cli 1.55.37 → 1.55.39

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.
Files changed (39) hide show
  1. package/dist/{agent-4pyeecf7.js → agent-bhe95ae8.js} +8 -8
  2. package/dist/{cli-nqgyz74b.js → cli-1vqq24qh.js} +1 -1
  3. package/dist/{cli-nzx7rqjs.js → cli-2h2nvq6w.js} +1 -1
  4. package/dist/{cli-w3ckvma5.js → cli-39617gab.js} +3 -3
  5. package/dist/{cli-ef9eagsc.js → cli-4hkesrkq.js} +1 -1
  6. package/dist/{cli-wh83c3ss.js → cli-6gtgm2gx.js} +4 -4
  7. package/dist/{cli-xkcy9wns.js → cli-as4c1xwm.js} +5 -5
  8. package/dist/{cli-x605txan.js → cli-c7vj8tq1.js} +5 -5
  9. package/dist/{cli-4d92a450.js → cli-jkza0bj6.js} +1 -1
  10. package/dist/{cli-npkb08xt.js → cli-jmbt1hf9.js} +8 -8
  11. package/dist/{cli-cdx6yd7m.js → cli-k9se46y4.js} +81 -10
  12. package/dist/{cli-cr44672e.js → cli-msgp78ag.js} +5 -5
  13. package/dist/{cli-gjzr7jq5.js → cli-ptm7pwqg.js} +1 -1
  14. package/dist/{cli-s72pph9c.js → cli-qzag917n.js} +1 -1
  15. package/dist/{cli-wg6e2a1g.js → cli-wr6f0kyw.js} +70 -20
  16. package/dist/cli.js +436 -60
  17. package/dist/{doctor-w8z3wj1e.js → doctor-3v20hc26.js} +7 -7
  18. package/dist/{fix-667fyx00.js → fix-s3zkjt69.js} +4 -4
  19. package/dist/{harness-github-actions-7s41s1vg.js → harness-github-actions-mcy21e4d.js} +5 -5
  20. package/dist/{harness-fb0083ap.js → harness-n4569wbm.js} +5 -5
  21. package/dist/{index-4w5szrnw.js → index-2qm3h7v2.js} +11 -11
  22. package/dist/{production-intelligence-v2wq2aqv.js → production-intelligence-z2cad1hv.js} +61 -4
  23. package/dist/{profile-commands-3hw4trwk.js → profile-commands-7ck1tqfv.js} +3 -3
  24. package/dist/{prompt-attribution-g7md8hzc.js → prompt-attribution-dm50am6e.js} +5 -5
  25. package/dist/prompt-source-mcp.js +5 -5
  26. package/dist/{prompts-ab-59r52mxw.js → prompts-ab-9e0dsmce.js} +7 -7
  27. package/dist/{prompts-90v9eg2k.js → prompts-p9hhxx0c.js} +5 -5
  28. package/dist/{prompts-propose-cbenbk8w.js → prompts-propose-91qrjpd0.js} +7 -7
  29. package/dist/{provision-8c4s6vgg.js → provision-x4wkyw60.js} +5 -5
  30. package/dist/{registry-qvjyvbk8.js → registry-nq8qsqtv.js} +3 -3
  31. package/dist/{skills-z7w5x7jj.js → skills-rk2pmwx8.js} +5 -5
  32. package/dist/{sync-r32tgpar.js → sync-xxbfjcz5.js} +7 -7
  33. package/package.json +1 -1
  34. package/skills/integration/index.json +2 -2
  35. package/skills/moda-cli/SKILL.md +4 -2
  36. package/skills/moda-cli/references/commands.md +3 -2
  37. package/skills/moda-cli/references/dashboard-parity.md +5 -0
  38. package/skills/moda-cli/references/detections.md +53 -0
  39. package/skills/moda-cli/references/production-intelligence.md +1 -1
@@ -44,6 +44,59 @@ slice centered on the anchor. `--window=N` (1–5, default `1`) is the
44
44
  half-width; `--window=1` ⇒ 3 messages total (anchor ± 1), the canonical
45
45
  "three lines" view.
46
46
 
47
+ ### 5a. Per-trace lists and dashboard filters (`--group-by=trace`)
48
+
49
+ By default emotion and frustration rows are one per (trace, family)
50
+ detection, and hallucination rows are one per scored message, so their
51
+ `pagination.total` is NOT the dashboard's trace count. Every list response
52
+ says which counting it uses in `counting` (`per_detection`, `per_message` or
53
+ `per_trace`), and the agent summary repeats it.
54
+
55
+ `--group-by=trace` reads the dashboard Signals tab's own list: one row per
56
+ trace in `traces[]`, the dashboard's filters and sort, and a total that
57
+ counts traces exactly as the dashboard does. Any filter below implies it.
58
+
59
+ ```bash
60
+ moda detections list --family=emotion --group-by=trace # emotion tab, per trace
61
+ moda detections list --family=frustration --trajectory=building # implies --group-by=trace
62
+ moda detections list --family=emotion:sadness --elicitor=bot --status=detected
63
+ moda detections list --family=emotion --signal=sarcasm,anger --sort=risk_score --order=desc
64
+ moda detections list --family=hallucination --rule=<rule_id> --status=all # rule ids: summary.rule_breakdown
65
+ moda detections list --family=hallucination --source=judge --sort=last_detected_at
66
+ moda detections list --family=laziness --status=strong --sort=strong_count # laziness is always per trace
67
+ ```
68
+
69
+ | family | flags (values) |
70
+ |---|---|
71
+ | emotion, frustration | `--search` (trace ID or cause), `--status=all\|detected`, `--elicitor=bot\|external\|self\|ambiguous`, `--trajectory=none\|building\|peak\|resolved\|sustained`, `--signal=<s>[,<s>]`, `--sort=score\|risk_score\|detected_at\|message_count`, `--order=asc\|desc` |
72
+ | hallucination | `--search` (trace ID), `--status=contradicted\|all`, `--rule=<rule_id>`, `--source=rule\|classifier\|gpu\|judge\|human`, `--sort=contradicted_count\|verified_count\|last_detected_at`, `--order` |
73
+ | laziness | `--search` (trace ID), `--status=all\|strong`, `--sort=detections_count\|strong_count\|last_detected_at`, `--order` |
74
+
75
+ The per-trace list has no user scope and no single-trace read: `--user-id`,
76
+ `--conversation-id`, `--include-window` (and `--kind` for hallucinations) are
77
+ rejected with it; drop the trace filters to use them. `summary` in a per-trace
78
+ response covers the whole window and ignores the list filters (except
79
+ hallucination `--rule`, which scopes the summary too, as on the dashboard).
80
+
81
+ ### 5b. Detector switched off, or trace not processed
82
+
83
+ An empty detection list is not proof a trace is clean:
84
+
85
+ - **Detector off.** `moda overview` lists every detector under `detectors`
86
+ (`enabled: true|false|null`, the `setting` it reads). The emotion stage
87
+ (every emotion family, frustration included) reads `signals.frustration`;
88
+ custom signals read `signals.custom_signals`; laziness, hallucination and
89
+ tool failures have no tenant switch. `detections list --family=emotion|frustration`
90
+ and `--family=custom_signal` carry the same state in `processing` and warn
91
+ when it is off.
92
+ - **Not processed yet.** `traces list` rows carry `processing_status`
93
+ (`pending` until the pipeline completes the trace, then `complete`),
94
+ `error_message`, `indexed_at` and `membership_score` (use-case confidence
95
+ for `cluster_id`), the same values as the dashboard trace list.
96
+ `traces get` (including `--all`) carries them in `trace_state`. Both warn on
97
+ pending or errored traces: a pending trace may already have some detections,
98
+ but its detections may be incomplete.
99
+
47
100
  ### 6. Tool failure investigation
48
101
 
49
102
  ```bash
@@ -72,7 +72,7 @@ Problem, or before hand-editing prompt/skill files in a repo that talks to Moda.
72
72
  ```bash
73
73
  moda investigate # rank tool failures, frustrations,
74
74
  # and top Problems with evidence
75
- moda problems # cross-signal Problems by root cause
75
+ moda problems list # the Problems the dashboard shows (dream grouping or Book)
76
76
  moda problems get <problem_id> # compact dossier: what, where, how often
77
77
  moda problems get <problem_id> --full # every dossier block (large)
78
78
  moda problems get <problem_id> --evidence # attribution rationales and anchors