International Monetary Fund · RFP prototype

For an IMF bid, an agentic pipeline turned 26 institutional documents into three working governance portals in fourteen days.

Agents converted the brief into research, specifications and running code. I led the design and governed the six gates where a person decided what was correct before anything moved on.

Role
Lead UX Designer
Team
Seven: a senior product manager, a product manager, four developers and me
Replay · the first gate, as the project's record has itThe agentsA person
brief.md · IMF Voting Portal
Agents · reading the brief

26 institutional documents in. Five kinds.

  • Governance frameworks
  • Platform requirements
  • Technical architecture
  • Operational standards
  • Process & scheduling
research.mdWritten

25 claims, each tagged with its source

6 IMF documents16 public research3 synthetic, flagged
  • 26Source documents in
  • 6Gates, each closed by a person
  • 14Days, brief to submission
  • 32Screens out, in running code

What the pipeline produced

Three portals on one set of institutional rules. Each one and why it had to be right:

  • Voting Portal

    For governors, alternates and transmitters

    Where governors cast their votes on the resolutions assigned to them. Each vote carries its country's voting power, so a lost submission or an unclear state changes an institutional outcome.

    22use cases, 12 of them exceptions

  • Admin Portal

    For secretariat administrators, staff and OED officers

    Where the secretariat creates each vote, watches submissions arrive from 191 members and certifies the result. Every outcome is checked against what this portal records.

    9steps to create a single vote

  • Meeting Portal (BCMS)

    For board-calendar and meeting participants

    Runs the board calendar, where each consultation moves from deliberation to a voting window. People act on its dates, so every state has to read the same to everyone.

    37transitions across 14 states

02 · The pipeline

26 documents. 191 nations. No room for ambiguity.

Scale was the easy part. The hard part was turning voting power, meeting rules, role authority and audit duties into screens a finance minister could trust without asking what they meant.

Membership
191member nations, and a vote counts by voting power, not one per country
So one result reads two ways

68.7% of voting power in favour, from 71 of 191 countries.

  • Votes weighted by voting power
  • Different authority levels
  • One trusted platform

What the 26 documents held

Governance & complianceRole model, permissions, approval gates
Voting rulesVote lifecycle, eligibility, result views
Operational processMeeting states, confirmations, calendar logic
Technical constraintsFeasible prototype boundaries
IMF identity & accessibilityVisual system, WCAG AA, interaction rules
What the RFP asked for

More than mockups: a defensible chain from institutional rule to product behaviour to working prototype.

Six stages, each closed by a person.

Agents drafted the research, the specs and the screens in hours. Nothing reached the next stage until I had read it, corrected it and signed it off, because in a governance system plausible is not the same as correct.

  1. 01

    Convert

    research.md

    Documents into sourced claims

    Interpret
  2. 02

    Extract

    brief.md

    Claims into a product brief

    Align
  3. 03

    Structure

    user stories

    The brief into stories and use cases

    Decide
  4. 04

    Synthesise

    sync-report.md

    Requirements traced to screens

    Refine
  5. 05

    Generate

    coded drafts

    Screens in running code

    Validate
  6. 06

    Scaffold

    confidence.md

    The round scored against a 90% gate

    Approve

Fixed before any agent ran

  • Evidence tags

    Every claim in the research carried its source: IMF's own documents, public research or synthetic. Synthetic meant direction only.

  • A scored threshold

    Each round was scored on evidence, completeness, consistency, implementability and alignment against a 90% gate. Below it, a person chose the next step.

  • Identity and accessibility

    IMF's approved mark, WCAG AA and keyboard operation were set before the first screen and enforced in code across all three products.

Six times the gate changed the answer.

Every stage paired something the agents did fast with a decision a person had to make. These six changed what shipped. Each one is in the project's own record.

26 source documents
  1. 01 · Convertresearch.md25 of 25 sourced

    It labelled its own guesses

    Every research claim carried its source: 6 from IMF documents, 16 from public research, 3 synthetic.

    6 IMF documents16 public research3 synthetic, flagged
    Interpret

    The five personas were marked synthetic and used for direction, never as evidence.

    AdjustmentsClaims sourced25 of 25Personasevidence → direction

    research.md and prototype documentation.md were checks on understanding: did the team read the domain the same way, before a single specification was generated?

  2. 02 · Extractbrief.md

    The first brief was the wrong product

    The first brief scoped one portal for governors and the secretariat together.

    1 portalGovernors and the secretariat
    Align

    At the first gate I separated them, because they answer for different things. That correction is why there are three portals.

    AdjustmentsAudience+ secretariat → governorsAdmin Consolein → separate sitePortals1 → 3
  3. 03 · Structureuser storiesGap flagged

    The requirements had no “Cast Vote”

    The requirements held seven stories for the voting portal and none for casting a vote, the one action it exists for. The workflow flagged the gap.

    • US-5.1.4
    • US-5.1.5
    • US-5.1.6
    • US-5.1.8
    • US-5.1.10
    • US-5.1.11
    • US-5.1.12
    • Cast Vote: none
    Decide

    I wrote the story from the business requirements and took it to the analyst.

    AdjustmentsVoting stories7 → 8Cast Votegap → US-CAST
  4. 04 · Synthesisesync-report.md1 contradiction

    A contradiction in the requirements

    All 45 meeting-portal requirements were traced to the screens that meet them.

    38 held6 did not hold1 contradicted the rest
    Refine

    Seven did not hold, and one contradicted the rest. Those went back to the client as questions.

    AdjustmentsRequirements held38 of 45Back to the client7, as questions
  5. 05 · Generatecoded draftsProcedure correct

    The override, said diplomatically

    When a Governor’s vote replaces an Alternate’s, the coded drafts got the procedure right.

    Validate

    The procedure is correct and the moment is still delicate. The notice is worded neutrally, and the original vote stays in the audit trail.

  6. 06 · Scaffoldconfidence.mdUnder the gate

    84% and a call to make

    The workflow scored its own first round at 84%, under its 90% gate, and offered three ways forward.

    Round one · scored by the workflow itself

    84%overall, against a 90% gate

    Evidence
    78%
    Completeness
    95%
    Consistency
    90%
    Implementability
    87%
    Alignment with users
    65%
    At or over the gateUnder itThe 90% gate
    Approve

    I accepted the 84% and took it to the next gate, with the alignment and evidence gaps logged as known risks for after the bid.

    AdjustmentsSelf-score · gate84% · 90%Options offered3Chosenaccept, log risks

    Its weakest score was alignment with the people it was built for, after the scope correction at the first gate. That is the one score a machine cannot raise on its own.

  • Voting Portal

    Governors · Alternates · Transmitters

  • Admin Portal

    Secretariat administrators · Staff · OED officers

  • Meeting Portal (BCMS)

    Board-calendar and meeting lifecycle participants

03 · What the pipeline produced

One institutional system, three task environments.

Each portal is shaped by what its people answer for, and all three stand on the same rules. Pick one to see the screen and the call I made on it.

Voting Portal · My Votes1 of 3
Voting Portal, My Votes screen. Resolutions assigned to a governor appear as cards with a countdown, a not-voted status pill and a participation bar.
Built for

Governors · Alternates · Transmitters

The call

Assigned votes surface as scannable cards. Nothing is buried behind a search.

22
use cases, 12 of them exceptions
96
user stories
5
screens
Under all three

Six institutional rules enforced in code, a 25-claim evidence log with every source tagged, a WCAG AA target with automated accessibility checks and one derived IMF palette.

Past the happy path

The happy path was the easy part. The voting portal alone handles a deadline passing mid-submission, a dropped connection as a vote is cast, a session expiring on the confirm screen and two people, a Governor and an Alternate, opening the same vote at once.

A system can look correct and still leave a governor unsure whether a motion actually passed.

04 · The hardest calls

Making governance states visible.

The agents could generate every state the rules named. Deciding what a governor should see in each one was the hardest part of the work: which state a vote is in, what they are allowed to do about it and whether the result is legitimate.

What needs my vote?

  1. Draft
  2. Pre-Open
  3. Active
  4. Pending Results
  5. Finalised

ActiveSuspended

An active vote can be halted on procedural grounds. Suspension is a state of its own with its own view, because inside an institution a paused vote is a legitimate outcome that people still have to reason about.

Did the motion legitimately pass?

Admin Portal · Vote resultsDEV-IMF-2026-004
Vote results pending certification. Quorum met, 113 of 191 eligible countries voted, 96.16 per cent of voting power participated, with counts for, against, abstained and not voted, then two distribution charts by voting power and by number of countries.
Gate · Validate · result viewTwo readings of legitimacy
AdjustmentsReadings shown1 → 2By voting power, For68.7%By countries, For71 of 191

Every result view carries both readings of legitimacy. Publishing only the weighted figure would have been accurate and, for most of the room, misleading.

A vocabulary for state, derived from the approved mark

IMF's approved palette alone could not carry three products' worth of hierarchy, states and warnings. We agreed derived shades and tones that kept accessible contrast without breaking the institution's identity.

  • 900#001E60Identity anchor
  • 700#004C97Primary action
  • 500#2F6FAESecondary marks
  • 100#DBE7F5Surfaces
  • 50#F0F5FBTinted panels
Meeting Portal · Motions
Motions table in the meeting portal. Each row carries a motion type badge, a status pill, who voted, the vote choice, the result and a deadline, with the nearest deadlines marked in red.
One table, six encoded meanings: motion type, lifecycle status, voting actor, choice, outcome and urgency. Colour never carries a state on its own; every pill also carries a word.
Admin Portal · Monitoring
Live vote monitoring in the admin portal. Each vote is a card carrying its state pill, a status line and submissions received out of 191 with a progress bar. One card shows a suspended vote.
What needs action shows within three seconds of login. Each vote’s state, status line and participation sit on the same card, so triage never requires opening a record.
05 · Reviewed in the build

No handoff. The running build was the design review.

The pipeline's last stage had no handoff. For two weeks I refined interface decisions directly in frontend code and pushed reviewable updates to the Azure monorepo every one to two hours.

0102030405061–2 hrreview loops
  1. 01Design decision
  2. 02Frontend code refinement
  3. 03Azure monorepo push
  4. 04Running build review
  5. 05Feedback
  6. 06Next iteration

Design surface: the running build. There was no handoff step.

Every review argued with something that ran. It mattered most for the meeting portal, where scheduling states and calendar behaviour had to be checked against real dates on a real calendar.

There was no Figma file to hand over. The design was the running code, and every review happened inside it.

06 · After day 14

Faster drafts, the same burden of proof.

The agents took on decomposition, specification, prototyping and testing. Deciding what is correct inside an institution stayed with a person.

Agents

Execution accelerated

  • Three working platforms in place of three decks
  • A two-week RFP proof of concept
  • Specs, tests, traceability and working routes
  • A coded prototype with real workflow depth

Judgement protected

  • Role clarity and trust boundaries
  • State visibility
  • Accessibility
  • Visual-system restraint
  • Human approval gates
In a governance system, the dangerous output is the plausible one.

Seven decisions the pipeline could not make on its own

  • Personas kept as direction
  • One portal became three
  • Cast Vote written by hand
  • Seven requirements back as questions
  • Override worded neutrally
  • Accepted at 84%, risks logged
  • Both readings on every result

Where it went next

The same way of working then went to EPAM teams designing for Canadian Tire, Novartis and GoTo.

What I would change

If I ran it again, the first thing I would buy is an hour with a real governor: the personas were our weakest evidence, and the scorecard said so.