The analysis layer
Some questions cannot be answered by looking something up
Ask takes one question and answers it from the rows it retrieved. The analysis layer is for the other kind: the question that only settles after several investigations have run in the right order and been checked against each other. It reads the question, plans the work, runs it inside a time budget, puts the findings side by side, attacks its own answer, and then writes what it found and what it could not determine.
It is not a general agent. It cannot browse, and it knows nothing about the world beyond the twenty industry profiles and the files you uploaded.
A question about what is can be worked out from the record in a moment. A decision needs several investigations run in an order, reconciled against each other and then attacked. That is an analysis.
The difference is not the length of the answer. It is that the plan is written down before anything runs, that every finding has to survive the other findings, and that the parts which did not survive are printed rather than dropped.
The six stages
Read, plan, investigate, reconcile, critique, write
Every analysis passes through the same six stages in the same order, and each one leaves something on the screen you can disagree with before the next one starts.
Read
What is being asked, and what it is being asked about. The question is turned into one of eleven intents and a set of entities matched against your own graph, and then restated in the software's own words so that a misread is visible before anything costs you.
Plan
The investigations that would settle it, cheapest first. Each step carries the reason it is in the plan and what it will cost against your monthly limits. The plan is shown before a single step runs.
Investigate
The steps run in order inside a time budget. Reading the record and the ledger happens first because it is free, and simulation happens last because it is not. A step that runs out of budget is recorded as unfinished rather than quietly skipped.
Reconcile
The findings are put side by side and the conflicts are found. The network saying an account is fragile and a contract file saying it is locked in for nine months is not noise to be averaged. It is the most interesting thing in the analysis.
Critique
The answer is attacked with what the ledger knows about itself. Which of the numbers holding this up are defaults. How wide the band is. Which single assumption would reverse the conclusion if it moved within its own range.
Write
The answer, the confidence with the four things it was computed from, the conflicts, the list of what could not be determined and why, and the next question worth asking with the reason to ask it.
Stage one
Reading the question is rules based, on purpose
Deciding what a question is asking could be a classifier. It is not one, and the reason is that the plan which follows has to be arguable. A classifier gives you a confidence score where you wanted a reason, and a plan you cannot argue with is a plan you have to take on trust.
So it is rules. The intent comes from the shape of the sentence. The entities come from matching names against the twin's own graph, which means a name in your question resolves to a node with edges rather than to a string. Ask about an account by name and the plan already knows which segment it sits in, which salesperson holds it and when its contract ends.
Then it restates your question in its own words and puts that restatement on the screen. If it read which of these should we do as what happens if we do all of them, you find out in one line, at the point where correcting it costs nothing, rather than at the bottom of an analysis that answered a different question rather well.
- Intent from the sentence, entities from the graph
- The restatement is printed above the plan, every time
- A name that matches nothing is reported as unmatched, not guessed at
- Nothing in this stage calls a language model
The eleven intents
What kind of question is this
The intent decides the shape of the plan. It is shown next to the restatement, so if it picked the wrong one you can say so before anything is spent.
| Intent | What it sounds like | What the plan does about it |
|---|---|---|
| What happens if | Raise the price twelve percent. Lose the largest account. | Runs the scenario against its own baseline on the same seeds, and reads the band rather than the median alone. |
| How big is it | How exposed are we to that supplier. | Reads the record and the ledger first, and only simulates if reading cannot settle it. |
| Why is this the way it is | Why is margin lower than it was last year. | Traces the graph and then finds which assumption carries the number. |
| Which of these matters most | Of these five risks, which one deserves the attention. | Ranks on impact, then checks the top two by running them. |
| Which of these should we do | Hire two salespeople, or cut the price. | Runs each option against one shared baseline on one set of seeds. How that comparison works. |
| What could go wrong | What breaks if we go ahead with this. | Looks at the replications in the bad tail and names what happened inside them. |
| When would we know | How long before we can tell whether it is working. | Finds the first month in which the two paths separate by more than the band. |
| What do we give up | What does this cost us somewhere else. | Reads the second order effects inside the same run rather than commissioning a new one. |
| Who or what is this about | Tell me about this account. | Reads the record and the graph neighbourhood around it, and stops there. |
| What is driving this | What is behind the churn number. | Finds which assumption carries the answer, then sweeps that one lever across its range. |
| Tell me about this | Anything with no question in it at all. | Treated as the cheapest intent. It reads, it does not run. |
Eleven is not a taxonomy of business questions. It is the set of shapes the planner knows how to build a plan for, and anything outside it is handled as the cheapest intent rather than forced into the nearest one.
The seventeen investigations
Cheapest first, and it stops when the question is settled
This is the whole toolbox. There is nothing else it can do, which is what makes the plan readable and the cost predictable.
| Investigation | What it does | What it costs |
|---|---|---|
| Read the record | Pulls the figures the twin already holds about the thing being asked about. | Nothing |
| Read the ledger | Fetches the assumptions in play, with their origins and their bands. The ledger. | Nothing |
| Benchmark against the industry | Puts a figure next to the quartile band the industry profile carries, and says where it sits. | Nothing |
| Trace the graph | Walks out from a node to find what depends on it and what it depends on. | Nothing |
| Ask the network | Reads risk, impact and similarity off the trained model, with the attribution behind each score. The network. | Nothing, where a model is trained |
| Look at what has already been run | Searches your existing runs for one that already answers this, and reuses it rather than repeating it. | Nothing |
| Run a simulation | One scenario against its own baseline on the same seeds. The engine. | One run against your monthly limit |
| Run several against one baseline | Two or more options compared on one baseline and one set of seeds. | One run for each option |
| Find which assumption carries the answer | Moves each load bearing assumption across its own band in turn and reports which one moves the result most. | Several runs, counted in the plan before it starts |
| Find the breaking point | Moves each load bearing number until the recommendation changes sign, and reports the value it breaks at or that nothing could overturn it. | A short run per test |
| Test the interaction | Two decisions named together are run four ways: neither, each alone and both, and the gap between both and the sum is the interaction. | One more run |
| Price the delay | The same decision started in four different months, so a month of waiting has a figure on it. | A short run per start month |
| Take the bad case apart | Reads the worst tenth of the runs: the month cash is lowest, what share ran out, and which events show up in the bad runs and not the rest. | One run |
| Sweep a lever across a range | One lever across a range, returning a response curve and a best point. Sweeps. | One sweep against your monthly limit |
| Run it again on other seeds | The same decision three times on three sets of seeds at forty replications, with a verdict on how much of the figure is chance. | Three short runs, counted as one |
| Look for the case against | Reads every fact on file for each load bearing number and names the ones more than fifteen percent from the value in use, with the file. | Nothing |
| Put the findings together | Reconciles what the earlier steps found and writes down where they disagree. | Nothing |
The order in this table is the cost order. The planner works down it and stops as soon as the question is settled, so a question about your own record usually costs no runs at all.
Stage two
The plan is on the screen before anything runs
The plan is a list of investigations in the order they will run, each with the reason it is there and what it will cost against your monthly limits, totalled at the bottom. You read it first.
That ordering is the only reason this is affordable to use. Reading the record is free and a sweep is not, so the plan reads first and simulates last, and it stops as soon as the question is settled instead of running everything it could think of.
You can remove a step you do not want to pay for, add one you think it missed, or send the whole plan back because the restatement at the top of it is wrong. Software that spends your allowance and then tells you what it decided to do is asking you to audit a receipt.
- Every step carries the reason it is in the plan
- The cost of the plan is totalled before it runs, against your limits
- A step that would exceed the budget is dropped, and listed as dropped
- The time budget is a ceiling, and a plan that hits it names the steps that did not finish
Complex questions
Six things it does that a single answer cannot
It takes a compound question apart
"Should we raise prices and hire two engineers, and what does that do to cash?" is three things: two decisions and a metric. The analysis splits it on the joins people use, answers each part in its own time box, and then answers the whole with every part in it, so the interaction between the decisions is in the final figure. The parts ride on the answer, each with its own confidence, so the reader can see which finding belongs to which question.
- A part that points back at the decisions ("what does that do to cash") inherits them
- A part about the record as it stands is answered from the record by the knowledge engine, with its own sources, and never simulated as if it were a decision
- Up to four parts, none stored on their own
- A part far less sure than the whole pulls the confidence down
It argues against itself
Every number the answer stands on came from somewhere, and the rest of the record may say something else: a second statement with a different margin, a board paper with a headcount the payroll does not match. One investigation reads every fact on file for each load bearing number and names the ones more than fifteen percent from the value in use, with the file and the line. The reader decides which to believe; the confidence already knows there was a disagreement.
It remembers what it said last time
The same decision on the same company, asked before, is listed under the new answer with what it said then, how sure it was, and how many ledger rows have changed since. Whether the model changed its mind or the record did is written on each, and either answer is one click away.
- Same intent and a decision or metric in common
- Three at most, newest first, drawn as a line of how sure it has been each time
- A flat contradiction is called out separately, with both dates
It runs itself again on other seeds
Every simulation has a seed in it, and a change that does not survive a change of seed is not a finding. So a single decision is run three more times on three sets of seeds at a fraction of the replications, and the three figures are drawn on one axis with zero in the middle. If they agree within a sixth of each other the figure is firm. If they agree on direction but not on size, the answer says to quote the direction and the band. If the sign changes between seeds, the answer says so first and the confidence falls by ten points.
It says which file would tighten it
The defaults an answer still leans on are grouped by the one file that would replace them, with the coverage the answer would have once that file arrives. "Uploading a customer list replaces churn and concentration and takes coverage from 41 to about 68 percent" is a chore with a reason on it, and the button beside it opens the upload for that kind of file.
- One card per file, biggest lift first
- The coverage it would reach, not a vague promise
- Every number in the ledger maps to a kind of file, so the advice is never just set it by hand
It leaves with you
Any answer exports as an evidence bundle: the whole analysis as data, every citation with the file and the line, the reasoning chain, the numbers with their origins and bands, the parts, the case against and the track record, plus a plain reading of all of it. Present mode turns the same answer into a deck, and the deck exports as one page that prints a slide per sheet.
- The bundle is a file an auditor can keep without the application
- The deck is one self contained page
- Nothing in either was written by a model
Provenance
No stage in this invents a number
Stage five
Confidence is computed, not asserted
A sentence that says high confidence is decoration. The number printed with every analysis is worked out from four things, and you can go and look at all four.
An analysis resting mostly on defaults says so in its first two sentences, before any finding. That is the opposite of the usual order, and it is deliberate. What to upload to move it.
When it is not clean
What it does with the parts that did not resolve
Nothing moved, because debt balance is zero in this twin. The lever is real and the mechanism is there, but it has nothing to act on until that number comes from your record.
That is the entire answer to what happens if interest rates rise 4 percent, asked of a company whose record carries no debt. A product that wanted to look useful would have found something to report. This one names the mechanism, says it is idle, and tells you which figure would make the question worth asking.
Questions about the analysis layer
Is this an agent that goes off and does things?
No. It plans and runs investigations inside your own twin and that is the whole of what it can do. It cannot browse, it cannot call another service, it cannot write to your files and it cannot act outside the app. Its only tools are the seventeen investigations in the table above.
Does a language model decide anything?
No. Where one is configured it is handed the finished findings and asked only to phrase them. By that point there is nothing left to compute, so it cannot add a number to an analysis that did not already contain one.
With no model configured the analysis is the same findings in plainer prose, which is worse writing and exactly the same information. Where a language model is used.
What does an analysis cost me?
Whatever its plan says before it starts. Many questions cost nothing, because reading the record, the ledger and the graph uses no runs. A question that needs a sweep costs a sweep. Everything is counted against the same monthly limits as the rest of the app. What each plan allows.
How long does it take?
It depends on how much of the plan is simulation. A standard run is 200 replications of the scenario plus 200 of the baseline, which is 400 simulations, and takes about a tenth of a second on the machine it was built on for a twelve month horizon with about forty agents. Reading steps are faster than that. The time budget exists for the plans that turn out to need several sweeps.
Can I change the plan?
Yes, before it runs. Remove a step, add one, or reject the whole plan because the restatement above it shows the question was read wrongly.
What happens if it reads my question wrongly?
You see the restatement first, so you find out immediately. If a name in your question matches nothing in the graph it says so rather than picking the closest spelling, because quietly answering about the wrong customer is the worst thing it could do.
Does it work on a thin twin?
It runs, and it will spend the opening of every answer telling you that the conclusion is resting on defaults. That is useful the first time and tiresome the fourth, which is the intended effect. What to upload.
How is this different from the brief?
A brief is what comes out of one run. An analysis is what comes out of several investigations of different kinds, with the conflicts between them named. The analysis cites the runs it commissioned, and each of those has its own brief underneath it. The honest limits of all of it.
Give it the question you have been arguing about
Build a twin, ask the thing that has been going round a management meeting for a month, and read the plan before you let it run. If the plan is wrong, that is worth finding out in ten seconds.