Skip to content

Wilderness Window

How the Mendix application actually behaves, written from the model rather than from memory. Three depths, because three different questions get asked:

  • For the business

    What the system does, in the language the business uses. Start with how a quote becomes a booking.

  • Deep dives

    Node-by-node traces with the real expressions, for changing the thing safely. Start with the cancellation path.

  • Regression suites

    What to assert, and which cases matter. Start with pricing.

The journeys

Journey Business Engineering QA
Quote to booking how it works deep dive regression
Cancellation and fees how it works deep dive regression
Pricing how it works rules · calculation · manual adjustments regression
Dead beds how it works deep dive regression
Children and rooming how it works deep dive regression

Then conventions and risks, which is the page to read before trusting anything else here.

How much is written down

journey flows named flows that write the subject ways to start them covered
Cancellation, amendment and fees 54 18 of 30 43 of 56 71%
Children, room occupancy and the age policies 95 35 of 35 48 of 48 100%
Dead beds — unsellable inventory created by a booking 58 12 of 12 27 of 27 100%
Pricing rules, calculation and manual adjustments 68 15 of 29 33 of 50 61%
Quote to booking conversion 93 35 of 86 78 of 108 58%

measured against journeys/.toml on every refresh. "Described" means a document somewhere in docs/ names that flow or trigger; it does not judge how well*.

What is still missing

journey flows to describe triggers to describe unreachable from the entry points total
Cancellation, amendment and fees 12 13 3 28
Children, room occupancy and the age policies 0 0 0 0
Dead beds — unsellable inventory created by a booking 0 0 0 0
Pricing rules, calculation and manual adjustments 14 17 8 39
Quote to booking conversion 51 30 14 95

a to-do list, not an error list. Anything excluded on purpose is recorded with a reason in each document's "What this document does not cover" section.

What those numbers mean

Both tables are measured on every refresh against journeys/*.toml, which declares where each journey starts and what was deliberately left out. Described means some document under docs/ names that flow or trigger — it does not judge how well. A gap is a to-do, not an error: anything excluded on purpose is recorded with a reason in each document's "What this document does not cover" section.

Querying the application directly

Tables in these documents are generated from the model. The same queries are available live — pick an entity, an attribute, a flow, and ask:

Open the model explorer Ask Claude instead

Or point a Claude session at it and ask in plain language — one claude mcp add and it can query the model from any repository. See asking Claude directly.

Useful starting points there: who can set a booking to a given status, what runs implicitly on a commit, how a flow gets started (it walks up to the real trigger), and what a change to this flow could affect.

Two things nothing here can tell you

Expressions are recorded exactly as the model holds them, never interpreted: a write of if … then CC else CX is one fact that mentions two values, not a decision table. And nothing here knows runtime configuration — whether a scheduled job is enabled in a given environment lives outside the model.