Changelog
August 10, 2026 · View on GitHub
All notable changes to the Monte Carlo Agent Toolkit plugin for Snowflake Cortex Code will be documented in this file.
Format follows Keep a Changelog. This project uses Semantic Versioning.
[1.24.1] - 2026-08-10
Changed
- tune-monitor: check every recommended lever against the configuration read in Phase 2c before naming it — a setting the monitor is already on is a report that the user's change did not take, not a recommendation (AI-872)
[1.24.0] - 2026-08-02
Added
- tune-monitor: agent evaluation / trajectory / validation monitor support — new
references/agent-{evaluation,trajectory,validation}-monitor.md(judge-criteria verbatim-prompt rule, transforms/sampling and condition-tree re-pass traps, lookback-vs-schedule axis), Phase 1.5 dispatch rows, and thecreate_or_update_agent_{evaluation,trajectory,validation}_monitorapply flows (AI-781)
[1.23.0] - 2026-07-29
Added
- tune-monitor: agent metric monitor support — new
references/agent-metric-monitor.md(agent-reference verbatim rule, span-filter write-shape traps, trace-aggregation exclusivity), Phase 1.5 dispatch row, and thecreate_or_update_agent_metric_monitorapply flow (AI-780)
[1.22.3] - 2026-07-29
Changed
- monitoring-advisor: judge model selection via
modelNameon LLM-based eval transforms;modelConnectionIdis BigQuery-only (AI-771)
[1.22.2] - 2026-07-27
Changed
- reinforce-agent: renamed the Monte Carlo tools the skill calls to their reinforcement loop names —
get_agent_health_summaries→get_reinforcement_loop_summariesandget_agent_health→get_reinforcement_loop_report— and rebranded the skill guidance from "agent-health" to "reinforcement loop" (ORB-444).
[1.22.1] - 2026-07-26
Fixed
- troubleshoot-agent-traces: document that
get_agent_trace(single-trace span tree) reads only the Monte Carlo–managed OTel store (ao_clickhouse_otel) and errors on the Cortex, Genie, customer-OTel, and MLflow backends. Backend guides, alert playbooks, direct-trace intake, and the tool tables now route span-grain drill-down on those backends throughrun_troubleshooting_agent(AI-710).
[1.22.0] - 2026-07-22
Added
- reinforce-agent: new skill that turns an AI agent's Monte Carlo agent-health diagnosis into code fixes — ranks diagnosed issues per workflow via
get_agent_health_summaries, deep-dives a user-chosen workflow viaget_agent_health, proposes fixes, and opens a PR. User-gated at each fan-out (which workflow, which issue, and before pushing).
[1.21.0] - 2026-07-22
Changed
- monitoring-advisor: conversation evals can now see tool calls —
includeToolCalls(default ON at conversation grain) documented across the eval reference: TOOL entries in the judged{{conversation}}, action-aware checks (right tool, right config, did it error; query-before-answer), template library and Output-pillar packs updated, span-grain rejection noted
[1.20.3] - 2026-07-22
Changed
- troubleshoot-agent-traces: platform-agent conversation clustering (AI-677) — backend references updated for the server's Cortex/Genie clustering coverage: ClickHouse "only backend with conversation-grain eval monitors" drift fixed, clustering signal bullets + cluster-first localization steps added to Cortex/Genie, customer-OTel/MLflow-SDK "managed-store-only" claims rescoped, eval-alert grain rules now name Cortex/Genie as conversation-grain capable
[1.20.2] - 2026-07-22
Changed
- troubleshoot-agent-traces: follow-up to the AI-629 breaching-side guidance — the flag-eval side-resolution rule is now symmetric across
true_*/false_*metrics and both breach directions (a risingfalse_rate, e.g.content_safe, breaches at the BOTTOM of the score range), quality scores breaching high are enumerated explicitly, and the Cortex backend reference defers to the shared side resolution instead of "worst-first" sampling.
[1.20.1] - 2026-07-22
Changed
- troubleshoot-agent-traces: the agent-alert-evaluation reference is now breaching-side aware (AI-629) — the breaching set follows the monitor's metric polarity + breach direction (flag evals breaching on a true-count sit at the TOP scores), replacing the direction-blind "worst-scoring / bottom 10" guidance; step-4 verification and a new common-mistakes row call out the wrong-side sampling trap.
[1.20.0] - 2026-07-22
Changed
- monitoring-advisor: Context pillar upgraded from a recommendation to an executable flow — user-named upstream tables → tagged freshness/schema/volume table monitors → optional
Context for {AGENT_NAME}data product wrapper (dry-run footprint preview first; Data Mesh rejection keeps the monitors) → field-level depth via the data-monitor references;create_or_update_data_productadded to the skill tool tables (AI-650)
[1.19.0] - 2026-07-21
Changed
- monitoring-advisor: agent-onboarding monitor conventions (AI-651) — every
monitor in the POBC playbook (agent monitors and Context-pillar data-quality
monitors) carries the
agent:{AGENT_NAME}footprint tag; audiences are asked once and applied to every create (withfailure_audiencesdefaulting to the same selection); one domain across the footprint; audit/teardown viaget_monitors(monitor_tags=["agent:<AGENT_NAME>"]) - agent-validation-monitor reference: documented the
tagsparameter - data-monitor-creation reference: agent-onboarding conditional for tagging warehouse DQ monitors created for an agent
[1.18.1] - 2026-07-21
Added
- monitoring-advisor: Behavior pillar (AI-648) — agent-understanding investigation summary before proposing monitors (purpose, dominant tool span, healthy trajectory shape, intents, failure modes); runaway-loop trajectory playbook with thresholds derived from observed trace history (max observed + headroom; zero historical matches by design — a regression guardrail, proven with a pre-create breach preview); ungrounded-in-data pattern created as a draft with a breach preview and an LLM-judge upgrade path;
preview/is_draftdocumented on the trajectory reference with theagent:<AGENT_NAME>tag convention
[1.18.0] - 2026-07-21
Added
- monitoring-advisor: custom-prompt template library (
frustration_free_score,answer_attempt_score,user_correction) and Output-pillar eval packs — baseline pack for every agent, analytics pack for Snowflake Cortex / Databricks Genie — inagent-evaluation-monitor.md, with pack routing inagent-monitor-creation.mdand a starting-packs pointer in the POBC walkthrough's Output row (AI-647) - monitoring-advisor: documented the
tagsparameter oncreate_or_update_agent_evaluation_monitor(name/value shape) and the tag-every-monitoragent:<AGENT_NAME>default (AI-647)
[1.17.0] - 2026-07-21
Added
- monitoring-advisor: Performance pillar baseline monitor set in the agent-metric-monitor reference — p50+p95 latency anomaly, p50+p95 token anomaly, daily token SUM, status_code error-level anomaly, and a measured-p95 latency SLO threshold, with per-backend gating and shared defaults (daily schedule, agent tag, draft-capable) (AI-646)
- monitoring-advisor: documented
tagsandis_draft(un-draft-on-edit footgun) on create_or_update_agent_metric_monitor; routing rows for performance-coverage asks
[1.16.0] - 2026-07-21
Changed
- monitoring-advisor: POBC proposal walkthrough in the agent monitor creation
reference — open with the Performance/Output/Behavior/Context framing, walk
the user through the plan pillar by pillar (evidence → proposed monitors →
confirm), Context as a recommendation-only pillar until lineage wiring
lands. Global defaults: daily schedules (
interval_minutes=1440) and count-based eval sampling ({"count": 100}). (AI-645)
[1.15.2] - 2026-07-20
Changed
- monitoring-advisor: conversation-grain evaluation guidance updated for the AI-636 backend change — Snowflake Cortex and Databricks Genie agents now support
is_agent_conversation_aggregation(Databricks MLflow agents remain span-only); added Genie no-token/model caveats to the metric guidance and abackend_classcapability note to agent-monitor-creation
[1.15.1] - 2026-07-20
Changed
- troubleshoot-agent-traces: the direct (no-alert) path resolves the exact backend from
get_agent_metadata's newbackend_classfield instead of asking the user / splitting onsourceType(AI-635; a nullbackend_class— older server or unclassifiable agent — still falls back to asking) - monitoring-advisor, troubleshoot-agent-traces, instrument-agent:
get_agent_metadatafield docs gainbackend_class
[1.15.0] - 2026-07-19
Added
- New
troubleshoot-agent-tracesskill (/monte-carlo-troubleshoot-agent-traces): investigates AI-agent alerts (evaluation, metric, trajectory, validation) and agent traces/conversations. Kicks off the trace troubleshooting agent in parallel (run_troubleshooting_agent), identifies the agent's backend exclusively from the newget_alert_agent_classificationtool (server-side classification — never name/MCON heuristics), and routes to per-alert-type and per-backend investigation playbooks (ClickHouse OTel, Snowflake Cortex, Databricks Genie, customer OTel trace table, Databricks MLflow SDK, MLflow Knowledge Assistant).
Changed
- analyze-root-cause, incident-response, and context-detection route agent-monitor alerts to the new skill; monitoring-advisor's "investigating agent traces" trigger moved there (it keeps monitor creation).
[1.14.0] - 2026-07-03
Changed
- Refresh agent monitor references to match the current tool contract: single
agentreference source (nodw_id/data_source), requiredwarehousefor metric/evaluation/validation,schedule_typelimited tofixed/manualwith per-type interval floors, andagent_span_filterscapped at one filter object. - Agent monitor warehouse is now sourced from
get_agent_metadata'swarehouse_uuid/warehouse_name(show the name, pass the uuid; fall back toget_warehousesonly when both are null). - Evaluation reference: correct predefined transform functions (
output_length,json_validity,keywords), typed custom transforms (custom_prompt/custom_sqlwith camelCaseoutputType/sqlExpression), boolean-output alerting viaTRUE_RATE/FALSE_RATE, and removal of unsupportedclassification/sentiment. - Metric reference: full agent metric catalog,
NEQoperator, operator/threshold rules,ROW_COUNT_CHANGEand trace-aggregation constraints. - Validation reference:
negated-flag negation (nonot_equal/not_null), UNARYvaluevs BINARYleft/right, numericstatus_code. - Trajectory reference:
SPAN_OCCURRENCEandSPAN_RELATIONconditions, OR-only combination, occurrence count floors,spanFieldhierarchy, and the negated-relation pattern for a missing step. - Span-field reference: add
parent_span_id,model_name,status_code,is_tool_call,is_llm_call,has_prompts,has_completionsand the platform-vs-OpenTelemetry availability caveat.
[1.13.3] - 2026-06-23
Changed
- Authenticated Monte Carlo MCP requests now carry the toolkit's anonymous install id (
x-mcd-toolkit-install-id) and version (x-mcd-toolkit-version) as HTTP headers, so the anonymous usage-beacon stream can be joined to authenticated MCP activity server-side — no new user- or account-level identifier is introduced. Headers are injected by whatever mechanism each editor supports: a runtime headers helper in Claude Code and Cortex Code (which also send a per-sessionx-mcd-toolkit-session-id), and install-time MCP registration for Cursor, Codex, Copilot, and OpenCode. Fail-open and honorsMC_AGENT_TOOLKIT_TELEMETRY_DISABLED=1.
[1.13.2] - 2026-06-19
Changed
- Skills now route Monte Carlo MCP tool calls explicitly to the plugin-bundled server. Every skill that uses Monte Carlo MCP tools carries a standard routing rule directing the model to the fully-qualified
mcp__plugin_mc-agent-toolkit_monte-carlo-mcp__<tool>names, so a separately-configured server of the same name can no longer shadow the bundled one. Soft (model-compliance) enforcement, with the canonical rule documented as the single source of truth in.claude/rules/skills.md.
Fixed
- Corrected the MCP pre-approval grant in Claude Code and Cortex Code
settings.json(…_monte-carlo__*→…_monte-carlo-mcp__*) so it matches the bundled server's actual tool namespace and suppresses permission prompts as intended. - Replaced obsolete Monte Carlo tool-namespace examples (
mcp__monte_carlo__getAlerts,mcp__mc__search) in the remediation skill's tool-discovery reference with current plugin-bundled, snake_case names.
[1.13.1] - 2026-06-18
Added
Toolkit Installedtelemetry beacon, fired once per machine+editor per toolkit version — on first install and after each version change — independent of skill usage, closing the gap where an install that never invoked a skill was invisible and adding version-adoption signal. Deduped by a per-editorbeacon_sent_versionmarker. Wired across all six editor plugins (Claude Code, Cortex Code, Cursor, Codex, Copilot, OpenCode). Fail-open and non-blocking; honorsMC_AGENT_TOOLKIT_TELEMETRY_DISABLED=1and theMCD_TOOLKIT_BEACON_URLoverride.
Changed
- Shared hook logic now also covers telemetry: the canonical install beacon lives in
plugins/shared/telemetry/lib/and is synced into each editor plugin by./scripts/bump-version.sh --sync-only, with a CI check enforcing it stays in sync — mirroring the existingprevent/libconvention.
[1.13.0] - 2026-06-15
Added
- Snowflake Cortex Code plugin (
plugins/cortex-code/) — the 6th supported editor. Cortex Code wraps Claude Code, so it ships all 17 skills, the full prevent hook lifecycle, slash commands, and the Monte Carlo MCP server; install viaplugins/cortex-code/scripts/install.sh.
Changed
- Hardened the prevent impact-check gate: the pre-edit deny reason no longer contains a string that satisfies its own marker scanner, closing a latent self-unlock on harnesses that persist hook output back into the scanned transcript. Added
table_namepath sanitization for the/tmpcache, an unknown-transcript-format fail-closed guard, and tolerance for stray bytes when scanning Cortex's.history.jsonl. These shared-lib changes apply to all editor plugins. - Skill-usage telemetry stores its install/session IDs under Cortex Code's own config home (
~/.snowflake/cortex/mc-agent-toolkit) rather than~/.claude— a toolkit install in Cortex Code is a distinct installation from one in Claude Code, so each editor keeps its own identity. The beacon payload now also carries aharnessfield (cortex-code) so the telemetry sink can tell editors apart.