Facts, decisions and learnings live in the project, not in the conversation. And an assumption here has a shape: it is born with the observable condition that would break it, and EVODA re-evaluates it on every read of the environment.
The problem
Last quarter’s decision lives in a document nobody can find, and the assumption that supported it is written nowhere. When the scenario changes, the decision is orphaned without anyone noticing, until the bill says so.
Every engagement leaves facts, decisions and assumptions recorded in the project. The assumption carries the condition that would invalidate it; when it breaks, EVODA points at the decisions that depend on it, and the subject reopens with context instead of starting from zero.
How it works
"Active volume stays below 1 TB" does not go in as a comment: it goes in as an assumption with a threshold. When the environment snapshot arrives it is re-evaluated, and the state is visible: standing, broken or retired.
An assumption that can be checked by a metric is watched automatically, with the last reading and a projection of when the threshold would be crossed.
Watched assumptions
EVODA re-checks each one during follow-ups and warns when a decision deserves review.
review if: active volume passes 1 TB · last reading: 61 GB
review if: dedicated engineering joins · last check: July interview
broke: new request for a near-real-time dashboard · affects the analytics layer choice
Every assumption is born with the observable condition that would invalidate it. An assumption without a condition is an opinion with a date.
A new engagement in the same project starts with what the previous ones found: requirements, decisions with their why, assumptions and what came back from follow-ups.
In the track record, assumptions appear next to what was recommended and what was measured, because memory without confrontation with reality becomes folklore.
Recommended against measured
Analytics layer · 4 months since rollout
| What was claimed | Projected | Measured | Deviation |
|---|---|---|---|
| Monthly cloud cost | R$ 2,600 | R$ 2,840 | +9.2% |
| Main dashboard query | < 2.0 s | 1.4 s | within |
| Daily ingestion | < 15 min | — | not measured |
| Assumption: volume below 1 TB | — | 61 GB | holds |
Cost accuracy on this project: within plus or minus 20% in 3 of 4 months, biased low.
Under the hood
A watched assumption is declared mechanics, with honest limits.
What comes next
Projected cost against the real invoice, assumptions with state, open objections and the environment’s drift, in one place.
See it from the inside →MCPConnected agentThe Claude Code on your side connects over MCP, runs read-only investigations and returns reports and environment snapshots on its own.
See it from the inside →DecisionDecision matrixWeighted criteria, justified scores, and each option declaring how much it costs and how long it takes to leave it within 18 months.
See it from the inside →Paste the structure, get the most serious findings in about two minutes, and decide later whether an engagement is worth opening. No account, no card.