mm_verify
Run one phase of the iterative verify-spec pipeline — start_run/finish_run delimit a measured run; the other phases perform checks, classification, persistence, confidence, and promotion. phase must be one of the enum values below; see the verify-* sources under src/tools/ for per-phase argument shapes.
At a Glance
Section titled “At a Glance”- Category: Core
- Source: Built-in
- Availability: Listed by default
- Required parameters: 1
- Total parameters: 68
Parameters
Section titled “Parameters”| Parameter | Type | Required | Description |
|---|---|---|---|
phase | string (enum: check_triage, start_run, finish_run, prepare_evidence, classify_findings, compute_confidence, convergence_step, persist_findings, write_summary, run_checks, parse_requirements, evaluate, classify_risk, record_outcome, promote, light_check) | Yes | Pipeline phase to invoke. Each phase carries its own per-call arguments — see the verify-* handler sources. |
project_path | string | No | check_triage: absolute path to the project root (the directory containing .mm/). |
spec_folder | string | No | check_triage: spec folder name (spec_path accepted as alias). |
verification_run_id | string | No | Stable id shared by every phase and captured turn in one verification run. |
spec_slug | string | No | start_run/finish_run: canonical spec folder slug. |
workflow | string | No | Telemetry label; verify-spec for this pipeline. |
base_sha | string | null | No | |
head_sha | string | null | No | |
iteration | integer | No | |
agent_role | string | No | |
parent_session_id | string | No | |
request_id | string | No | |
status | string (enum: verified, verified-with-caveats, gaps-remain) | No | finish_run: final verification verdict. |
measurement_complete | boolean | No | |
measurement_reason | string | No | |
findings | array of object | No | classify_findings: verifier-emitted Finding records (id, kind, spec_section_ref, code_location, failure_mode, reproduction, evidence, tier) — see verify-classify-findings.ts. |
runs_completed | integer | No | |
t1_count | integer | No | |
t2_count | integer | No | |
t3_count | integer | No | |
t4_count | integer | No | |
adversarial_null_count | integer | No | |
adversarial_malformed | integer | No | |
decision | string | No | compute_confidence: continue | converged | did_not_converge. |
consecutive_stable | integer | No | |
run_index | integer | No | |
current_t12_ids | array of string | No | |
prior_t12_ids | array of string | No | |
floor | integer | No | |
ceiling | integer | No | |
run_label | string | No | persist_findings: human-meaningful run label recorded on new spec-gap / backlog rows (audit-only). |
now | string | No | persist_findings: ISO-8601 timestamp stamped on new rows. Defaults to now; injectable for tests. |
run_timestamp | string | No | write_summary: ISO-8601 timestamp for verify-summary.json. Defaults to now. |
tier_counts | object | No | write_summary: { t1, t2, t3, t4 } counts of classified findings this run. |
spec_gap_count | integer | No | |
confidence | object | No | write_summary: { bucket, numeric, rationale } from the compute_confidence phase. |
open_backlog_count | integer | No | |
open_spec_gaps_count | integer | No | |
code_path | string | No | run_checks: absolute path to the checkout/worktree holding the code under verification. Defaults to project_path; the checks run here. |
verifier_model | string | No | evaluate: model name recorded as verified_by. |
scorecard | array of object | No | evaluate: one row per R<n> — { id, status: pass|partial|miss|regression|pass-pre-existing, citation?, note? }. |
checks | object | No | evaluate: run_checks output (or the subset: passed_ids/failed_ids/skipped_ids/env_skipped_ids/all_skipped_env). |
adversarial | array of object | No | evaluate: adversarial-prompt rows — { prompt, outcome: finding|null, spec_section_ref?, justification?, finding_id? }. |
open_backlog | array of object | No | evaluate: open check_triage entries — { cluster_id_short, failure_mode, spec_section_ref?, status?, actor? }. |
diff | object | No | evaluate: { files_changed, files_mapped, unmapped }. |
strict | boolean | No | evaluate: 0-tolerance for partially_supported claims when true. |
mode | string | No | evaluate: recorded on summary.json. |
risk_tier | string (enum: low, medium, high) | No | evaluate: recorded on summary.json. |
risk_reasons | array of string | No | |
touched_paths | array of string | No | classify_risk: repo-relative paths touched by the diff under verification. |
total_changed_lines | integer | No | |
touched_requirement_ids | array of string | No | |
critical_requirement_ids | array of string | No | |
floor_confidence | string (enum: low, medium, high) | No | classify_risk: floor-pass confidence, when the floor pass has already run. |
floor_flagged_high_risk | boolean | No | |
max_total_lines | integer | No | |
max_files | integer | No | |
extra_high_risk_patterns | array of string | No | |
style_only_paths | array of string | No | classify_risk: touched paths whose change is style-only; all touched paths must be listed for the trivial tier. |
max_trivial_lines | integer | No | |
max_trivial_files | integer | No | |
light_checks | array of object | No | light_check: the mechanical checks the caller ran — { name, ok, detail? }. |
outcome | string (enum: spec-verified, pr-merged) | No | record_outcome: which value boundary this row records. |
ref | string | No | record_outcome: what the outcome refers to — spec folder, or PR number/URL. |
session_ids | array of string | No | |
started_at | string | No | |
ended_at | string | No | |
event_id | string | No |
Example
Section titled “Example”{ "tool": "mm_verify", "arguments": { "phase": "check_triage", "project_path": "/Users/you/projects/my-app", "spec_folder": "example-spec_folder" }}Related Tools
Section titled “Related Tools”mm_search- Full-text search across all entity types (specs, features, issues, notes, ide…mm_configure_integration- Configure an external service integration (github, trello, grain, gmail, noti…mm_sync_notion- Bidirectional sync between a Notion database and .mm/specs/ or .mm/notes/. Pu…mm_daily_brief- Generate a structured morning summary with active tasks, blockers, recently c…mm_revert_spec_completion- Revert a spec’s completion status in its parent feature. Tasks stay [x] but t…