Optimize decision calendar

Schedule dependent strategic decisions as information arrives, balancing contingent action value, delay cost, portfolio tail risk, deadlines, precedence, and scarce decision capacity.

What it's for

Creates an executive decision calendar that knows when waiting buys useful evidence, when delay destroys value, and which decisions compete for the same leadership attention.

What you give it

Inputs split into evidence read from your connected systems, calibration your team owns, and numerical controls that affect precision but never the result's meaning.

Field Type Role Required
calendar_periods array of objects (3 fields) ≥ 1 item Evidence Yes
decisions array of objects (7 fields) ≥ 1 item Evidence Yes
information_releases array of objects (4 fields) Evidence Yes
max_detail_rows integer ≥ 1, ≤ 500 Numerical control Optional
maximum_cvar_loss number ≥ 0 Your calibration Optional
maximum_exact_states integer ≥ 2, ≤ 4194304 Numerical control Optional
minimum_calendar_value number Your calibration Optional
risk_aversion number ≥ 0 Your calibration Optional
scenarios array of objects (2 fields) ≥ 1 item Evidence Yes
tail_probability number ≥ 0.001, ≤ 0.5 Your calibration Optional

Each decisions record

Field Type Required
actions array of objects (2 fields) (≥ 2 items) Yes
deadline_period integer (≥ 0) Yes
decision_effort number (> 0) Yes
delay_cost_per_period number (≥ 0) Yes
earliest_period integer (≥ 0) Yes
id string (non-empty) Yes
must_follow_ids array of string Optional
Example input
{
  "calendar_periods": [
    {
      "decision_capacity": 1,
      "id": "now",
      "period": 0
    },
    {
      "decision_capacity": 1,
      "id": "after-pilot",
      "period": 1
    }
  ],
  "decisions": [
    {
      "actions": [
        {
          "id": "commit",
          "value_scenarios": [
            30,
            -30
          ]
        },
        {
          "id": "hold",
          "value_scenarios": [
            5,
            5
          ]
        }
      ],
      "deadline_period": 1,
      "decision_effort": 1,
      "delay_cost_per_period": 10,
      "earliest_period": 0,
      "id": "platform-commitment"
    }
  ],
  "information_releases": [
    {
      "decision_id": "platform-commitment",
      "id": "pilot-signal",
      "period": 1,
      "signal_ids": [

Truncated for display — the full payload is 60 lines.

What you get back

This is the actual output of running the example above — computed by the same function the platform calls, not an illustration.

Example output
{
  "assumptions": [
    "Every scenario is a coherent joint future across decisions, action values share one governed unit and horizon, delay costs are complete and incremental, and information partitions contain only signals genuinely observable before the scheduled decision.",
    "Within each available signal state the policy chooses the highest conditional expected-value action; scenario labels are not leaked future outcomes, and the latest eligible release replaces rather than silently combines incompatible signal models.",
    "Decision effort represents scarce aggregate governance or analysis capacity, strict dependencies require predecessors in earlier periods, and all submitted decisions must be scheduled inside their governed windows; an infeasible result is an abstention requiring scope or capacity review.",
    "The calendar is optimal only for the declared common scenarios, values, delay costs, information releases, capacity, dependencies, and solver guarantee; it does not authorize automatic strategic, investment, employment, or safety decisions."
  ],
  "configuration": {
    "information_must_arrive_by_selected_period": true,
    "maximum_cvar_loss": null,
    "minimum_calendar_value": 0,
    "risk_aversion": 0,
    "strict_precedence": true,
    "tail_probability": 0.1
  },
  "decision": "information_aware_decision_calendar_selected",
  "decision_diagnostics": [
    {
      "available_signal_count": 2,
      "contingent_action_policy": [
        {
          "conditional_expected_value": 30,
          "selected_action_id": "commit",
          "signal_id": "high",
          "signal_probability": 0.5
        },
        {
          "conditional_expected_value": 5,
          "selected_action_id": "hold",
          "signal_id": "low",
          "signal_probability": 0.5
        }
      ],
      "deadline_period": 1,
      "decision_effort": 1,
      "decision_id": "platform-commitment",
      "delay_cost": 10,
      "earliest_period": 0,
      "expected_value_at_selected_period": 7.5,
      "incremental_value_vs_earliest_decision": 2.5,
      "latest_information_release_period": 1,
      "must_follow_ids": [],
      "selected_period": 1,
      "truncated_signal_policy_count": 0

Truncated for display — the full payload is 108 lines.

How it works

Constrained optimization — Pick the best feasible option under real limits — budget, headcount, dependencies, capacity — rather than ranking a list and hoping it fits.

  1. 1 Freeze coherent joint scenarios, feasible actions and values, decision windows, delay costs, strict dependencies, period capacity, and scenario-signal partitions whose release times precede any action they inform.
  2. 2 At each eligible period, choose the best action conditional on the latest available signal partition and compute scenario value net of delay; then optimize the joint schedule under precedence and capacity by bounded exact enumeration or disclosed coordinate search.
  3. 3 Return the chosen period and contingent action policy for every decision, information value versus deciding at the earliest date, capacity use, joint expected value and CVaR, and abstain if no complete feasible calendar exists.

Before you trust it

Every tool in the catalog ships with the conditions under which its answer is meaningful — and the conditions under which it should abstain instead of guessing.

Assumptions & guardrails

  • Objectives use commensurable locally governed value units, constraints reflect real feasibility, and uncertainty covers plausible adverse inputs.
  • Signals are genuinely pre-decision and do not encode future leakage, scenarios are coherent across decisions, action values and delay costs are complete and commensurable, dependencies require earlier decisions, and effort represents real aggregate governance capacity.
  • The recommendation is optimal only for its stated objective, feasible set, evidence, and solver guarantee; it is not a universal management optimum.
  • The calendar structures accountable decisions rather than automating them; information value is conditional on submitted signal quality, every decision must fit its window, and heuristic schedules have no global certificate.

Minimum evidence

  • decisions: at least 1 rows/items
  • scenarios: at least 1 rows/items
  • information_releases: required and organization-defined
  • calendar_periods: at least 1 rows/items

How to validate it

Backtest the chosen action against simple feasible baselines on held-out scenarios, sweep costs/constraints/risk tolerance, and require constraint feasibility under adverse inputs.

Calibrating it to your org

Same for everyone

The mathematical kernel, validation rules, method version, and JSON output semantics are organization-independent; no tenant-trained coefficients or company benchmark is embedded in the function.

Specific to you

  • coherent cross-decision joint scenarios and point-in-time signal partitions with documented release periods proving the information is available before the corresponding decision
  • decision/action boundary, value horizon and unit, delay cost, signal semantics and timing, scenario probabilities, strict precedence, governance capacity, minimum calendar value, tail limit, risk aversion, and solver boundary

Calibration workflow

  1. 1 Define the management decision, target outcome, aggregate unit, privacy boundary, cadence, and prediction/intervention horizon for this organization.
  2. 2 Build a tenant-scoped historical cohort using only information available before each prediction or decision; preserve zero periods, censoring, assignment probabilities, and unresolved outcomes when the method requires them.
  3. 3 Estimate statistical parameters on training history, but obtain costs, utilities, risk tolerance, practical-effect thresholds, capacity, and policy constraints from accountable decision owners.
  4. 4 Validate on later time windows or held-out aggregate units at the deployment grain, against a simple baseline and the function-specific validation strategy.
  5. 5 Deploy only if the returned decision clears evidence, overlap, calibration, robustness, and guardrail checks; warning, unsupported, schema-gap, and fallback decisions are abstentions.
  6. 6 Monitor realized outcomes, data drift, coverage, and decision regret; recalibrate at a governed cadence or after a detected regime/definition change, never merely because a stakeholder dislikes the result.

Call it from your AI

You don't wire up 388 tools in your MCP client. The GitRevio MCP server exposes 18 tools, three of which let an agent search the catalog, read a tool's schema, and run it — so the assistant finds this one on its own.

gitrevio_capabilities_search
  { "q": "schedule dependent strategic decisions as information" }
  → finds "optimize_decision_calendar"

gitrevio_capability_describe
  { "capability_id": "optimize_decision_calendar" }
  → returns the input schema and agent guidance shown on this page

gitrevio_capability_run
  { "capability_id": "optimize_decision_calendar", "arguments": { ... } }
  → returns the result shown above

Works in Claude Desktop, Claude Code, Cursor, Cline, Continue.dev, Goose and Aider. See the MCP server.

Related tools

Calibrate business case forecasts

Calibrate positive business-case forecasts with chronological empirical-Bayes log-ratio correction, sparse-category shrinkage, proper-score validation, and interval-coverage gates.

Forecasting & survival

Optimize shared platform investment

Choose a shared-platform option and adopter coalition under budget, capacity, joint scenarios, pairwise network value, CVaR, and individually rational Shapley-informed cost allocation.

Network & dependency analysis

Allocate budget with CVAR constraint

Maximize expected portfolio return while keeping probability-weighted loss CVaR below a finance-owned tail-risk ceiling across aligned joint scenarios.

Constrained optimization

Audit budget constraint binding

Audit whether a claimed budget constraint genuinely blocks value after dependency-feasible portfolio reallocation, separating current-plan inefficiency from scarcity with scenario CVaR and a discrete budget shadow price.

Constrained optimization

Audit financing term sheet integrity

Audit startup financing terms as exact share, price, proceeds and ownership identities: include pre-money option-pool increases and converting instruments in the pricing denominator, keep secondary purchases out of company cash and post-money share creation, reconcile primary issuance, post-money equity value and reported investor ownership, and retain evidence failures and impossible fees or secondary sales.

Statistical audit & measurement

Audit fundraising pipeline integrity

Audit a fundraising pipeline as point-in-time evidence rather than CRM theater: reconstruct monotone stage events, terminal status and primary proceeds, retain open opportunities as censored, reject forecasts made after resolution, detect duplicate active investor accounts, and gate the portfolio on mature-forecast support, Brier loss and calibration gap.

Forecasting & survival

See every tool in Investment & portfolio choice →

Ready to See Your Engineering work clearly?

Request a free demo