Product brief

Problem

Most companies now have a list of AI ideas longer than their capacity to build them. The list is usually ranked by who asked loudest, which vendor demo landed best, or which task feels most tedious to the person describing it. None of those are measurements. The predictable result is pilots that work in a demo and do not pay back: a summarizer for a step that takes four minutes twice a week, an "agent" pointed at a regulated approval that legally needs a human signature anyway, a copilot for a task whose real cost is the two days it sits in a queue.

The information needed to rank these ideas properly is not exotic. It is how often a step happens, how long it takes, how often it is redone, how many handoffs and how much waiting surround it, what data it consumes, how much judgment it needs, and what a mistake costs. Consultants and transformation teams collect most of this in discovery interviews already. What is missing is a consistent, inspectable way to turn those notes into a ranked, costed roadmap with honest uncertainty, without either a spreadsheet nobody else can audit or a black-box score nobody trusts.

workflow-radar is that step: structured workflow capture, transparent scoring, Monte Carlo ROI, and a prioritized roadmap with a recommended delivery pattern and guardrails for each opportunity.

Users and jobs to be done

User Job to be done What they need from the tool
Transformation / AI program lead "Decide which five AI initiatives to fund this half, and defend the choice to finance and risk." A ranked roadmap, P10/P50/P90 economics, payback, and an explanation for every score that survives a skeptical review.
Operations manager "Show where my team's time actually goes and which parts could be assisted without breaking controls." Per-step friction and labor hours, a pattern recommendation that respects judgment and regulatory limits, and guardrails to take to compliance.
Consultant running a discovery engagement "Turn a week of interviews into a client-ready opportunity assessment quickly and consistently across engagements." Notes-to-YAML drafting, a repeatable scoring model, a configurable cost model, and a self-contained HTML report to hand over.

Secondary: finance partners reviewing a business case (they read the ROI tables and tornado charts) and risk or compliance reviewers (they read the guardrail notes and pattern rationale).

Scope

In scope (v0.1, this repository)

Out of scope (deliberately)

Requirements

Functional

  1. A workflow file with a typo, out-of-range value, unordered range, or duplicate step id is rejected with a field-qualified error; nothing is silently defaulted except documented optional fields.
  2. Every score in every output can be decomposed into named factors, their weights, their points, and a one-line reason.
  3. Any weight, threshold, cost band, or automation fraction can be changed in a config file without code changes; partial overrides inherit the defaults.
  4. A step that is high-regulation, high-judgment, or a decision task is never recommended for unattended automation, whatever its score.
  5. ROI is reported as a distribution (P10/P50/P90 and probability of positive first-year net), not a single number, alongside the likely-input point estimate.
  6. Given the same inputs, config, and seed, the report is byte-identical. Adding or reordering workflows does not change any existing opportunity's simulation.
  7. The parse command works with no API keys and never sends data anywhere unless a hosted provider is explicitly selected.
  8. The HTML report opens offline: no scripts, no CDN, no external fonts or images.

Non-functional

Success metrics and evals

The tool should be judged by whether it changes decisions and whether its estimates hold up, not by how many reports it produces.

Metric Definition Target How it is measured
Audit cycle time Hours from last discovery interview to a reviewed roadmap Under 1 working day for up to 10 workflows Time between parse draft creation and final report commit in an engagement repo
Draft acceptance rate Share of fields in a parse draft that survive human review unchanged Above 70% for the heuristic parser, above 85% for hosted providers Field-level diff between draft YAML and reviewed YAML
Estimate accuracy Error of P50 hours saved versus realized hours saved 90 days after launch Median absolute error under 30% Realized savings logged per opportunity; compared to audit.json
Interval calibration Share of launched opportunities whose realized value falls between P10 and P90 70-90% (an 80% interval should contain about 80%) Same data; persistently below 70% means ranges are too narrow and defaults need widening
Ranking quality Share of "Now" opportunities that reach payback within the stated horizon Above 75% Payback tracking for funded items
Adoption Share of funded AI initiatives in an organization that went through an audit first Above 80% after two planning cycles Program portfolio review
Override rate Share of pattern recommendations changed by reviewers, and why Tracked, not targeted; a high rate on one rule means the rule is wrong Review notes

Evals that exist in the repository today

Evals still missing (see roadmap): a labelled corpus of 20-30 synthetic interview notes for parser precision/recall per field, and a calibrate command that ingests realized outcomes and reports the accuracy and calibration metrics above.

Minimum viable quality

Release thresholds for a change to the scoring model, the pattern rules, or the defaults. The first three rows are enforced in CI today. The rest are the targets from the metrics table above with a floor and a stretch added; they need real engagements before they can be measured.

Metric Do not ship Ship Delight Measured today
Report determinism Any byte difference for the same inputs, config, and seed Byte-identical, and existing opportunities unchanged when one is added Same Yes, CLI and site tests
Hard pattern rules Any high-regulation, high-judgment, or decision step recommended above copilot None Same, plus a reviewer override rate tracked per rule Yes, unit tests
Ranking against the friction-only baseline (sample audit) Now + Next worth no more than the top steps by friction alone Above the baseline (8.2x on the bundled synthetic workflows today) Above the baseline on a second, independently written sample set Yes, tests/readme-numbers.test.ts
Draft acceptance rate, heuristic parser Below 60% 70% or higher 85% or higher, the hosted-provider target, reached offline No; the parser is tested on one interview
Estimate accuracy (median absolute error of P50 hours saved) Above 50% Under 30% Under 15% No; needs realized outcomes (calibrate)
Interval calibration (realized value inside P10-P90) Below 60% or above 95% 70-90% 75-85% No; same
Ranking quality (Now items paying back within the horizon) Below 60% Above 75% Above 90% No; needs payback tracking

Cost at 1x and 10x usage

All figures are estimates built only from the repo's own assumptions.

Running workflow-radar. The default path is an offline CLI: no model calls, no service to host. Auditing 10 or 100 workflows instead of 4 adds local compute only (5,000 Monte Carlo iterations per step). The hosted parse providers are opt-in, and the repo holds no token prices or token counts for them, so their cost is not estimated here.

Funding the roadmap it recommends. The cost bands in config/default.yaml are per opportunity and per pattern. On the bundled synthetic audit, Now + Next is six automation-with-review steps, so at 1x:

Usage Monthly run cost (low / likely / high) One-time build cost (low / likely / high)
1x (sample volumes) $1,800 / $4,800 / $9,000 $90,000 / $210,000 / $420,000
10x (ten times the runs) Same as 1x under the current model Same as 1x

The 10x row is the point of the table. The run-cost band covers model usage, hosting, and maintenance as one flat monthly figure, so the model charges the same run cost whether a step runs 12,000 or 120,000 times a month while hours saved scale tenfold. Build cost plausibly stays flat with volume; model usage does not. Until run cost gains a per-run component, treat the 1x band as a floor at higher volumes and expect the model to overstate net savings for high-volume steps.

Trade-offs and alternatives considered

Risks

Risk Impact Mitigation
Garbage in: interview estimates are biased (rework and wait time are routinely underestimated) Confident-looking but wrong rankings Three-point ranges everywhere; tornado chart shows which input moves the answer, so the team knows which number to go measure; calibration metric catches systematic bias over time
False precision: P50 figures read as commitments Business cases built on medians, then missed Report leads with ranges and probability of positive return; synthetic banner on demo data; docs state labor savings are not budget cuts
Defaults treated as benchmarks Every client gets the same automation fractions and cost bands Defaults are round numbers, documented as placeholders, and overridable per run; report prints the config used
Pattern rules too permissive for a regulated client An "agent" recommendation in a context that cannot support one Hard rules ordered before thresholds; guardrail notes on every medium/high-risk step; rules are a short, reviewable function
LLM parser invents numbers Fabricated durations enter the model Prompt forbids invention and requires warnings; output validated by the same schema; drafts are labelled for review; offline heuristic is the default
Sensitive interview content sent to a hosted model Data-handling breach Hosted providers are opt-in per command and require an explicit key; the default path never leaves the machine
Optimizing for hours instead of outcomes Automating steps that should be eliminated Report surfaces wait time and handoffs as friction even when they produce no labor savings; process redesign is called out as a separate lever in the roadmap

Roadmap

Now (next 4-6 weeks)

Next (one quarter)

Later