CaseAdvancedShipping & Model Lifecycle / Model migration and version changes for users / #12

How would you migrate when the new model has a different context window?

The direct answer
Restructure Casenote's input pipeline so every document too long for the new, smaller window gets read in overlapping chunks and stitched back together with a coverage check, instead of feeding in the first 75 pages and quietly dropping the rest. Do this before the new model ever touches a document it can't read in one pass. Truncating and hoping nobody rereads the missing part costs nothing today and can cost a client the one clause that mattered, on a page nobody told them was never read.
How to handle it, in order
  1. Restructure the pipeline: chunk long documents, summarize each piece, and stitch the pieces back together with a coverage check.Why: this is the only fix that actually stops a document from going half-read without anyone knowing it.
  2. Add a hard length check where a document comes in, so anything over 75 pages is automatically routed into the chunking pipeline, never quietly passed through.Why: a rule a person has to remember gets skipped under deadline pressure. A rule the system enforces doesn't.
  3. Print the real coverage on every summary, not just the clause list.Why: it turns an invisible gap into something a paralegal can see and question before a contract gets signed.
  4. Set the resume-to-simple-truncation line at under 2 percent of real documents exceeding the window for 30 straight days, not a gut feeling.Why: a number you can check beats a sense that it's probably fine by now.
  5. Leave every document under 75 pages exactly as it is.Why: that's most of Casenote's volume, it already fits, and chunking it adds cost and time for nothing.
  6. Tell client firms which of their past documents were affected, before they find the gap themselves.Why: finding out later costs far more trust than saying it first.

How to answer this, stage by stage

This is a yes-or-no about how to handle the documents that don't fit the new window, not a rule for every model swap Casenote will ever run, so PICK carries the answer.

1
Scope it to one product, one migration, one number
Say it like this
"Let's make this real. Say Casenote reads a legal document, a contract, an NDA, a stack of discovery exhibits, and writes a summary flagging the clauses that matter. The team is moving to a new model. It's cheaper and faster, but its context window, how much of a document it can read in one pass, only covers about 75 pages instead of 300. I need to decide how we handle the documents that don't fit anymore."
Why this works
Gives the interviewer one real number to push on instead of a vague "the window changed."
2
Name the two options plainly, and how you'll get to one
Say it like this
"There are really only two moves. Feed in what fits and drop the rest, or rebuild the pipeline so the document gets read in pieces and stitched back together. I'll pick one, say who feels it if I'm wrong, name which kind of miss actually costs more, then say what would change my mind. That's the order I'll go in."
Why this works
Shows a method before the reasoning starts, so the interviewer knows what's coming.
3
State the position, with the number in it
Say it like this
"My pick: restructure the pipeline. Chunk any document longer than 75 pages, summarize each chunk, combine them, and track how much of the document actually got read. Don't just feed in the first 75 pages and ship it, because about 17 percent of our real documents are longer than that."
Why this works
PICK rewards a committed line with a real number attached, not a hedge.
4
Name who feels each kind of miss
Say it like this
"Here's the split. Ship simple truncation, and the people who feel it are the paralegals and lawyers reading a summary that looks complete but never saw the last third of a long contract. Restructure it properly, and the people who feel it are our own engineers, three extra weeks building the chunking and coverage logic, when swapping the model alone could have shipped in a day."
Why this works
Turns "the stakes are different" from a claim into something the interviewer can picture.
5
Name the cost asymmetry, plainly
Say it like this
"The engineering cost is cheap and it's loud. It's a number on a sprint board, about 30,000 dollars, three weeks, everyone can see it and argue about the timeline. The truncation risk is quiet and it's expensive. Nothing crashes. The summary still reads clean and confident. The real cost only shows up if someone happens to reread page 94 of a contract nobody planned on rereading. I'm building against the one nobody's watching."
Why this works
Names which miss is which instead of leaving "asymmetry" as an unexplained word.
6
Give the kill criteria, so it's not a stubborn pick
Say it like this
"I'd only go back to simple truncation if a 30-day audit showed under 2 percent of our real documents were longer than the window, and even then, only with a visible warning that makes a person confirm they've read the rest by hand. Right now we're at 17 percent. That's nowhere close."
Why this works
Shows the pick can move, and states exactly what would move it.
7
Close on the countable difference
Say it like this
"Here's the number that makes the case. Shipping the chunking pipeline with the model swap costs about 30,000 dollars and adds maybe two minutes to the slowest documents. Shipping truncation first and fixing it later cost us six weeks where about 4,590 documents went out only partly read, one of them a 130-page contract where a client almost lived with an indemnification clause nobody ever saw. Restructuring first isn't the cautious choice. It's the cheap one."
Why this works
Ends on the number the interviewer remembers, not a feeling about risk.

One more thing before the walkthrough ends: this isn't a rule that every shrinking context window needs a full rebuild. If a firm's documents were almost all short already, a simple truncation with a clear, hard-to-miss warning might be the right, cheaper call. Say which direction the miss compounds as usage grows, and you've shown judgment instead of reciting "always chunk long documents."

Let's learn

Every 120-page vendor contract, before Casenote, cost a mid-level associate about 5 hours: read every page, flag the indemnification clause, the termination terms, the liability cap, by hand.

Casenote reads the same kind of document and writes a summary flagging exactly those clauses. With the model the tool launched on, one pass covers up to about 300 pages, so nearly every contract, NDA, and discovery bundle gets read start to finish. The summary comes back in under a minute. Full review, summary plus a spot check of the flagged pages, drops to about 40 minutes.

Then the team moved to a new model. It's faster and cheaper per page, and better at spotting risky language in whatever it actually reads.

Knowledge spark: what is a context window? The amount of a document a model can hold in its head at once. Ask it about something past that limit, and it isn't that it gets the answer wrong. It never saw that part in the first place.

The new model's window only covers about 75 pages. To hit a hard cutover date, the pipeline shipped the same way it always had: feed in the document, read what fits, summarize it. Nobody added a step for what happens past page 75.

For most documents, nothing changed. About 83 percent of everything Casenote processes is under 75 pages anyway. But for the other 17 percent, roughly 153 documents a day, the model only ever sees the first 75 pages. It still returns a full, clean summary. A clause list. A risk-flag section. A confident paragraph at the top. That is exactly what the model is built to do with whatever sits inside its window. It has no way to say fifty-five more pages existed and it never saw them.

This is a specific kind of AI mistake: the model gives a fluent, confident, complete-looking answer built from only part of the input, and nothing in that answer flags what's missing. Call it silent truncation. The guardrail that actually catches it isn't a smarter model, it's a length check at the door: anything over 75 pages gets automatically routed into the chunking pipeline, and every summary prints exactly what share of the document it read.

Here is the turn. The missing pages were never really the mistake anyone would catch. The summary still looks complete. Nothing errors. The format doesn't change. A reviewer who has trusted a clean-looking Casenote summary for two years has no reason to start rereading the source document now, on this document, of all documents. The failure isn't in what the summary says. It's in what never made it into the summary, and nobody reading it knows that.

We didn't cut the contract short. We cut it short and left the summary sounding exactly as sure of itself.

Chunking costs something too, and it's worth saying plainly. A 130-page contract that took one model call and about 40 seconds under simple truncation takes four calls and close to three minutes under the chunked pipeline, because each piece gets summarized on its own before they're combined. That's the trade being made on purpose: slower and pricier on the long documents, in exchange for actually reading all of them.

At its worst: leave this unfixed across every client firm using Casenote, and about 38,250 documents a year go out with only part of them actually read, every one of them looking complete.

The choice I would take back We shipped the model swap on its cutover date without the chunking rebuild, because a context window looked like a speed setting on a spec sheet, not something that changes whether a document actually got read. That was the fast choice under a hard deadline. I would take it back and ship the chunking pipeline with the model, not after it.

What I would leave alone. Every document under 75 pages, which is most of what Casenote handles. They fit inside the new window the same as they fit the old one. Chunking them would only add cost and delay for no reason at all.

The lesson. A context window isn't a speed setting, it's a promise about how much of the document actually got read. Change it without checking your own document lengths first, and you're breaking that promise without telling anyone who was counting on it.

A hand-drawn comparison of two panels. Left, a plain document icon labeled truncate, ship same day, with a note reading who feels it, engineering, one afternoon. Right, a tipped scale icon in red-orange labeled silent gap, found months later, with a note reading who feels it, the client trusting the summary.
Same migration, two very different sizes of miss

The page nobody reread until it was almost too late

Read this version when you've got a few minutes. It lands harder, because nobody argues with a page someone actually reread by accident.

Lior Bassam has run the summarization product at Casenote for three years. He's shipped two model migrations before this one, both clean, no client so much as noticing a change in the summaries they got back.

The third migration looked the same going in. The new model tested better on every internal benchmark Casenote had: sharper clause detection, better at telling a real indemnification risk from routine boilerplate. The only catch was the context window, a hard ceiling around 75 pages instead of 300. Lior's team ran the numbers, figured most documents would never notice, and hit the cutover date on schedule.

For six weeks, the weekly migration health report told Lior exactly what he needed to hear. Documents processed, on target. Error rate, unchanged. Client complaints, zero. He read that top line every Monday morning and moved on to the next fire.

He stopped opening the full report somewhere around week three. It had said the same thing for three weeks running, and four other launches that quarter were competing for his attention.

Then, on a Tuesday in the sixth week, Nkemdirim Kanu, a senior paralegal at Ansdell & Pell, one of Casenote's oldest client firms, was pulling an old vendor agreement for an unrelated dispute. Nothing was wrong with it, as far as she knew. She just happened to be rereading it, page by page, for a completely different reason.

On page 94 of a 130-page vendor services agreement worth about 2.4 million dollars over its term, she found an indemnification clause with no dollar cap on it. Casenote's summary, written six weeks earlier, had said plainly: no indemnification concerns identified.

She wasn't hunting for a bug. She emailed Lior directly. "Your summary said this contract was clean on indemnification. It isn't. Can you check what happened here?"

That was the whole trigger. One email, about one contract, from someone who wasn't even looking for a problem.

Here's what Lior found. The vendor agreement ran 130 pages. Casenote's new model only ever read the first 75. The other 55 pages, including the clause Nkemdirim found, were never inside the model's window at all. It didn't skip the clause. It never had the chance to see it.

Lior pulled the real numbers that afternoon. Across every client firm, about 17 percent of documents were longer than 75 pages. Over the six weeks since cutover, that worked out to roughly 4,590 documents that had gone out with a summary covering only part of what was actually there.

We didn't lose 55 pages of a contract. We lost the reason anyone would have thought to check for them.

I want to say the mistake was picking a model with a smaller window. It wasn't. The new model was genuinely better at the part it could see. The real mistake was treating window size like a performance number instead of a coverage promise, the same way you'd treat a faster processor, when it was actually a decision about how much of a client's document Casenote would ever read.

So here is the decision I would take back.

Months earlier, at the migration kickoff, an engineer had actually flagged the window difference and asked whether long documents needed a separate plan. The honest answer at the time was that the cutover date was fixed by the old model's own vendor retiring it, and there wasn't time to build chunking before then. The team agreed to ship the swap first and revisit long documents in a follow-up sprint. Nobody put a date on that sprint. The health report looked fine, so nobody chased it.

I would take that back. I'd build the chunking pipeline, the piece-by-piece read with a coverage check, before the cutover, not after it, even if that meant the migration itself slipped by three weeks.

And the part I'd tell myself, if I could go back to that kickoff meeting: we changed how much of every client's document actually got read, and we let a dashboard that only counted "processed successfully" stand in for actually checking that.

PICK, run all the way through the numbers

This is a yes-or-no about how to handle the documents that don't fit the new window, not a rule for every model swap Casenote will ever run, so PICK carries the weight here.

P, position. When the new model's context window is smaller than the old one, restructure the pipeline: chunk the document into overlapping pieces so nothing gets cut off mid-clause, summarize each piece, stitch them back together, and track how much of the document actually got read. We considered one alternative first: keep the old, larger-window model running just for documents over 75 pages, and route only the short ones to the new one. We rejected it. It doubles the number of models Casenote has to monitor and re-check every time either vendor changes something, and the old model was already scheduled for shutdown by its own maker, so the routing plan had a fixed expiry date built into it from day one.
I, impact. Truncate and accept is felt by the paralegals and lawyers reading a summary that looks complete but never covered the last third of a long document, most sharply on the longest, highest-stakes contracts, the exact documents where a missed clause costs the most. Restructure the pipeline is felt by Casenote's own engineers: about three weeks of work building the chunking and coverage logic, when a straight model swap could have shipped in a single day.
C, cost asymmetry. The engineering cost is cheap and it's visible: a number on a sprint board, about 30,000 dollars, three weeks, argued about openly before anyone signs off on it. The truncation risk is hidden and expensive: nothing crashes, the summary still reads clean, and the cost only shows up the day somebody happens to reread a page nobody planned on rereading. Build against the one nobody's watching.
K, kill criteria. Go back to simple truncation only if a rolling 30-day audit shows under 2 percent of real documents exceed the new window, and even then, only paired with a visible warning that makes a person confirm the rest was read by hand. Right now the real number is 17 percent. That's not close.
Knowledge spark: what does chunking actually do? Cut a long document into pieces small enough for the model to read whole. Summarize each piece on its own. Feed those smaller summaries back in and ask for one summary that covers all of them. Slower than one pass, but nothing gets skipped.
Cost, by the numbers: documents shipped with an incomplete summary, per week
0 / week 765 / week Restructure the pipeline (chunked) Truncate and accept the loss
With chunking, every document gets fully read regardless of length, so the incomplete-summary count holds at zero. Left on simple truncation, about 17 percent of Casenote's roughly 900 documents a day, around 765 a week, would go out with only part of the document actually read.
The kill line, charted: real percent of documents over the window, against the 2% resume line
Above the kill line, restructure stays the pick
Kill line: 2% of real documents exceeding the window
0% 10% 20% 2% kill line 13% Month 1, cutover 15% Month 3, routine check 17% Month 5 17% Month 6, Nkemdirim's find
The real rate never dipped anywhere near the 2 percent line that would justify going back to simple truncation. It held between 13 and 17 percent for six straight months, which is exactly why the kill criteria hasn't fired and the pick hasn't moved.

Try the same four letters when the window gets bigger, not smaller

Faysal Rane runs product for Threadline, a tool that reads a customer's full support history, every past ticket, every chat, and hands the next agent a summary instead of a stack of old tickets to reread. Threadline is migrating too, but the window is moving the other way: the new model holds about four times as much text as the old one.

The easy move looked obvious: now that everything fits, stop trimming the history and feed in every ticket a customer has ever filed. Faysal ran PICK on it before shipping that.

P. Restructure stays the answer, just aimed the other way. Keep the relevance filter that picks the most recent and most topically related tickets, even though the bigger window could technically hold a customer's entire history. Don't feed in everything just because there's finally room.
I. Feeding in everything is felt by every customer on a call: slower responses, and a summary quietly diluted by tickets from three years ago that have nothing to do with today's problem, a known pattern where a model loses track of what matters in the middle of a long input. Keeping the filter is felt by Threadline's engineers, an ongoing system to maintain instead of one they get to delete now that the window seems to make it unnecessary.
C. Feeding in everything is cheap to ship, delete the filter, done, and it looks like a win because there's finally room. The cost is hidden: per-ticket inference cost roughly triples, responses get slower, and answer quality drifts down in a way no single ticket ever flags as wrong. Keeping the filter costs a known, ongoing bit of maintenance, small next to that.
K. Drop the filter only where the evidence says it's safe: for the slice of customers whose entire history already sits well under half the new window, with no accuracy drop on Threadline's own evaluation set. Above that, keep filtering, no matter how much room the window has.

What I would leave alone, at Threadline A brand-new customer with two tickets total. Their whole history already fits in either window with room to spare, no filter needed, no decision to make.

Swap the trigger and it still runs

  • Speed: if Threadline needed this live in three days instead of a full quarter's notice, the pick doesn't move, the filter stays, the eval just runs on a smaller sample of real history, not skipped.
  • Cost: if maintaining the filter turned out to take more engineering time than expected, the pick still doesn't move, that was never the question. Whether dropping it degrades a customer's answer was.
  • The model got better: if the new model's own evaluation showed no quality drop feeding in full history on a real sample of long-tenure customers, that's exactly the evidence that flips it toward simplifying.

Where people run it wrong

  • Treating a bigger context window as permission to stop being selective about what goes into it.
  • Assuming "the model can technically hold it" answers the same question as "the model should be shown it."
  • Waiting for a customer complaint to catch quality drift, when a diluted answer rarely sounds obviously wrong, it just sounds a little less right.

Buy yourself two seconds, out loud

Say the reframe before reaching for the easy move. "Give me a second, I want to check whether more room in the window means we should show it more, or just that we finally can." That's true, it's already the reframe from stage two, and it buys you time to find the real asymmetry instead of saying "bigger window, fewer rules" out loud.

Flashcards (click a card to flip it)

1 · THE FRAMEWORK
Which framework fits this question, and what's the hardest step to nail?
Tap to flip
ANSWER
PICK, for a tradeoff. The hardest step is C, the cost asymmetry: naming why a summary that silently skips content costs more than three weeks of visible engineering time.
2 · THE PERSON
Who is this answer about, and what does he already do well?
Tap to flip
ANSWER
Lior Bassam, who has run the summarization product at Casenote for three years and shipped two earlier model migrations clean, with zero client complaints.
3 · THE HABIT
What did Lior stop doing once the migration health report kept saying everything was fine?
Tap to flip
ANSWER
Reading the full weekly report line by line. By week three he was only reading the top line: documents processed, on target.
4 · THE ASYMMETRY
What are the two ways to get this pick backwards, and who gets hurt by each?
Tap to flip
ANSWER
Chunking every document, even the short ones, wastes engineering time and adds delay nobody needs. Truncating every document silently hurts the client relying on a summary that looks complete but isn't.
5 · THE POSITION
State the pick in one sentence, the way you'd say it out loud.
Tap to flip
ANSWER
When the new model's window is smaller, chunk the document and stitch the pieces back together with a coverage check, don't feed in what fits and drop the rest.
6 · THE NUMBER
At Casenote, about ______ percent of real documents were longer than the new model's window.
Tap to flip
ANSWER
17 percent. About 153 documents a day, which is what turned into roughly 4,590 partly-read documents over the six weeks before anyone caught it.
7 · THE KILL CRITERIA
What evidence would flip the pick back toward simple truncation?
Tap to flip
ANSWER
A rolling 30-day audit showing under 2 percent of real documents exceed the window, paired with a visible warning requiring human sign-off. Right now the real number is 17 percent, nowhere close.
8 · THE TRANSFER
Section 4 runs PICK again on a different product, with the window changing the other direction. Which product, and what's the position there?
Tap to flip
ANSWER
Threadline, a support-ticket summarizer moving to a larger window. Position: keep the relevance filter on past tickets rather than feeding in a customer's entire history just because the window can now hold it.

Check yourself Score: 0 / 0

True or false
1. True or false, with why: because Casenote's summaries kept coming back clean and fast after the migration, the smaller context window wasn't really a problem worth fixing.
  • True
  • False
Show hint
Think about what a clean-looking summary actually proves, and what it doesn't.
Show answer
False. A clean, confident summary is exactly what let this run for six weeks unnoticed. The coverage problem was real, and it kept getting worse the longer nobody checked for it.
Multiple choice
2. Which of these is the actual mechanism behind this answer's pick?
  • A. Ship the model swap as planned, since nothing has crashed or errored.
  • B. Keep the old model running for every document, to avoid the risk entirely.
  • C. Chunk any document that doesn't fit the new window, summarize the pieces, and track how much got read.
  • D. Feed in what fits and add a note at the bottom saying results may be incomplete.
Show hint
Three of these either accept the silent gap or throw away the reason to migrate at all.
Show answer
C. A and D both let real documents go out only partly read. B doubles the operating cost of running two models and the old one was being retired anyway. Only C actually matches the fix to what's causing the gap, and gives every document full coverage.
Fill in the blank
3. Fill in the blank: the pipeline only goes back to simple truncation once a 30-day audit shows under ______ percent of real documents exceed the window.
Show hint
It's the K step from the PICK recap, the number that turns "it's probably fine now" into a real bar.
Show answer
2. Well under the 17 percent measured at Casenote. Above 2 percent, the fix is worth its cost. Below it, a cheaper, visible warning might do the job instead.
Short answer
4. If only 3 percent of documents, instead of 17 percent, exceeded the new window, would the same full-pipeline-restructure pick still hold? Walk through it.
Show hint
Think about what actually drives the position: the size of the gap, or the mere fact that some gap exists.
Show answer
Probably not as strongly, and that's the point. At 3 percent, the overrun is small and close to a reasonable kill line. A lighter fix, truncate plus a clear, hard-to-miss warning that requires a human to confirm the rest was read, might cost less than a full chunking rebuild for so few documents. The full restructure earned its cost because 17 percent is large and holding steady, not because any nonzero gap demands the same fix.
Multiple choice
5. Why did the weekly migration health report keep saying everything was on target even as real coverage dropped?
  • A. Because it tracked whether documents finished processing without erroring, not whether they were fully read.
  • B. Because Nkemdirim had turned off the alert for that client firm by mistake.
  • C. Because the new model actually got more accurate the longer a document ran.
  • D. Because Casenote's document volume had dropped sharply that quarter.
Show hint
Ask what the report was actually measuring, completion or coverage.
Show answer
A. The report only checked whether a document finished processing without an error. A document that got fully truncated still "finished" cleanly, so the report had no way to see the missing pages at all.
Short answer, apply it yourself
6. Pick a product you use yourself that reads a long piece of text, an email thread, a document, a chat history. Name one place a smaller or larger context window change would quietly change what the model actually sees, and how you'd notice.
Show hint
Look for the point where the input could run longer than usual, then ask what happens to the part that doesn't fit.
Show answer
Model answer: "A note-taking app I use has a 'summarize my notebook' feature. If they swapped in a model with a smaller window, a notebook past a certain length would probably only get summarized from its most recent entries, and I'd never know the summary quietly stopped covering my oldest notes unless I checked the date range myself, because the summary would still read like a normal, complete one." Any answer works if it names a real long-input feature and what happens to the part past the new limit.
If they push back
Why this works. Tests whether you'll build for the failure that's loud, or the one that's quiet. Most candidates optimize for what they'd personally notice going wrong, not for what a client would.
Follow-up traps.
"What if chunking hurts accuracy right at the boundary between two chunks?"Response: it can, which is why the chunks overlap by a page or two, and the coverage check flags any clause split across a boundary for a second look, the same idea as the length check catching a document that's too long.
"Isn't 17 percent just Casenote's mix? Wouldn't a firm with only short contracts not need any of this?"Response: right, and that's exactly what the kill criteria is for. Under 2 percent for 30 days, a simple truncation with a visible warning is the honest, cheaper call there. This was never a blanket rule for every migration.
If pressed. The coverage check doesn't just count pages. It also flags when a chunk boundary lands inside a numbered clause or a defined term, the exact spot a split is most likely to cut a legal document's meaning in half, and routes those cases for a wider overlap automatically.
From U2xAI Academy

From answering questions to owning outcomes.

A live workshop where you ship a working AI agent, defend a launch decision, and walk away with a portfolio recruiters can't wave off, not just more questions to study.

  • A live AI agent you actually shipped
  • A launch decision you can defend under pressure
  • An interview-ready portfolio, not more flashcards
Know more