New Your team’s decisions, in one playbook every coding agent works from. Never answer your agent twice

commit_proposal_promotion

[SUPPORT] Commit a proposal's promotion through 'depth' (ce4883f3), cumulative over every shallower depth. Requires 'preview_hash' from a just-called preview_proposal_promotion with the SAME arguments — a mismatch (proposal or target project's board changed since) is rejected rather than silently...

SERVERMeridian SOURCE@meridianmcp/mcp
Medium RISK CLASS
Category Write
Parameters 123 required
Recommended Rate-limitedsee the rule below
Registry record Grade F, identity unverified Pull the record →

This record as markdown: /tools/io-github-ajc3xc-meridian/commit-proposal-promotion.md

What commit_proposal_promotion does on Meridian

AI agents use commit_proposal_promotion to create or update resources in Meridian, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Meridian environment.

ParameterTypeRequiredDescription
actor string Optional actor identity recorded on proposal events.
depth string Yes How far to commit promoting, cumulative over every shallower depth.
pointers array Pointer declarations to record (depth>='pointers'); each validated via meridian.pointers.validate_pointer ({source_type, targets: [{uri, selector, target_kind?}
project_id string Target project — where the sprint item lands.
session_id string Caller session id; threaded into recorded events and into the depth='executable_handoff' handoff.
proposal_id string Yes
preview_hash string Yes The 'preview_hash' from a fresh preview_proposal_promotion call with the SAME arguments.
project_name string Project name — alternative to project_id; resolved to the id internally.
override_reason string Non-empty reason to acknowledge and proceed past a triggered HITL deviation instead of stopping (audited).
sprint_item_title string Override title for the sprint item; defaults to the proposal title.
touches_resources array Explicit resource ids for the sprint item; overrides inference.
sprint_item_version string Sprint version for the new item; defaults to 'current'.

Parameters from the server's own tool schema.

Why commit_proposal_promotion is rated Medium

An AI agent can call commit_proposal_promotion faster than any human can review: one bad instruction and it creates or modifies resources in Meridian by the hundred, each call as confident as the last.

Risk signalsHigh parameter count (14 properties) · Bulk/mass operation — affects multiple targets

Questions about commit_proposal_promotion

What does the commit_proposal_promotion tool do? +

[SUPPORT] Commit a proposal's promotion through 'depth' (ce4883f3), cumulative over every shallower depth. Requires 'preview_hash' from a just-called preview_proposal_promotion with the SAME arguments — a mismatch (proposal or target project's board changed since) is rejected rather than silently committed against stale information, and nothing is written. Committing an already-satisfied depth is an idempotent no-op success (matches the preview's already_satisfied=true case). A genuine lost race against a concurrent caller (caught by the underlying race-safe functions) is reported honestly as a failure with a 'deviation_auto_resolved' audit trail — never silently retried or swallowed. When the promoted sprint item's resources or the proposal's own text match one of 3 narrow deviation heuristics (production_deployment / tenant_security_boundary / destructive_behavior), this files a durable HITL via request_hitl and returns hitl_pending=true WITHOUT completing remaining steps — pass a non-empty 'override_reason' to acknowledge and proceed anyway (audited). 'investigation_findings' and 'pointers' are recorded via append_proposal_update at the matching depth; 'pointers' entries are validated via meridian.pointers.validate_pointer (each needs source_type + a non-empty targets array of {uri, selector, target_kind?}). depth='executable_handoff' calls generate_handoff(selected_item_ids=[the new/reused sprint item id]) — scoped to exactly that item's dependency closure, with project/version/session identity. Returns {proposal_id, project_id, depth, already_satisfied, committed, deviation, hitl_pending, hitl_request_id}. Persistent-state disclosure: on hosted Meridian, supplied text and project/session metadata are sent to and stored in Meridian's service; self-hosted deployments keep them in the configured local SQLite/Postgres database. This data is visible in the dashboard/API and later project context or handoffs. Delete individual tasks, notes, or decisions where supported, or delete the project/account using the documented controls. Do not include secrets. It is categorised as a Write tool in the Meridian MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.

What parameters does commit_proposal_promotion accept? +

commit_proposal_promotion accepts 12 parameters: actor, depth, pointers, project_id, session_id, proposal_id, preview_hash, project_name, override_reason, sprint_item_title, touches_resources, sprint_item_version. Required: depth, proposal_id, preview_hash. The full parameter table on this page comes from the server's own tool schema.

How do I enforce a policy on commit_proposal_promotion? +

Register the Meridian MCP server in PolicyLayer and add a rule for commit_proposal_promotion: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Meridian. Nothing to install.

What risk level is commit_proposal_promotion? +

commit_proposal_promotion is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.

Can I rate-limit commit_proposal_promotion? +

Yes. Add a rate_limit block to the commit_proposal_promotion rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.

How do I block commit_proposal_promotion completely? +

Set action: deny in the PolicyLayer policy for commit_proposal_promotion. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.

What MCP server provides commit_proposal_promotion? +

commit_proposal_promotion is provided by the Meridian MCP server (@meridianmcp/mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

More on Meridian, and thousands of servers like it.

// THE MCP REGISTRY

PolicyLayer tracks 44,603 MCP servers and 515,000+ tools.

Every server has a live record: who publishes it, whether it answers without auth, its risk grade, every tool classified, the recommended policy. This page is one line of Meridian's. Pull the full record:

Teams ship this data inside their own products. See what a licence covers →

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.