Working paper · Reasoning in agentic systems

Beyond codifying explicit steps: teaching AI the implicit decisions — tradeoffs, the weight of each option, constraints

Most codification captures what an expert can write down — steps, rules, checklists. But transcripts and memos record what was done and what was said about it, never the tradeoff that actually decided it. This lays out an approach for recovering that implicit reasoning — the criteria, their conditional weights, and the constraints — so an agent can reason in new situations instead of imitating old ones.

Claim 1 A behavior twin copies the policy. It reproduces what was done in situations that look familiar. It has nothing to say when the situation is new.
Claim 2 A reasoning twin recovers the reward. Inverse RL's move, applied to knowledge engineering: infer the criteria and their conditional weights, then re-derive the decision anywhere.
Claim 3 The twin is a state, not a snapshot. Each round of codification is a noisy observation of a hidden decision function that drifts. Shrink toward what you knew when the new evidence is noisy; adapt when it is precise.
Claim 4 Determinism is measured, not designed. Which parts become hard rules and which stay judgment falls out of the fitted, filtered model — it is not a separate design choice.
01 · Why this matters

Agents are being built from the wrong artifact

Most of an expert's reasoning is strained out before an agent ever sees it An illustration. On the left, the expert's head holds five things: two that are written down — the criteria they could name and the choice they made — and three that are not: how much each thing mattered, when that changes, and what is off-limits. In the middle, a funnel labelled the written record. Only the two written items pass through it; the other three tumble out at the sides. On the right, the agent receives only those two. Below, the two outcomes: in a situation the record covered, the agent repeats what was done before; in a situation it never covered, it freezes, misfires, or makes something up. IN THE EXPERT'S HEAD the criteria I could name the choice I made how much each one mattered when that quietly changes what is simply off-limits THE WRITTEN RECORD three of the five never make it in WHAT THE AGENT GETS the criteria I could name the choice I made A SITUATION THE RECORD COVERED ✓ It repeats what was done before. A SITUATION IT NEVER COVERED ✕ It freezes, misfires, or makes something up.
The trail records what was done and a partial story about why. The judgment underneath it was never written down.

The dominant way to make an agent act like a specific expert is to feed it that expert's trail: chat transcripts, meeting recordings, written memos, a curated memory of past cases. A language model summarizes the trail into rules, procedures, and examples. The agent then follows them.

This works until the situation is one the trail never covered. Then the agent freezes, applies the nearest rule out of scope, or invents one that sounds right. More data will not fix it. The trail records the outputs of reasoning and a partial narrative of it. The reasoning itself — a judgment over competing criteria under constraints — was never written down, because the expert never had to write it down, and often could not.

Behavior twin looks up the nearest past case; reasoning twin scores the new case against recovered criteria BEHAVIOR TWIN · COPIES THE POLICY New situation Deal D Nearest past case ≈ Deal B Copy action invest ✗ Wrong call. The ownership floor never appeared in any past case's narrative, so there is nothing to match on. REASONING TWIN · RECOVERS THE REWARD New situation Deal D Score criteria g_i(s, a) Weigh, constrain w(s) · h(s) ✓ Pass — and it can say why. Ownership 9% violates the recovered constraint h_own : ownership ≥ 15% ∧ lead
The same new deal, two kinds of twin. Matching on past cases has nothing to say about a criterion that was never contested before. Scoring against recovered criteria does.

Three findings from outside AI say this is not a fringe case.

PolanyiExperts know more than they can tell.
Argyris & SchönWhat practitioners say governs their decisions and what actually governs them diverge — reliably.
Nisbett & WilsonPeople confidently explain choices whose real causes they had no access to.

A stated rationale is evidence, not ground truth.

The rest of this paper works through a single venture-capital decision to show where the hidden reasoning lives, then lays out a process — with a statistical model at its center and a language model doing the semantic lifting — for recovering it.

02 · A worked example

A portfolio investment decision, used to show what gets lost

Everything that follows is built on one worked example, because the argument only becomes concrete when you can see the decision being made. A general partner at a $200M early-stage fund has room for one more Series A lead this quarter. Three deals are on the table, the partner picks one, writes the memo, and the committee approves. The record that survives looks complete — and it leaves out the part that decided it. The example is fictional but representative; it carries the rest of the article.

Deal AVertical SaaS · logistics
ARR
$4.0M
Growth (YoY)
2.5×
Post-money
$60M
Ownership at $8M
13%
Competing term sheets
3
Founder history
First-time
Passed
Deal BAI infrastructure
ARR
Pre-revenue
Growth (YoY)
Post-money
$25M
Ownership at $5M
20%
Competing term sheets
0
Founder history
Ex-CTO, prior portfolio exit
Invested — lead
Deal CFintech marketplace
ARR
$1.5M
Growth (YoY)
4.0×
Post-money
$30M
Ownership at $6M
20%
Competing term sheets
0
Founder history
Second-time, small exit
Passed

What the record shows

This is the material a codification pipeline would ingest: the investment memo and the partner meeting transcript. Both are honest. Both are incomplete.

Investment memo · excerpt
We recommend leading Deal B's Series A. The founder's prior execution as CTO of a portfolio company gives us unusual conviction in the team. The market timing for inference infrastructure is favorable and the entry price is attractive relative to comparable rounds. Deal A is a strong company but the round is competitive and priced accordingly. Deal C shows excellent growth but carries regulatory exposure we are not positioned to underwrite.
Partner meeting · transcript excerpt
GP: Honestly A is the "safest" business of the three. But we'd be one of four names on the cap table at 13%. I don't love that.
Partner 2: C's growth is real though.
GP: It is. I just… after last time, I'm not doing another money-movement business without the license in hand. Not this fund.
Partner 2: And B?
GP: I've worked with him. I know how he ships. And frankly we need an AI infra name in this vintage before we're out raising Fund IV.

What actually decided it

Read the transcript again. Four things are doing the real work, and none of them appear in the memo as criteria. Two are barely spoken at all.

What gets written down versus what actually decided the deal Above a waterline labelled "what gets written down" sit the four stated criteria: growth, price, team quality and market timing — fully documented but only half decisive. Below the waterline sit the four things that actually decided the deal: a constraint that ownership must be at least fifteen percent with the fund leading; a constraint scoped to this fund only, against unlicensed money movement; a situational weight where fund narrative matters most in year four; and a relational weight where a known founder substitutes for technical diligence. Each is annotated with the reason the record misses it. STATED · FULLY DOCUMENTED · ONLY HALF DECISIVE Growth in the memo Price in the memo Team quality in the memo Market timing in the memo WATERLINE · WHAT GETS WRITTEN DOWN BELOW · WHAT ACTUALLY DECIDED IT CONSTRAINT Ownership ≥ 15% and we must lead Spoken only when it is threatened. Never once violated. CONSTRAINT · SCOPED No unlicensed money movement Did not exist before the year-2 loss. A scar, not analysis. WEIGHT · SITUATIONAL Fund narrative, huge in year 4 The condition is ambient, so unsaid. ≈ 0 in year 1. WEIGHT · RELATIONAL Known founder ⇒ skip tech diligence Expressed as a feeling, not a rule. "I know how he ships."
Everything above the line is written down and only half-decisive. Everything below it decided the deal.
Constraint
Ownership floor — roughly 15%, and the fund must lead."One of four names at 13% — I don't love that." Never written as a rule. Never violated in six years of this partner's deals. A near-hard constraint that reads in the transcript as a mild preference.
Constraint · conditional
No unlicensed money-movement risk — in this fund."After last time… not this fund." A constraint that did not exist two years ago, created by a prior loss, and scoped to the current vehicle. The memo calls it "regulatory exposure we are not positioned to underwrite," which sounds like analysis. It is a scar.
Weight · situational
Fund narrative weight — high because it is year 4 of a 5-year deployment period."We need an AI infra name in this vintage before we're out raising Fund IV." This criterion has near-zero weight in year 1 of a fund and dominant weight in year 4. The memo folds it into "market timing."
Weight · relational
Diligence confidence — a known founder collapses perceived execution risk."I know how he ships." The memo says "unusual conviction in the team," which is accurate but not operational: it does not say that prior working relationship substitutes for the two-week technical diligence the fund would otherwise require.
What actually drove the decisionIn the memoIn the transcriptOperating
Ownership floor ≥ 15%, must lead
No unlicensed money movement (this fund)
Fund-narrative weight, high in year 4
Known founder substitutes for diligence
Growth, price, team quality (the stated criteria)
absent veiled — present as a feeling or a euphemism stated actually decisive
The stated criteria are fully documented and only half-decisive. The decisive criteria are, at best, veiled. A pipeline that reads the left two columns codifies the wrong row.
The test that breaks the copy

Next quarter, Deal D arrives: AI infrastructure, founder is a known ex-CTO from the network, strong market narrative — and a competitive round at $80M post, where the fund could get 9% as a follower.

A behavior twin trained on the memo and transcript has learned "AI infra + known founder + market timing → invest." It recommends Deal D. The partner would pass without a second thought: the ownership floor is a constraint, and it is not in the artifact because it was never at risk in Deal B and therefore never discussed as a criterion.

Deal D matches the learned pattern on every feature except one Deal D arrives next quarter. It matches Deal B on sector, founder and narrative — AI infrastructure, a known ex-CTO, strong market timing — all marked as matching the learned pattern. One feature differs: the fund could take only nine percent as a follower, a configuration that never appears anywhere in the record. NEXT QUARTER · DEAL D AI infrastructure ✓ matches Deal B Known ex-CTO ✓ matches Deal B Strong narrative ✓ matches Deal B 9% · as a follower ✕ never seen before Three features say "this is Deal B again." One feature says something the record has no word for. Only one of the two twins is looking at the fourth box.
Try it Move Deal D’s ownership stake and watch where the two twins disagree

Everything else about Deal D is held fixed: AI infrastructure, known ex-CTO founder, strong narrative — exactly the pattern the record rewards. Only the stake changes.

9% · follower

Below the recovered floor the fund would hold a passive minority position — the one outcome the partner's six-year record never contains.

Behavior twin · copies the policy Invest The pattern matches Deal B on every feature it ever learned. Ownership was never a feature, so the stake changes nothing. ✗ Wrong call
Reasoning twin · recovers the reward Pass Constraint h_own violated: 9% is below the 15% floor and the fund would not lead.

The behavior twin's answer never moves, because it is matching on the past. The reasoning twin's answer moves at exactly one place — the boundary the record never states. That boundary is the whole subject of this paper.

The same deal, one variable, two twins. The constraint is invisible in the record and decisive in practice.
03 · The codification gap

Why "what" and "why" are not enough

A decision has three layers. Today's pipelines read the top two and produce an artifact that looks like the third.

Three layers of a decision and which ones the record captures L1 · ACTION Invested in B; passed on A and C. Wire sent. Board seat taken. L2 · NARRATIVE "Team conviction, market timing, attractive price, regulatory exposure." L3 · DECISION FUNCTION Ownership ≥ 15% (constraint) · no unlicensed money movement (constraint, this fund) w(narrative | fund year 4) ≫ w(narrative | year 1) · known founder → skip tech diligence IN THE RECORD Fully — logs, wires, cap table IN THE RECORD Partially — and post-hoc IN THE RECORD No. Must be inferred. This is what the agent needs.
Codifying from transcripts reads L1 and L2. The agent has to act from L3. The distance between them is the codification gap.

The memo is a projection of L3 onto a document genre. It is written to persuade a committee, so it foregrounds criteria that sound like analysis (market timing) and suppresses ones that sound like bias (I know this founder) or institutional need (we need a logo for the next raise). This is not dishonesty. It is what memos are for.

The transcript is closer, but still only surfaces criteria that were contested in the room. The ownership floor was mentioned because Deal A threatened it. Had all three deals offered 20%, it would never have come up — and the codified artifact would have no idea it existed.

Four kinds of thing are systematically missing, and each is missing for a different reason:

Hidden elementDeal B exampleWhy the record misses it
Hard constraintsOwnership ≥ 15%; lead positionConstraints are only spoken when threatened. Most decisions never threaten them.
Conditional weightsFund-narrative weight depends on fund yearThe condition (year 4) is ambient context the speaker doesn't restate. The record has the weight at one point, never the function.
Tradeoff orderingNarrative > price > growth, this quarterOrderings are revealed by choices, not stated. One decision reveals one comparison.
SubstitutionsKnown founder substitutes for technical diligenceExpressed as a feeling ("I know how he ships"), not as the procedural exception it actually is.
Narrative weight as a step function of fund year; the memo captured one point on it R1 · YEAR ≤ 2 R2 · YEAR 3 R3 · YEAR ≥ 4 Y1 Y2 Y3 Y4 Y5 FUND YEAR (SITUATION) 0 0.5 1 w_narrative(s) What the agent needs: the whole function What the memo captured: one point, with the condition left implicit
"Conditional preference": the weight is a function of the situation, piecewise constant over regions. A record of one decision fixes one point on that function. The regions R1–R3 are themselves something to discover — the memo never names "fund year" as a variable.
Try it Keep every feature of the deal fixed and change only the fund year

Deal B, unchanged: pre-revenue AI infrastructure, 20% and lead, a founder the partner has shipped with before. The only thing that moves is where the fund is in its life.

Year 4 · region R3 · raising Fund IV soon
Fitted weights in this region
Growth
0.44
Price / ownership
0.52
Team quality
0.68
Founder relationship
0.62
Market narrative
0.91
Resulting conviction on Deal B
0.77 · threshold to lead 0.70
Same partner · same deal Invest — lead In year 4 the fund needs an AI infrastructure name in the vintage before it goes out raising Fund IV. Narrative weight dominates and carries the deal over the line.

The criteria never changed. The weights did — and the variable that moved them, fund year, appears nowhere in the memo. A behavior twin reading these decisions side by side sees an inconsistent partner. There is no inconsistency. There is a missing column.

The step function above, made draggable. Regions R1 (years 1–2), R2 (year 3), and R3 (years 4–5) are the ones the fit recovers in section 04; the weights and threshold are illustrative.
Copying the route versus carrying the map An illustration in two panels. On the left, copying the route: a worn path leads from the record to a flag marked Deal B and gets there. Underneath, the same path stops short of a second flag marked Deal D, which sits off to the side — the route does not go there. On the right, carrying the map: a map card marked criteria, weights and limits has arrows running to both flags, Deal B and Deal D, and reaches both, because the terrain is known rather than a single memorised route. COPIES THE ROUTE Deal B ✓ gets there Deal D ? ✕ the route stops short It learned the path, never the terrain. CARRIES THE MAP CRITERIA · WEIGHTS · LIMITS ✓ B ✓ D It learned the terrain, so it can work out any route.
A twin that copies behavior is apprenticeship without the reward. A reasoning twin recovers the reward and derives the behavior.

This is the case for a different target. Inverse reinforcement learning made the same move two decades ago: don't imitate the demonstrator's policy, recover the reward function that makes the policy optimal, then re-derive the policy anywhere. A digital twin that copies behavior is apprenticeship without the reward. A reasoning twin recovers the reward — criteria, conditional weights, constraints — and derives the behavior. It transfers to Deal D. And it is arguable: a partner can look at "ownership floor 15%" and say "actually it's 12% for AI infra," which they cannot do with a policy.

04 · Improving the codification process

Recovering the decision function

Seven steps across three roles, where each role only does the part it is reliable at.

The process has three roles, and the design principle is that each does only what it is good at.

LLM · semanticsReads the record. Proposes the criteria, the alternatives, and the next question. Good at meaning, bad at weighing.
Model · weighingTakes the proposed criteria and the observed choices, estimates how much each mattered and when. Good at weighing, cannot invent a criterion.
Human · judgmentNever asked to state a weight. Only to judge a concrete case. Experts are reliable at the second and unreliable at the first.
The three roles in the loop, and what each is good at An illustration of three characters. The Reader, a language model, drawn as an open book: it reads the record and suggests what might have mattered — good at meaning, poor at weighing. The Scales, a small statistical model, drawn as a balance: it works out how much each one actually counted, and when that changed — good at weighing, but it cannot invent a criterion. The Expert, the person being codified, drawn as a head with a speech bubble: they judge one real case and are never asked to state a rule — reliable on cases, unreliable on rules. A sweeping arrow beneath them shows that the agent runs on the result, and every override starts the round again. The Reader A LANGUAGE MODEL Reads the record. Suggests what might have mattered. MEANING ✓ · WEIGHING ✕ The Scales A SMALL STATISTICAL MODEL Works out how much each one really counted, and when. WEIGHING ✓ · INVENTING ✕ The Expert THE PERSON BEING CODIFIED Judges one real case. Never asked to state a rule. CASES ✓ · RULES ✕ THE AGENT RUNS ON IT — EVERY OVERRIDE STARTS THE ROUND AGAIN
The language model names the criteria, the statistical model weighs them, and the expert judges one real case. Nobody is asked to do the thing they are unreliable at.
The seven-step codification loop 1 · LLM Build decision instances situation, choice, alternatives 2 · LLM Propose criteria over-propose; let the fit prune 3 · MODEL Fit conditional weights sparse, region-indexed 4 · MODEL + LLM Find conflicts → propose hidden context 5 · HUMAN Answer contrastive query "would you still, if…?" 6 · MODEL Place on the spectrum rule · judgment · constraint 7 · AGENT Deploy and monitor escalations, overrides NEW INSTANCES → REFIT ANSWER → REFIT
The loop never terminates. Every escalation and override at runtime is a new instance; the model is refit; the artifact is re-issued.
1
LLM · Build decision instances

Turn the record into a list of decisions: situation, choice, and — critically — the alternatives that were rejected. The record shows what was done, never what was passed on. The LLM reconstructs the alternatives; where the record is silent, it proposes them for a human to confirm.

Deal B: situation = {fund year 4, three deals, one slot}; chosen = B; alternatives = {A, C, pass on all}. Plus the prior six years of this partner's deals, each reconstructed the same way.

2
LLM · Propose criteria and context features

Propose what the partner might be weighing — generously. Over-proposing is free; the fit in step 3 zeroes out what does not matter. Also propose situation features that might change the weights: fund year, sector heat, a personal relationship with the founder.

Proposed criteria: growth, price, ownership, team quality, founder relationship, market narrative, regulatory exposure, competitiveness of round. Proposed context: fund year, dry powder remaining, recent portfolio loss.

3
Statistical model · Fit conditional weights

Estimate how strongly each criterion pulled the choice, and whether that strength depends on the situation. The model is deliberately simple and interpretable — an expert produces dozens of decisions, not millions. It outputs a small table: this criterion, this weight, under these conditions.

Output: ownership has a sharp cliff near 15% (looks like a constraint, not a preference). Market-narrative weight is near zero in fund years 1–2, dominant in years 4–5. Regulatory exposure flips from mild negative to near-veto after the loss in year 2.

4
Model + LLM · Find conflicts, propose hidden context

Look for pairs of decisions that look the same on the current features but went opposite ways. Instead of averaging them away, ask the LLM what could distinguish the two cases, add its proposal as a feature, and refit. A conflict is a missing variable until proven otherwise.

Two AI deals in year 1 with strong founders — both passed. Deal B in year 4 — invested. The features cannot separate them. LLM proposes "years remaining in deployment period." Refit: separation is clean.

Three deals that look identical until you add the one thing the record leaves out An illustration in two rows. In the top row, three cards for AI infrastructure deals are identical — each has a strong founder and a hot sector — yet two are stamped pass and one is stamped invest. On the features available, the model cannot tell them apart. In the bottom row, the same three cards each carry a calendar tab: year one, year two and year four. Now they sort cleanly: two early passes and one late investment. ON THE FEATURES WE HAD AI infrastructure strong founder ✓ hot sector ✓ PASS AI infrastructure strong founder ✓ hot sector ✓ PASS AI infrastructure strong founder ✓ hot sector ✓ INVEST Identical on paper. Nothing here separates them. ADD THE ONE THING THE RECORD LEAVES OUT Year 1 AI infrastructure five years of runway PASS Year 2 AI infrastructure four years of runway PASS Year 4 AI infrastructure raising the next fund INVEST Now they sort. Two early passes, one late bet.
Deals that contradict each other are not noise. They are the strongest available evidence that a variable is missing — the language model's job is to name it, the fit's job is to test it.
Three AI deals overlap on two features; adding fund year separates the passes from the investment BEFORE · CURRENT FEATURES Same features, opposite choices — the fit cannot separate them FOUNDER STRENGTH → NARRATIVE FIT ↑ 2 passed · 1 invested AFTER · ADD "FUND YEAR" (LLM-PROPOSED) Clean separation — the conflict was a missing variable Y1Y2Y3Y4Y5 FUND YEAR → REGION SPLIT passed · w_narrative ≈ 0 invested · w_narrative ≈ 0.9
Two deals that scored the same on every recorded feature and got opposite decisions. The residual cluster is not noise to average over; it is the strongest available evidence that a variable is missing. The LLM's job is to name it; the fit's job is to test it.
5
Human · Answer one contrastive question

Pick the single question whose answer would most reduce uncertainty in the weights — usually a minimal variation of a real case, at a suspected boundary — and ask the expert to judge it. Never "what are your criteria?" Always "would you still, if this one thing were different?"

"You led Deal B at 20%. Same deal, same founder, but $50M post and you get 10% as a follower. Still in?" — "No." One answer converts a suspected constraint into a confirmed one. "What if 14%?" — "…probably. If we lead." Threshold found.

Contrastive queries on ownership locate the constraint threshold by bisection CONTRASTIVE QUERIES ON ONE FEATURE · OWNERSHIP AT ENTRY τ ≈ 14–15% 5% 10% 15% 20% 25% Deal B as done · invested Q1 · "10%, follower?" — No Q3 · "12%?" — No ? Q2 · "14%, we lead?" — "…probably"
Three variants of one real deal, each put to the partner as a separate call. Three judgments on concrete variants of a real deal — never "what is your threshold?" — pin a constraint the partner never stated to a one-point band. Each answer is one row in the fit, with very low noise.
6
Statistical model · Place on the determinism spectrum

For each decision region, measure how predictable the choice is once the criteria are known. Highly predictable and stable → codify as a rule. Unpredictable even after context discovery → codify as guided judgment with the weights and contrasting examples attached. Irreversible downside → constraint, regardless. Section 06 covers this; section 05 makes it track the evidence over time.

7
Agent · Deploy, monitor, loop

The agent carries the criteria explicitly and scores new situations against them. Every time it escalates (situation outside the evidence) or is overridden (human disagrees), that is a new instance. Return to step 3.

Deal D arrives. Ownership at 9% violates the constraint. The agent passes and can say exactly why. No memo ever said "ownership floor."

Fitted weights · fund year 1
Growth
0.78
Price / ownership
0.64
Team quality
0.70
Founder relationship
0.30
Market narrative
0.08
Fitted weights · fund year 4
Growth
0.44
Price / ownership
0.52
Team quality
0.68
Founder relationship
0.62
Market narrative
0.91
The dial from section 03, as the fit actually emits it: two regions, one table. The criteria did not change; the weights did. A behavior twin sees two inconsistent partners. A reasoning twin sees one partner and one variable — fund year — that was never in the memo. Ownership floor and regulatory exposure are constraints, not weights, and are not shown.

4.1 The object being recovered

A decision instance is a situation s, a chosen action a, and the set of alternatives A(s) that were available. Criteria are functions g_i(s, a) ∈ ℝ scoring how well action a serves criterion i in situation s. Hard constraints are indicator functions h_j(s, a) ∈ {0, 1}. The decision function is modeled as a conditional choice model:

P(a ≻ a' | s) = σ( Σi wi(s) · [ gi(s, a) − gi(s, a') ] )
subject to hj(s, a) = 1 for all j

where σ(x) = 1 / (1 + e−x) and wi(s) = wi(k) for s ∈ Rk

This is a Bradley–Terry / Luce choice model — the same form as the reward model in RLHF — with two deliberate changes. First, weights are conditional: w(s) is piecewise constant over a small set of regions R_k defined by scope conditions. The regions are the codified context; the weights are the codified tradeoff. Second, the probability is meaningful: P ≈ 1 means the tradeoff is settled in that region; P ≈ 0.5 means genuine indifference or a variable not yet found. Lexicographic priority is the limit w_i / w_j → ∞. A hard constraint is an infinite penalty, and is represented separately rather than as a large weight so that it is never traded.

ssituation — the VC case: {fund year, deals on the table, dry powder, recent loss, …} a, A(s)the choice and the alternatives — {invest A, invest B, invest C, pass} g_i(s,a)criterion score — growth multiple, ownership %, team score, narrative fit, regulatory exposure R_kregions — e.g. {fund year ≤ 2}, {fund year ≥ 4}, {post-loss} w_i^(k)weight of criterion i in region k — the thing to recover h_jconstraints — ownership ≥ 15% ∧ lead; no unlicensed money movement (post-loss region only)

4.2 Why this and not policy imitation

Behavioral cloning fits π(a | s) directly. It has no notion of why and no way to score an action it has not seen taken in a situation like s. Inverse RL fits the reward R such that the observed π is (near-)optimal, and derives π* = argmax R anywhere. The model above is a linear-in-criteria, region-conditional reward with the argmax softened into a choice probability. The softening matters: it lets the fitted P carry information about how settled each tradeoff is, which section 06 uses directly.

The choice of a low-capacity, interpretable model is not a limitation to apologize for. An expert produces tens to low hundreds of instances. Anything richer than a sparse logistic model over LLM-proposed features will overfit, and — more importantly — cannot be argued with by the expert whose reasoning it claims to represent.

4.3 Instance and criteria construction

Instances. From transcripts, memos, and logs, extract (s, a, A(s)). The alternatives are load-bearing: the model learns from differences g(s,a) − g(s,a'), so a missing or invented alternative directly corrupts the fitted reward. Where the record does not state alternatives, the LLM proposes them and they are queued for human confirmation in 4.5 before they carry weight.

Criteria. The LLM proposes candidate g_i from narrative (L2) and from action patterns (L1) independently, and candidate region features from ambient context. Over-propose. The L1 penalty in 4.4 prunes. Criteria that appear in both L1- and L2-derived sets start with higher prior confidence; criteria in only one set are flagged as "stated but not revealed" or "revealed but not stated" — the latter are the interesting ones.

4.4 Fitting

For a fixed region assignment, Bradley–Terry reduces to logistic regression on feature differences. For each instance and each rejected alternative a' ∈ A(s) \ {a}, construct a row Δ = g(s, a) − g(s, a') with label 1. Fit:

minimizew Σ(s,a,a') −log σ( w(k(s)) · Δ ) + λ ‖w‖1
k(s) = region index of s; λ chosen by leave-one-decision-out cross-validation

Regions are found by fitting a shallow decision tree (depth ≤ 2) over the candidate context features with the residuals of a single-region fit as the target; each leaf becomes an R_k. Constrain regions to be few and nameable — a region the expert cannot recognize as a real situation is a fitting artifact.

Constraints are detected rather than fit. A criterion whose fitted weight is very large and whose observed instances never fall below a threshold τ on the chosen action — while alternatives below τ were rejected — is promoted to a candidate constraint h: g_i(s,a) ≥ τ and confirmed by elicitation (4.6). In the VC case, ownership behaves this way: no chosen deal below 15%, several rejected deals below it, and a fitted weight that the L1 penalty keeps trying to shrink but cannot.

4.5 Conflict detection as latent-variable discovery

After fitting, compute the per-instance log-likelihood. Instances with low likelihood are those the model "disagrees with." Cluster them by φ(s). A cluster of poorly-explained instances whose situations are near-identical on current features but whose choices diverge is a conflict, and there are only three explanations:

  • A missing region feature. Ask the LLM: given these two groups of situations, what plausible variable separates them? Add it to the candidate features, refit, and keep it if held-out likelihood improves. This is decision-tree splitting on residuals with an LLM as the feature generator.
  • Genuine inconsistency. No proposed feature separates them and the expert, shown the pair, confirms they would decide differently today. Record the more recent decision as authoritative (supersede) and flag the drift.
  • A values disagreement (multi-expert case). Two experts' instances disagree uniformly across all regions rather than in one. No feature will fix this; it is escalated as a standing policy question, not resolved by the model.

Formally, for a conflict cluster C, the LLM proposes features z_1 … z_m; each is scored by the information gain on the choice labels within C; the top feature is added if its held-out improvement exceeds a threshold. In the VC case, the year-1 AI passes and the year-4 AI investment form exactly such a cluster, and "years remaining in deployment period" has the highest information gain of the proposals.

4.6 Active elicitation

The expert's time is the scarce resource, so each question must be chosen to maximize expected information gain over the posterior on w. With a Laplace approximation to the posterior, this is standard Bayesian active learning for logistic regression: choose the query pair (s, a, a') that maximizes

EIG(s, a, a') = H[ P(a ≻ a' | s) ] − Ew ~ posterior H[ P(a ≻ a' | s, w) ]

In practice the highest-EIG queries are minimal variations of real cases near a suspected boundary: take an actual instance, perturb one feature toward the region where the model is uncertain, and ask "still?" The expert answers a concrete pairwise judgment — never a weight — and the answer is a new row in the fit. Constraint candidates from 4.4 are confirmed the same way: perturb the suspected constraint below τ and ask; a flip confirms the constraint and a bisection locates τ.

Alternatives proposed by the LLM in 4.3 are confirmed here too: "Was passing on all three genuinely on the table?" A rejected alternative that was never real is removed before it distorts the fit.

4.7 What the fitted object looks like

ElementRegionValueProvenance
h_own: ownership ≥ 0.15 ∧ leadallconstraint (τ from bisection: 0.14–0.15)17 instances; 2 elicitation answers
h_reg: no unlicensed money movementpost-loss (year ≥ 3)constraint4 instances; 1 elicitation; transcript "not this fund"
w_narrativeyear ≤ 20.08 ± 0.119 instances
w_narrativeyear ≥ 40.91 ± 0.146 instances; 1 elicitation
w_founder_relyear ≥ 40.62 ± 0.206 instances — substitutes for diligence step
w_growthall0.78 / 0.44 by region23 instances

Illustrative values. The ± is the posterior standard deviation; wide intervals are where the next elicitation query should go. Every row traces to the instances and answers that produced it, so any row can be disputed by the expert and re-fit without it.

05 · The update machine

The decision function is a hidden state, and codification is a noisy reading of it

Weights drift. Each new reading is noisy. How much of it should you believe? Nobody decides — the evidence does.

Section 04 recovers the decision function from one batch of evidence. But the partner's weights drift — a fund ages, a loss leaves a scar, a market heats up — and each round of codification is itself noisy: a few new deals, a handful of answers. Two mistakes are available: overwrite what you knew with a noisy new fit, or ignore real change because it disagrees with the old artifact. A state-space filter is the principled middle.

Think of the partner's real decision function as a hidden state — the weights and thresholds that are actually in force this quarter. You never see it directly. What you see, each period, is a reading of it: the weights the fit in section 04 produces from that period's deals and elicitation answers, together with how uncertain that fit is (the ± column in the fitted table).

The update rule is the one every navigator and every Kalman filter uses. Carry forward what you believed last period, allowing for some drift. Take the new reading. Then move your belief toward the reading by an amount that depends on which is more trustworthy: if the reading is noisy and your prior is sharp, barely move — shrink toward the prior. If the prior is vague and the reading is precise, move most of the way — adapt to the observation. The amount you move is the gain, and it is computed, not chosen.

Who pulls harder: what we already believed, or what this quarter showed An illustration of a tug of war. On the left a figure pulls for what we already believed, a narrative weight of zero point zero eight drawn from twenty past deals. On the right a figure pulls for what this quarter showed, zero point nine one from three deals. The knot in the middle of the rope is the new belief. Firmer evidence pulls the knot further toward it, and nobody chooses how far it moves. WHO PULLS HARDER? 0.50 the new belief WHAT WE ALREADY BELIEVED · 20 DEALS 0.08 WHAT THIS QUARTER SHOWED · 3 DEALS 0.91 Firmer evidence pulls the knot further. Nobody chooses how far.
One cycle of the update machine. Section 04 produces the observation; this loop decides how much of it to believe. The observation's noise R comes free from the fit's own posterior — nothing new has to be estimated.

The four cases

The gain reduces to a two-by-two: how sure were we before, and how clean is the new reading?

New reading is noisy
(few deals, no elicitation — R large)
New reading is precise
(elicitation answers, many deals — R small)
Prior is sharp
(P small)
K ≈ 0 · Shrink toward priorKeep what you knew. Log the anomaly.One odd deal in a quiet quarter does not move a weight that 20 prior deals established. It is recorded as a possible early signal, nothing more.
K mid · Blend — and testMove partway. If the gap is large, suspect a regime change.Two sharp beliefs that disagree is the interesting case. A large, repeated surprise means the drift allowance was too small — the world changed. Inflate it and ask the LLM to name what changed.
Prior is vague
(P large)
K mid · Blend weaklyNobody knows much. Ask a question.This is where the next contrastive query should go: whichever weight has both a vague prior and a noisy reading has the highest expected information gain.
K ≈ 1 · Adapt to observationTake the reading. This is what elicitation is for.A precise answer on a weight you were unsure about should move the state almost all the way. The regulatory scar after the year-2 loss lands here: one "not this fund" answer, low noise, vague prior.
Try it Turn the two dials and watch how the prior variance and the reading’s noise set the new state

We believed the market-narrative weight was 0.08. This period's fit reads 0.91. How much of that should we believe? Nobody chooses. The two dials below decide it.

Sharp · P = 0.06
Precise · R = 0.06
Gain K = 0.50 · move halfway
Prior belief0.08
This period's reading0.91
Updated state x̂0.50

Blend. Two beliefs of comparable confidence disagree. Move partway — and if this gap keeps recurring, it is not noise, it is a regime change.

The same four cases, as one continuous dial. K = P / (P + R). Nobody decides how much to trust a new round of codification; the precision of the evidence decides it.
How much the twin's belief moves, year by year An illustration across five fund years. Orange dots scatter above and below a smooth navy line: the dots are what each year's deals suggested, and the line is what the twin actually believes. Early on, one odd year barely moves the line. Later the same surprise repeats year after year, and the line climbs to follow it. The point is that a single noisy year cannot overturn a well-established belief, while a surprise that keeps repeating can. ONE PARTNER, FIVE YEARS · HOW MUCH THE FUND'S STORY COUNTS Y1Y2Y3Y4Y5 one odd year — the belief barely moves the same surprise, again and again — so the belief follows it what the twin believes what that year's deals suggested
A single noisy year cannot overturn a well-established belief. A surprise that keeps repeating can — and that is the difference between noise and a real change.
Narrative weight over five fund years: noisy observations, filtered state, and a regime shift SURPRISE PERSISTS → DRIFT ALLOWANCE INFLATED Y1Y2Y3Y4Y5 00.51 noisy reading (one deal) → shrunk toward prior, K ≈ 0.1 precise reading (elicited) → state adapts, K ≈ 0.8 state uncertainty P filtered estimate x̂ (the twin) each period's codified reading y ± R
w_narrative for one partner across a fund's life, illustrative. Early readings are noisy and the state barely moves. In year 3 the readings start disagreeing with the prior, and keep disagreeing — that is a regime change, not noise, and the filter widens its drift allowance to follow. The year-4 elicitation answer is precise and the state snaps to it. The behavior twin would have flip-flopped on every reading; a frozen artifact would still say 0.08.

What this changes in the process

  • "Supersede" stops being a rule and becomes an update. Newer evidence overrides older evidence exactly in proportion to how precise it is. A single noisy quarter cannot erase a well-established weight; a single precise elicitation answer can.
  • Constraints move only on precise readings. A threshold like the 15% floor is part of the state, but with a very sharp prior. Instances alone will never shift it; only a low-noise elicitation answer will. That is the right behavior for something that functions as a rule.
  • Regime change gets detected, not discovered by accident. Persistent surprise is the temporal version of the conflict in step 4: a variable changed that the model does not track. The same LLM step names it — "post-loss", "year ≥ 4", "Fund IV raise underway".
  • Where to ask next is computed. The weight with the widest state uncertainty is the one whose next contrastive query pays most.
  • A partner's twin can borrow from the firm. With few deals, an individual's weights shrink toward the firm-wide prior; as their own evidence accumulates, they earn their own. Same gain, applied across people instead of across time.

5.1 State-space formulation

Let x_t be the hidden decision function in period t: the stacked region weights w^(k) and constraint thresholds τ. Let y_t be the estimate of those quantities produced by the section 04 fit on period-t instances and elicitation answers, and R_t its Laplace posterior covariance — the ± column in the fitted table. Then:

transition xt = xt−1 + ηt, ηt ~ N(0, Qt)
observation yt = xt + εt, εt ~ N(0, Rt)

predictt|t−1 = x̂t−1, Pt|t−1 = Pt−1 + Qt
innovation νt = yt − x̂t|t−1, St = Pt|t−1 + Rt
gain Kt = Pt|t−1 St−1
updatet = x̂t|t−1 + Kt νt, Pt = (I − Kt) Pt|t−1

The random-walk transition is deliberate: we have no model of how a partner's weights evolve, only that they do, slowly. Q_t is the drift allowance. The scalar case makes the shrinkage reading explicit: K = P/(P+R), so the update is x̂_t = (1−K)·prior + K·reading — a precision-weighted average, identical in form to James–Stein / empirical-Bayes shrinkage with the prior as the shrinkage target.

5.2 Where R and Q come from

Rt is not estimated separately. It is the posterior covariance of the period-t Bradley–Terry fit (4.4), which already reflects how many instances the period contained, how well-separated they were, and whether elicitation answers were present. A period with two deals and no questions produces a wide R_t and is shrunk away; a period with a bisection on the ownership floor produces a near-degenerate R_t on τ_own and is adopted.

Qt is the one genuinely free quantity, and it should be small by default and adaptive on evidence. Use the normalized innovation:

NISt = νtT St−1 νt ~ χ²d under "no structural change"

if NISt > χ²d, 0.99 for m consecutive periods (m = 2 is reasonable at quarterly cadence):
Qt ← α · Qt (α ≫ 1) on the components of νt that dominate NISt,
and hand those components to the LLM step of 4.5 to propose the regime variable.

A single large innovation is an anomaly and is absorbed by the gain — that is the point of shrinkage. A run of large innovations is a regime change, and the correct response is to stop trusting the prior on the affected components. Inflating Q does exactly that; it is the temporal analogue of adding a region feature. Once the LLM names the regime ("post-loss", "year ≥ 4"), it becomes a region in the section 04 model and Q returns to baseline — the state has been re-indexed, not merely widened.

5.3 Constraints in the state

Thresholds τ_j live in x_t with two modifications. Their transition noise is near zero — constraints do not drift, they get re-decided — and their observation noise from instances alone is set to infinity: no number of chosen deals above 15% and rejected deals below it can move τ_own on its own, because that pattern is equally consistent with any threshold in the gap. Only elicitation (a bisection answer, R → 0) updates a threshold, and when it does, K ≈ 1. The filter thus reproduces the rule-like semantics of a constraint without special-casing it.

5.4 Hierarchical shrinkage across experts

For a firm with several partners, initialize each partner's state at the firm-level mean μ with prior covariance Σ_between, estimated from the dispersion of partner-level fits. A new partner or a partner with few deals is then shrunk toward the firm; a partner with a long record earns their own weights. The between-partner dispersion is also diagnostic: a criterion whose weight varies widely across partners and does not separate by region is the multi-expert values conflict of 4.5, and is surfaced for the committee rather than averaged.

5.5 What the filter feeds into determinism

Section 06 places each region on the spectrum using entropy of the choice probability. With the filter in place, two more quantities are available per region and per weight: the state uncertainty P_t and the drift allowance Q_t. The placement rule becomes:

State conditionReadingPlacement
P small, Q small, H ≈ 0Stable, settled, predictableRule or procedure
P small, Q small, H highGenuinely a judgment; we know it wellGuided judgment with weights attached
P largeUnder-evidencedGuided judgment; queue elicitation query
Q inflated (regime flagged)Something changed and is unnamedEscalate; re-elicit; hold prior artifact as provisional
τ with R → 0 from elicitationConfirmed constraintConstraint

The consequence is that the codified artifact — the rules, the guidance, the constraints, the escalation list — is a function of the filtered state, and is regenerated each period. Placement drifts with the evidence; nobody re-decides it in a meeting.

06 · Deterministic vs. non-deterministic artifacts

Which decisions should become rules, and which should stay judgment

Rule, or judgment? With a fitted choice model this stops being a design meeting and becomes a measurement.

The determinism spectrum from hard constraint to human escalation DETERMINISTIC NON-DETERMINISTIC Constraint"never X" Procedure"do A, then B" Scored heuristic"score > θ → X" Guided judgmentweights + examples Open judgmentagent decides Escalatehuman decides H ≈ 0 · irreversible H ≈ 0 · stable H low · 1 feature H high · reducible H high · irreducible
H is the entropy of the fitted choice probability within a region. Position on the spectrum is determined by entropy, stability across refits, reversibility of the downside, and whether the situation is inside the evidence the model was fit on.

The placement rules

For each region R_k — each named situation the model found — ask five questions in order. The first that applies wins. Every input to these questions is a quantity the fitted, filtered model already produces.

QuestionIf yesWhy
Is the downside irreversible or high-blast-radius?Constraint on the downside, regardless of what else the region doesA wrong judgment call that can be undone is a learning event. One that cannot is a loss. Cost asymmetry beats predictability.
Is the choice near-deterministic (low entropy) and stable across refits?Procedure or scored heuristicThe expert always does this here. Judgment adds variance without adding value, and rules are cheap to run at volume.
Is the entropy high but the region reducible — a variable might still be found?Guided judgment: emit weights, the contrasting examples, and the open questionThe agent should decide, but with the tradeoff made explicit and the evidence attached, so its choice can be audited and its exceptions harvested.
Has the filter flagged a regime change on this region?Escalate and re-elicit; hold the prior artifact as provisionalPersistent surprise (section 05) means a variable changed that the model does not name yet. Acting on the old rule is acting on a stale state.
Is the situation outside the provenance set?Escalate — at runtime, dynamicallyAny region can be pushed to escalation for a specific case. A reasoning twin that knows what it does not know is worth more than one that guesses.

The VC decision, placed

ConstraintOwnership ≥ 15% and leadH ≈ 0 across 17 instances; downside (a passive minority position) is irreversible for the fund's model.
Constraint · scopedNo unlicensed money movementPost-loss region only. Confirmed by elicitation. Would have been a preference before year 2.
ProcedureDiligence checklistTwo-week technical diligence — with one codified exception: known founder from the network substitutes for it.
Guided judgmentTeam vs. price vs. growthHigh entropy, reducible. The agent scores with fitted weights for the current fund year and cites the closest prior deals.
EscalateNarrative bets in year 4+Partners disagree uniformly on how much fund story should weigh. Values conflict, not a missing variable. Investment committee decides.

Two failure modes bracket this. Over-codification produces an agent that applies a rule outside its provenance and cannot tell it has done so. Under-codification produces an agent that re-litigates settled questions inconsistently. The spectrum is the mechanism for placing each region between them deliberately — and, because placement is a function of the filtered state, re-placing it automatically each period as the evidence changes. Nobody re-decides "is this a rule?" in a meeting; the state does.

07 · Conclusion and what lies beyond

Codification is a living contract, not a document

Scorecard: what each twin does on four questions A four-row comparison. On Deal B, a deal already in the record, both twins invest. On Deal D, at nine percent as a follower, the behavior twin invests because the deal still looks like Deal B, while the reasoning twin passes because the fifteen percent ownership constraint is violated. Asked why, the behavior twin can only say the pattern matched; the reasoning twin cites a constraint recovered from seventeen instances and one elicited answer. Across fund years one and four, the behavior twin sees one inconsistent partner; the reasoning twin sees one partner and one variable, fund year, that was never written in any memo. Finally, the behavior twin cannot be argued with, while any row of the reasoning twin can be disputed by the expert and refit without it. BEHAVIOR TWIN · inherits a policy REASONING TWIN · inherits a reward DEAL B already in the record ✓ Invest — right answer ✓ Invest — right answer DEAL D 9%, as a follower ✕ Invest — it looks the same ✓ Pass — constraint violated ASKED WHY "the pattern matched" "ownership floor 15%" 17 instances · 1 elicited answer · Y4 YEAR 1 vs YEAR 4 one inconsistent partner one partner, one variable fund year — never in any memo CAN YOU ARGUE WITH IT? No. There is nothing to point at. Yes. Any row. Dispute it, refit.
An agent built from transcripts inherits a policy. An agent built from a recovered reward inherits a way of deciding.

Stop asking experts to write down their reasoning.

Ask them to judge cases the model picked. Let the model do the weighing. Let the language model do the reading. The reasoning was never in the transcript — it was in the choices, waiting to be asked the right question.

The argument in one line: an agent built from transcripts inherits a policy; an agent built from a recovered reward inherits a way of deciding. The first is a behavior twin and fails at Deal D. The second is a reasoning twin and passes on Deal D for the right reason.

The single model — a conditional choice function with explicit constraints — unifies four things that today are handled separately and by hand: tradeoff weights (fitted), context (regions), conflict (residuals that point at missing variables), and the rule-versus-judgment decision (entropy). Wrapping it in a state-space filter adds the fifth: time. Each round of codification becomes a noisy reading of a drifting hidden state; the gain decides how much to believe it; persistent surprise flags a regime change and sends the LLM to name it. Provenance comes free, which means every element of the codified artifact can be disputed by the expert it claims to represent — and every element carries a date and an uncertainty.

What to look at next

  • The agent's own reasoning has the same gap. A language model's stated rationale is not guaranteed to be the computation that produced its action. Its traces are L1 and L2 too. The implication is that the agent should carry the fitted w, R_k, and h explicitly in its context and score against them, rather than reconstruct a rationale afterward — and that the same recovery process should be run on the agent's decisions, periodically, to check that it is still the twin it was deployed as.
  • The drift model is the thinnest part. Section 05 treats the decision function as a random walk with an adaptive drift allowance. That is enough to shrink and to detect regime change, but it says nothing about why weights move. A structural transition model — fund age, portfolio state, recent outcomes as drivers of Q — would let the twin anticipate change instead of only tracking it. And with quarterly cadence and a handful of deals per period, the innovation test has few degrees of freedom; how early a regime change can be called with honest confidence is open.
  • Alternative generation is the weakest link. The fitted reward is only as good as the rejected alternatives it was fit against. Reconstructing what was not chosen, from a record that only documents what was, deserves its own method.
  • Multi-expert reconciliation is a governance problem wearing a modeling costume. When two partners' instances disagree uniformly, the model can locate the disagreement precisely but has no business resolving it. Surfacing it as a standing question for the committee may be the most valuable output of the whole process.
  • Goodhart. Once criteria are explicit and scored, behavior — human or agent — may optimize the score rather than the intent. The safeguard is the loop itself: overrides are evidence, and a rising override rate on a region that used to be stable is the signal that the artifact has drifted from the person.

The practical shift is small in mechanics and large in posture. Stop asking experts to write down their reasoning. Ask them to make judgments on cases the model chose, let the model do the weighing, and let the language model do the reading. The reasoning was never in the transcript. It was in the choices, waiting to be asked the right question.